Module: Akashi

Defined in:
lib/akashi.rb,
lib/akashi/aws.rb,
lib/akashi/ec2.rb,
lib/akashi/elb.rb,
lib/akashi/rds.rb,
lib/akashi/vpc.rb,
lib/akashi/base.rb,
lib/akashi/builder.rb,
lib/akashi/ec2/ami.rb,
lib/akashi/version.rb,
lib/akashi/ec2/base.rb,
lib/akashi/elb/base.rb,
lib/akashi/rds/base.rb,
lib/akashi/vpc/base.rb,
lib/akashi/vpc/subnet.rb,
lib/akashi/ec2/instance.rb,
lib/akashi/ec2/key_pair.rb,
lib/akashi/vpc/instance.rb,
lib/akashi/vpc/elastic_ip.rb,
lib/akashi/vpc/subnet/elb.rb,
lib/akashi/vpc/subnet/rds.rb,
lib/akashi/vpc/subnet/web.rb,
lib/akashi/rds/db_instance.rb,
lib/akashi/vpc/route_table.rb,
lib/akashi/vpc/subnet/base.rb,
lib/akashi/rds/subnet_group.rb,
lib/akashi/elb/load_balancer.rb,
lib/akashi/vpc/security_group.rb,
lib/akashi/vpc/subnet/gateway.rb,
lib/akashi/elb/ssl_certificate.rb,
lib/akashi/vpc/internet_gateway.rb,
lib/akashi/vpc/security_group/elb.rb,
lib/akashi/vpc/security_group/rds.rb,
lib/akashi/vpc/security_group/web.rb,
lib/akashi/vpc/security_group/base.rb,
lib/akashi/vpc/security_group/gateway.rb

Defined Under Namespace

Modules: Aws Classes: Base, Builder, Ec2, Elb, Rds, Vpc

Constant Summary collapse

VERSION =
"0.0.9"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.applicationObject

Returns the value of attribute application.



14
15
16
# File 'lib/akashi.rb', line 14

def application
  @application
end

.environmentObject

Returns the value of attribute environment.



14
15
16
# File 'lib/akashi.rb', line 14

def environment
  @environment
end

.manifestObject

Returns the value of attribute manifest.



15
16
17
# File 'lib/akashi.rb', line 15

def manifest
  @manifest
end

Class Method Details

.buildObject



24
25
26
# File 'lib/akashi.rb', line 24

def build
  Akashi::Builder.new.build
end

.destroyObject



28
29
30
# File 'lib/akashi.rb', line 28

def destroy
  fail "Not implemented"
end

.klass(service, object, role = nil) ⇒ Object



37
38
39
40
41
# File 'lib/akashi.rb', line 37

def klass(service, object, role = nil)
  context = "Akashi::#{service.to_s.camelize}::#{object.to_s.camelize}"
  context << "::#{role.to_s.camelize}" if !!role
  context.constantize
end

.name(separator: "-") ⇒ Object



32
33
34
35
# File 'lib/akashi.rb', line 32

def name(separator: "-")
  fail "Invalid configurations" unless (!!application && !!environment)
  application + separator + environment
end

.role_namesObject



43
44
45
46
47
48
49
50
# File 'lib/akashi.rb', line 43

def role_names
  @role_names ||= [
    :elb,
    :gateway,
    :rds,
    :web,
  ]
end