cfn-status 0.4.6 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/cfn-status.gemspec +4 -3
- data/lib/cfn_status/version.rb +1 -1
- data/lib/cfn_status.rb +13 -8
- metadata +27 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8995a22b702f88f6b8474940ff4cedcad0ed03f5959662f858b20597b3b7bd75
|
4
|
+
data.tar.gz: 9d0a502a23754203bfdc2a7043c587b168379fc0419b2849cb76374525c9516b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 39b82b43b28f88fc08b784a6c595d27f553f641add1f27f0ae207de62182b05269fbba62f0c094d84da918b8cf450d4ffa8d050fb73a73a63bbdbda957cd7d2e
|
7
|
+
data.tar.gz: f6c0b78894e28f66285c9bafb6c48775c4e13dc72d2c5908c3168368c6cf4d571ab66e464b5f9bdebc7b48ab9166f88fbd8090164fe85a3ace2624af2557e589
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,12 @@
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
This project *loosely* adheres to [Semantic Versioning](http://semver.org/), even before v1.0.
|
5
5
|
|
6
|
+
## [0.5.0] - 2023-12-17
|
7
|
+
- [#6](https://github.com/tongueroo/cfn-status/pull/6) Use events.dig instead of brackets
|
8
|
+
- [#7](https://github.com/tongueroo/cfn-status/pull/7) Add start_index_before_delete option
|
9
|
+
- add add_development_dependency nokogiri
|
10
|
+
- improve dev dependency version pins
|
11
|
+
|
6
12
|
## [0.4.6] - 2022-02-21
|
7
13
|
- show took time for deletion also
|
8
14
|
|
data/cfn-status.gemspec
CHANGED
@@ -24,7 +24,8 @@ Gem::Specification.new do |spec|
|
|
24
24
|
|
25
25
|
spec.add_dependency "aws-sdk-cloudformation"
|
26
26
|
|
27
|
-
spec.add_development_dependency "
|
28
|
-
spec.add_development_dependency "
|
29
|
-
spec.add_development_dependency "
|
27
|
+
spec.add_development_dependency "nokogiri"
|
28
|
+
spec.add_development_dependency "bundler"
|
29
|
+
spec.add_development_dependency "rake", ">= 12.3.3"
|
30
|
+
spec.add_development_dependency "rspec", ">= 3.0"
|
30
31
|
end
|
data/lib/cfn_status/version.rb
CHANGED
data/lib/cfn_status.rb
CHANGED
@@ -23,7 +23,7 @@ class CfnStatus
|
|
23
23
|
return true
|
24
24
|
end
|
25
25
|
|
26
|
-
puts "
|
26
|
+
puts "Stack #{@stack_name.color(:green)} Status: #{stack.stack_status.color(:green)}"
|
27
27
|
if in_progress?
|
28
28
|
puts "Stack events (tailing):"
|
29
29
|
# tail all events until done
|
@@ -75,7 +75,7 @@ class CfnStatus
|
|
75
75
|
|
76
76
|
if last_event_status =~ /_FAILED/
|
77
77
|
puts "Stack failed: #{last_event_status}".color(:red)
|
78
|
-
puts "Stack reason #{@events
|
78
|
+
puts "Stack reason #{@events.dig(0,"resource_status_reason")}".color(:red)
|
79
79
|
elsif last_event_status =~ /_ROLLBACK_/
|
80
80
|
puts "Stack rolled back: #{last_event_status}".color(:red)
|
81
81
|
else # success
|
@@ -94,8 +94,8 @@ class CfnStatus
|
|
94
94
|
|
95
95
|
def completed
|
96
96
|
last_event_status =~ /(_COMPLETE|_FAILED)$/ &&
|
97
|
-
@events
|
98
|
-
@events
|
97
|
+
@events.dig(0,"logical_resource_id") == @stack_name &&
|
98
|
+
@events.dig(0,"resource_type") == "AWS::CloudFormation::Stack"
|
99
99
|
end
|
100
100
|
|
101
101
|
def last_event_status
|
@@ -123,7 +123,7 @@ class CfnStatus
|
|
123
123
|
print_event(e)
|
124
124
|
end
|
125
125
|
|
126
|
-
@last_shown_event_id = @events
|
126
|
+
@last_shown_event_id = @events.dig(0, "event_id")
|
127
127
|
# puts "@last_shown_event_id #{@last_shown_event_id.inspect}"
|
128
128
|
end
|
129
129
|
|
@@ -191,9 +191,14 @@ class CfnStatus
|
|
191
191
|
|
192
192
|
# Should always find a "User Initiated" stack event when @last_shown_index is not set
|
193
193
|
def start_index
|
194
|
+
start_index_before_delete = @options[:start_index_before_delete]
|
195
|
+
|
194
196
|
@events.find_index do |event|
|
197
|
+
skip = start_index_before_delete && event["resource_status"] == "DELETE_IN_PROGRESS"
|
198
|
+
|
195
199
|
event["resource_type"] == "AWS::CloudFormation::Stack" &&
|
196
|
-
event["resource_status_reason"] == "User Initiated"
|
200
|
+
event["resource_status_reason"] == "User Initiated" &&
|
201
|
+
!skip
|
197
202
|
end
|
198
203
|
end
|
199
204
|
|
@@ -204,12 +209,12 @@ class CfnStatus
|
|
204
209
|
end
|
205
210
|
|
206
211
|
def success?
|
207
|
-
resource_status = @events
|
212
|
+
resource_status = @events.dig(0,"resource_status")
|
208
213
|
%w[CREATE_COMPLETE UPDATE_COMPLETE].include?(resource_status)
|
209
214
|
end
|
210
215
|
|
211
216
|
def update_rollback?
|
212
|
-
@events
|
217
|
+
@events.dig(0,"resource_status") == "UPDATE_ROLLBACK_COMPLETE"
|
213
218
|
end
|
214
219
|
|
215
220
|
def find_update_failed_event
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cfn-status
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tung Nguyen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-12-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-cloudformation
|
@@ -24,46 +24,60 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: nokogiri
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: bundler
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
30
44
|
requirements:
|
31
|
-
- - "
|
45
|
+
- - ">="
|
32
46
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
47
|
+
version: '0'
|
34
48
|
type: :development
|
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: '
|
54
|
+
version: '0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: rake
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
|
-
- - "
|
59
|
+
- - ">="
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
61
|
+
version: 12.3.3
|
48
62
|
type: :development
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
|
-
- - "
|
66
|
+
- - ">="
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
68
|
+
version: 12.3.3
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: rspec
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
|
-
- - "
|
73
|
+
- - ">="
|
60
74
|
- !ruby/object:Gem::Version
|
61
75
|
version: '3.0'
|
62
76
|
type: :development
|
63
77
|
prerelease: false
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
65
79
|
requirements:
|
66
|
-
- - "
|
80
|
+
- - ">="
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: '3.0'
|
69
83
|
description:
|
@@ -108,7 +122,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
108
122
|
- !ruby/object:Gem::Version
|
109
123
|
version: '0'
|
110
124
|
requirements: []
|
111
|
-
rubygems_version: 3.
|
125
|
+
rubygems_version: 3.4.20
|
112
126
|
signing_key:
|
113
127
|
specification_version: 4
|
114
128
|
summary: CloudFormation status library
|