Module: DockerCompose::Generator

Defined in:
lib/docker-compose/generator.rb,
lib/docker-compose/generator/service.rb,
lib/docker-compose/generator/version.rb,
lib/docker-compose/generator/service/net.rb,
lib/docker-compose/generator/service/pid.rb,
lib/docker-compose/generator/service/links.rb,
lib/docker-compose/generator/service/ports.rb,
lib/docker-compose/generator/service/labels.rb,
lib/docker-compose/generator/service/volumes.rb,
lib/docker-compose/generator/service/environment.rb

Overview

Injects the VERSION into the Generator Module

Defined Under Namespace

Classes: Service

Constant Summary collapse

MAJOR =

Current major release.

0
MINOR =

Current minor release.

3
PATCH =

Current patch level.

0
VERSION =

Full release version.

[MAJOR, MINOR, PATCH].join('.').freeze

Class Method Summary collapse

Class Method Details

.create_service(name, image) ⇒ Service

Create a new service



21
22
23
# File 'lib/docker-compose/generator.rb', line 21

def self.create_service(name, image)
  @services[name] = Service.new(name, image)
end

.get_service(name) ⇒ Service

Return a Service



40
41
42
# File 'lib/docker-compose/generator.rb', line 40

def self.get_service(name)
  @services[name] if self.service?(name)
end

.import(yaml_object) ⇒ Object

Import



64
65
66
67
68
69
# File 'lib/docker-compose/generator.rb', line 64

def self.import(yaml_object)
  yaml_object.each do |key, value|
    service = create_service(key, value['image'])
    service.import(value)
  end
end

.reset!Object

Reset the List of Services



56
57
58
# File 'lib/docker-compose/generator.rb', line 56

def self.reset!
  @services = {}
end

.service?(name) ⇒ Boolean

Does this service exist?



30
31
32
# File 'lib/docker-compose/generator.rb', line 30

def self.service?(name)
  (@services[name])
end

.to_yamlObject

Convert The Services to Yaml



45
46
47
48
49
50
51
52
53
# File 'lib/docker-compose/generator.rb', line 45

def self.to_yaml
  yaml = {}

  @services.each do |key, obj|
    yaml[key] = obj.attrs
  end

  yaml.to_yaml
end