autocanary24 0.5.0 → 0.6.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: 4fb0dc82d78df443b153179546ecb97bb5ec993d
4
- data.tar.gz: e60978aee96da8e647ec95bc7baacd4fb8ee9db0
3
+ metadata.gz: 5d9824692ed66f16a0e310cca0a4700acc7b18d5
4
+ data.tar.gz: 9d74e678286da454fcf4068e961c24279d3a88a5
5
5
  SHA512:
6
- metadata.gz: 27383625a91fb41f9a1b926870bd225d9631c5ba08cc22a959376e9d5efd5274fc9181a7f39b32e74900219067ea85d8825d095038139422a579b30d2c591537
7
- data.tar.gz: 693e6587e28fa664a3f73e5082002140ce96f417d91544e711aedcdb393ae4d4b49d5e2eaeb18314d865dd40cdc231ab7001efee7dd08f91825b4fccd4b2f1c4
6
+ metadata.gz: f42769370b63e538cbb0a0e419d85cf2f3df444ddef3ae86d8293ce163a239f9d460031f9ca6ad2e5325cf6987681207492f072cfa5b59de5c7656bdc1716190
7
+ data.tar.gz: 45bbac5039dcf3161951df33820440807055ecbefab2784d32f1eb1207985680b4e86c98be16c701b0b6df23ae5f4472715fd2efda8d40b70d984627d2cca67e
@@ -20,7 +20,9 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = ["lib"]
21
21
 
22
22
  spec.add_dependency 'autostacker24', '~> 2'
23
- spec.add_dependency 'aws-sdk-core', '~> 2'
23
+ spec.add_dependency 'retriable', '~> 3.1'
24
+ spec.add_dependency 'aws-sdk-core', '~> 3'
25
+ spec.add_dependency 'aws-sdk-elasticloadbalancing', '~> 1.2'
24
26
 
25
27
  spec.add_development_dependency "bundler", "~> 1.11"
26
28
  spec.add_development_dependency "rake", "~> 10.0"
@@ -93,6 +93,7 @@ task :sample_5 do
93
93
  client.cleanup_stack(STACK_NAME)
94
94
  else
95
95
  client.rollback_stack(STACK_NAME)
96
+ raise "Deployment failed because of health check"
96
97
  end
97
98
  end
98
99
 
@@ -1,4 +1,6 @@
1
1
  require 'aws-sdk-core'
2
+ require 'retriable'
3
+ require 'aws-sdk-elasticloadbalancing'
2
4
 
3
5
  module AutoCanary24
4
6
  class CanaryStack
@@ -125,7 +127,10 @@ module AutoCanary24
125
127
  retries = (@wait_timeout / @sleep_during_wait).round
126
128
  while retries > 0
127
129
  begin
128
- elb_instances = elb_client.describe_instance_health({load_balancer_name: elb, instances: instances})
130
+ elb_instances = {}
131
+ Retriable.retriable(on: Aws::CloudFormation::Errors::Throttling, tries: 5, base_interval: 1) do
132
+ elb_instances = elb_client.describe_instance_health({load_balancer_name: elb, instances: instances})
133
+ end
129
134
  break if elb_instances[:instance_states].select{ |s| s.state == 'InService' }.length == 0
130
135
  rescue Aws::ElasticLoadBalancing::Errors::InvalidInstance
131
136
  end
@@ -1,3 +1,3 @@
1
1
  module AutoCanary24
2
- VERSION = "0.5.0"
2
+ VERSION = "0.6.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autocanary24
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Philipp Garbe
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-02-21 00:00:00.000000000 Z
11
+ date: 2018-04-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: autostacker24
@@ -24,20 +24,48 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2'
27
+ - !ruby/object:Gem::Dependency
28
+ name: retriable
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '3.1'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '3.1'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: aws-sdk-core
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: '2'
47
+ version: '3'
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: '2'
54
+ version: '3'
55
+ - !ruby/object:Gem::Dependency
56
+ name: aws-sdk-elasticloadbalancing
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.2'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.2'
41
69
  - !ruby/object:Gem::Dependency
42
70
  name: bundler
43
71
  requirement: !ruby/object:Gem::Requirement