ops_preflight 1.1.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f7b811deccef8648e2c027451e14b67039eb805a
4
- data.tar.gz: 8c4455985f8b1d7527fc153d7df822ceca1504bc
3
+ metadata.gz: f9386bd69b37c9fa2b79cf1db841bc627285c7e5
4
+ data.tar.gz: 12b980694ffade614c00bc8012b893f9641055aa
5
5
  SHA512:
6
- metadata.gz: cd3753b29c4e015a0dc8a81002d4693b73560fe7fbf97a98d4b19c021d8d969218a7fdf9d9e46375d332d6be0650dc3907a4237c0725766e4b6ba88f949c6791
7
- data.tar.gz: c604033d6ddec06b1e90cfcd888a47480221d39177472927e8a1ef06e8bb7e006cc145033b61007e9b15612610283f2f418432236d97aa1e25ce24bea23767d2
6
+ metadata.gz: 53b48c27c9f8fc1fc31ef850d015baef914640b43bd59487187316053d60f7e49c1e945852151bff28a9080d569dd8fe8d66622f9f87d617b977f0f633bd39fd
7
+ data.tar.gz: e558ad62af7c9bf6503dda9855c831b4da9d028ffdf024c6968b865c25f011d127fe8bb583755284c5d988eb4987ba4ea8f502a1e1ffea821f704860188b04f9
@@ -1,22 +1,24 @@
1
1
  module OpsPreflight
2
2
  module OpsWorks
3
3
  class Base
4
+ attr_accessor :region
4
5
  attr_accessor :stack_name
5
6
 
6
- def initialize(stack_name)
7
+ def initialize(region, stack_name)
7
8
  require 'aws-sdk'
8
9
 
10
+ @region = region
9
11
  @stack_name = stack_name
10
12
  end
11
13
 
12
14
  protected
13
15
  def opsworks
14
- @opsworks ||= AWS::OpsWorks.new
16
+ @opsworks ||= Aws::OpsWorks::Client.new(region: @region)
15
17
  end
16
18
 
17
19
  def stack_id
18
20
  @stack_id ||= begin
19
- resp = opsworks.client.describe_stacks
21
+ resp = opsworks.describe_stacks
20
22
  stack = resp[:stacks].find {|stack| stack[:name] == stack_name }
21
23
 
22
24
  raise "OpsWorks stack not found!" if stack.nil?
@@ -5,8 +5,8 @@ module OpsPreflight
5
5
  class Deploy < Base
6
6
  attr_accessor :app_name
7
7
 
8
- def initialize(stack_name, app_name)
9
- super stack_name
8
+ def initialize(region, stack_name, app_name)
9
+ super region, stack_name
10
10
 
11
11
  @app_name = app_name
12
12
  end
@@ -15,7 +15,7 @@ module OpsPreflight
15
15
  instances = instance_ids
16
16
  puts "Triggering deploy of v#{release_num} to #{instances.size} instance#{'s' if instances.size != 1}"
17
17
 
18
- resp = opsworks.client.create_deployment({
18
+ resp = opsworks.create_deployment({
19
19
  :stack_id => stack_id,
20
20
  :app_id => app_id,
21
21
  :instance_ids => instances,
@@ -29,7 +29,7 @@ module OpsPreflight
29
29
  protected
30
30
  def app_id
31
31
  @app_id ||= begin
32
- resp = opsworks.client.describe_apps(:stack_id => stack_id)
32
+ resp = opsworks.describe_apps(:stack_id => stack_id)
33
33
  app = resp[:apps].find {|app| app[:name] == app_name}
34
34
 
35
35
  raise "OpsWorks app not found!" if app.nil?
@@ -39,7 +39,7 @@ module OpsPreflight
39
39
  end
40
40
 
41
41
  def instance_ids
42
- resp = opsworks.client.describe_instances(:stack_id => stack_id)
42
+ resp = opsworks.describe_instances(:stack_id => stack_id)
43
43
  ids = []
44
44
  resp[:instances].each {|instance| ids << instance[:instance_id] if instance[:status] == 'online' }
45
45
 
@@ -8,15 +8,15 @@ module OpsPreflight
8
8
  attr_accessor :app_name
9
9
  attr_accessor :environment
10
10
 
11
- def initialize(environment, stack_name, app_name)
12
- super stack_name
11
+ def initialize(environment, region, stack_name, app_name)
12
+ super region, stack_name
13
13
 
14
14
  @environment = environment
15
15
  @app_name = app_name
16
16
  end
17
17
 
18
18
  def call
19
- resp = opsworks.client.describe_stacks(:stack_ids => [stack_id])
19
+ resp = opsworks.describe_stacks(:stack_ids => [stack_id])
20
20
 
21
21
  require 'multi_json'
22
22
 
@@ -27,14 +27,14 @@ module OpsPreflight
27
27
  def deploy(stack_name, app_name)
28
28
  require 'ops_preflight/ops_works/deploy.rb'
29
29
 
30
- OpsWorks::Deploy.new(stack_name, app_name).call(options[:release])
30
+ OpsWorks::Deploy.new('us-east-1', stack_name, app_name).call(options[:release])
31
31
  end
32
32
 
33
33
  desc "fetch_environment <environment> <stack_name> <app_name>", 'Fetches environment variables from opsworks'
34
34
  def fetch_environment(environment, stack_name, app_name)
35
35
  require 'ops_preflight/ops_works/fetch_environment.rb'
36
36
 
37
- OpsWorks::FetchEnvironment.new(environment, stack_name, app_name).call
37
+ OpsWorks::FetchEnvironment.new(environment, 'us-east-1', stack_name, app_name).call
38
38
  end
39
39
 
40
40
  # Fixes thor's banners when used with :default namespace
@@ -1,3 +1,3 @@
1
1
  module OpsPreflight
2
- VERSION = "1.1.2"
2
+ VERSION = "1.2.0"
3
3
  end
@@ -17,9 +17,9 @@ Gem::Specification.new do |gem|
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ["lib"]
19
19
 
20
- gem.add_runtime_dependency('thor', '~> 0.18.1')
20
+ gem.add_runtime_dependency('thor', '~> 0.19.1')
21
21
  gem.add_runtime_dependency('fog', '~> 1.10')
22
22
  gem.add_runtime_dependency('mina', '~> 0.3.0')
23
- gem.add_runtime_dependency('aws-sdk', '~> 1.33')
23
+ gem.add_runtime_dependency('aws-sdk', '~> 2')
24
24
  gem.add_runtime_dependency('multi_json', '~> 1.0')
25
25
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ops_preflight
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Schlesinger
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-26 00:00:00.000000000 Z
11
+ date: 2015-06-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.18.1
19
+ version: 0.19.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.18.1
26
+ version: 0.19.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: fog
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.33'
61
+ version: '2'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '1.33'
68
+ version: '2'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: multi_json
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -129,7 +129,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
129
129
  version: '0'
130
130
  requirements: []
131
131
  rubyforge_project:
132
- rubygems_version: 2.2.2
132
+ rubygems_version: 2.4.3
133
133
  signing_key:
134
134
  specification_version: 4
135
135
  summary: Preflight by packaging the bundle, precompiled assets, or anything else needed