Class: Maril::Generator

Inherits:
Object
  • Object
show all
Defined in:
lib/maril/generator.rb

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Generator

Returns a new instance of Generator.



3
4
5
6
# File 'lib/maril/generator.rb', line 3

def initialize(options={})
  @host = options[:host] || options['host']
  @id = options[:id] || options['id']
end

Instance Method Details

#generateObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/maril/generator.rb', line 8

def generate
  app = fetch_app
  cmd = [ 'docker run --rm -it' ]
  app['env'].each do |k, v|
    cmd << "--env #{k}=#{v}"
  end
  app['container']['docker']['parameters'].each do |parameter|
    cmd << "--#{parameter['key']} #{parameter['value']}"
  end
  app['container']['docker']['portMappings'].each do |mapping|
    cmd << "-p #{mapping['containerPort']}:#{mapping['containerPort']}"
  end
  cmd << app['container']['docker']['image']
  cmd << app['cmd'] if app['cmd']
  cmd.join(" \\\n")
end