blob: 4a473e5ee629ab02628830cf89172b5def815239 [file] [log] [blame]
var syrup = require('stf-syrup')
var _ = require('lodash')
var tr = require('transliteration')
module.exports = syrup.serial()
.dependency(require('./identity'))
.dependency(require('./data'))
.define(function(options, identity, data) {
function createSlug() {
var model = identity.model
var name = data ? data.name.id : ''
return (name === '' || model.toLowerCase() === name.toLowerCase()) ?
tr.slugify(model) :
tr.slugify(name + ' ' + model)
}
var defaults = {
publicIp: options.publicIp
, serial: options.serial
, model: identity.model
, name: data ? data.name.id : ''
, slug: createSlug()
}
return function(template, port) {
return _.template(template, {
imports: {
slugify: tr.slugify
}
})(_.defaults({publicPort: port}, defaults))
}
})