Class: EbDeployer::Application
- Inherits:
-
Object
- Object
- EbDeployer::Application
- Defined in:
- lib/eb_deployer/application.rb
Instance Method Summary collapse
- #create_version(version_label, package) ⇒ Object
- #delete ⇒ Object
-
#initialize(name, eb_driver, s3_driver, bucket = nil) ⇒ Application
constructor
A new instance of Application.
Constructor Details
#initialize(name, eb_driver, s3_driver, bucket = nil) ⇒ Application
Returns a new instance of Application.
3 4 5 6 7 8 9 |
# File 'lib/eb_deployer/application.rb', line 3 def initialize(name, eb_driver, s3_driver, bucket = nil) @name = name @eb_driver = eb_driver @s3_driver = s3_driver @bucket = bucket raise "application name can only contain any combination of uppercase letters, lowercase letters, numbers, dashes (-)" unless @name =~ /^[a-zA-Z0-9.-]+$/ end |
Instance Method Details
#create_version(version_label, package) ⇒ Object
11 12 13 14 15 16 17 18 19 20 |
# File 'lib/eb_deployer/application.rb', line 11 def create_version(version_label, package) create_application_if_not_exists package = Package.new(package, @bucket + ".packages", @s3_driver) package.upload unless @eb_driver.application_version_labels.include?(version_label) @eb_driver.create_application_version(@name, version_label, package.source_bundle) end end |
#delete ⇒ Object
22 23 24 25 26 27 28 29 30 |
# File 'lib/eb_deployer/application.rb', line 22 def delete if @eb_driver.application_exists?(@name) @eb_driver.environment_names_for_application(@name).each do |env| @eb_driver.delete_environment(@name, env) end @eb_driver.delete_application(@name) end end |