cody 0.9.8 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +0 -9
  3. data/CHANGELOG.md +8 -0
  4. data/Gemfile +0 -2
  5. data/cody.gemspec +3 -3
  6. data/lib/cody.rb +4 -8
  7. data/lib/cody/aws_services.rb +1 -1
  8. data/lib/cody/aws_services/helpers.rb +20 -3
  9. data/lib/cody/cli.rb +2 -13
  10. data/lib/cody/{badge.rb → cli/badge.rb} +1 -1
  11. data/lib/cody/{base.rb → cli/base.rb} +9 -3
  12. data/lib/cody/{delete.rb → cli/delete.rb} +3 -3
  13. data/lib/cody/cli/deploy.rb +7 -0
  14. data/lib/cody/cli/help.rb +11 -0
  15. data/lib/cody/{help → cli/help}/deploy.md +0 -0
  16. data/lib/cody/{help → cli/help}/init.md +0 -0
  17. data/lib/cody/{help → cli/help}/logs.md +0 -0
  18. data/lib/cody/{help → cli/help}/start.md +0 -0
  19. data/lib/cody/{help → cli/help}/stop.md +0 -0
  20. data/lib/cody/{init.rb → cli/init.rb} +1 -2
  21. data/lib/cody/{list.rb → cli/list.rb} +7 -3
  22. data/lib/cody/cli/logs.rb +10 -0
  23. data/lib/cody/{sequence.rb → cli/sequence.rb} +3 -3
  24. data/lib/cody/{start.rb → cli/start.rb} +3 -3
  25. data/lib/cody/{status.rb → cli/status.rb} +2 -1
  26. data/lib/cody/{stop.rb → cli/stop.rb} +2 -1
  27. data/lib/cody/command.rb +11 -0
  28. data/lib/cody/core.rb +5 -5
  29. data/lib/cody/dsl/base.rb +9 -0
  30. data/lib/cody/dsl/project.rb +54 -49
  31. data/lib/cody/dsl/role.rb +11 -11
  32. data/lib/cody/dsl/schedule.rb +8 -8
  33. data/lib/cody/list/no_builds_project.rb +1 -1
  34. data/lib/cody/list/project.rb +1 -1
  35. data/lib/cody/project.rb +23 -23
  36. data/lib/cody/role.rb +20 -20
  37. data/lib/cody/schedule.rb +37 -37
  38. data/lib/cody/stack.rb +16 -71
  39. data/lib/cody/stack/base.rb +104 -0
  40. data/lib/cody/{create.rb → stack/create.rb} +2 -2
  41. data/lib/cody/{update.rb → stack/update.rb} +2 -2
  42. data/lib/cody/tailer.rb +1 -1
  43. data/lib/cody/version.rb +1 -1
  44. data/lib/template/project/buildspec.yml +1 -1
  45. data/lib/template/project/project.rb.tt +5 -19
  46. metadata +64 -70
  47. data/lib/cody/completer.rb +0 -159
  48. data/lib/cody/completer/script.rb +0 -6
  49. data/lib/cody/completer/script.sh +0 -10
  50. data/lib/cody/deploy.rb +0 -40
  51. data/lib/cody/help.rb +0 -9
  52. data/lib/cody/help/completion.md +0 -22
  53. data/lib/cody/help/completion_script.md +0 -3
  54. data/lib/cody/logs.rb +0 -14
  55. data/vendor/aws_data/CHANGELOG.md +0 -7
  56. data/vendor/aws_data/Gemfile +0 -4
  57. data/vendor/aws_data/LICENSE.txt +0 -21
  58. data/vendor/aws_data/README.md +0 -42
  59. data/vendor/aws_data/Rakefile +0 -6
  60. data/vendor/aws_data/aws_data.gemspec +0 -30
  61. data/vendor/aws_data/bin/console +0 -14
  62. data/vendor/aws_data/bin/setup +0 -8
  63. data/vendor/aws_data/lib/aws_data.rb +0 -91
  64. data/vendor/aws_data/lib/aws_data/version.rb +0 -3
  65. data/vendor/aws_data/spec/aws_data_spec.rb +0 -5
  66. data/vendor/aws_data/spec/spec_helper.rb +0 -14
  67. data/vendor/cfn-status/Gemfile +0 -4
  68. data/vendor/cfn-status/LICENSE.txt +0 -21
  69. data/vendor/cfn-status/README.md +0 -56
  70. data/vendor/cfn-status/Rakefile +0 -6
  71. data/vendor/cfn-status/bin/console +0 -14
  72. data/vendor/cfn-status/bin/setup +0 -8
  73. data/vendor/cfn-status/cfn-status.gemspec +0 -30
  74. data/vendor/cfn-status/lib/cfn/aws_service.rb +0 -56
  75. data/vendor/cfn-status/lib/cfn/status.rb +0 -220
  76. data/vendor/cfn-status/lib/cfn/status/version.rb +0 -5
  77. data/vendor/cfn-status/spec/cfn/status_spec.rb +0 -81
  78. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-complete.json +0 -1080
  79. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-in-progress.json +0 -1080
  80. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-update-rollback-complete.json +0 -1086
  81. data/vendor/cfn-status/spec/spec_helper.rb +0 -14
  82. data/vendor/cfn_camelizer/CHANGELOG.md +0 -10
  83. data/vendor/cfn_camelizer/Gemfile +0 -4
  84. data/vendor/cfn_camelizer/LICENSE.txt +0 -21
  85. data/vendor/cfn_camelizer/README.md +0 -40
  86. data/vendor/cfn_camelizer/Rakefile +0 -6
  87. data/vendor/cfn_camelizer/bin/console +0 -14
  88. data/vendor/cfn_camelizer/bin/setup +0 -8
  89. data/vendor/cfn_camelizer/cfn_camelizer.gemspec +0 -32
  90. data/vendor/cfn_camelizer/lib/camelizer.yml +0 -33
  91. data/vendor/cfn_camelizer/lib/cfn_camelizer.rb +0 -92
  92. data/vendor/cfn_camelizer/lib/cfn_camelizer/version.rb +0 -3
  93. data/vendor/cfn_camelizer/spec/cfn_camelizer_spec.rb +0 -79
  94. data/vendor/cfn_camelizer/spec/spec_helper.rb +0 -14
@@ -1,56 +0,0 @@
1
- require "aws-sdk-cloudformation"
2
-
3
- module Cfn
4
- module AwsService
5
- def cfn
6
- @cfn ||= Aws::CloudFormation::Client.new
7
- end
8
-
9
- def stack_exists?(stack_name)
10
- return true if testing_update?
11
- return false if @options[:noop]
12
-
13
- exist = nil
14
- begin
15
- # When the stack does not exist an exception is raised. Example:
16
- # Aws::CloudFormation::Errors::ValidationError: Stack with id blah does not exist
17
- resp = cfn.describe_stacks(stack_name: stack_name)
18
- exist = true
19
- rescue Aws::CloudFormation::Errors::ValidationError => e
20
- if e.message =~ /does not exist/
21
- exist = false
22
- elsif e.message.include?("'stackName' failed to satisfy constraint")
23
- # Example of e.message when describe_stack with invalid stack name
24
- # "1 validation error detected: Value 'instance_and_route53' at 'stackName' failed to satisfy constraint: Member must satisfy regular expression pattern: [a-zA-Z][-a-zA-Z0-9]*|arn:[-a-zA-Z0-9:/._+]*"
25
- puts "Invalid stack name: #{stack_name}"
26
- puts "Full error message: #{e.message}"
27
- exit 1
28
- else
29
- raise # re-raise exception because unsure what other errors can happen
30
- end
31
- end
32
- exist
33
- end
34
-
35
- def find_stack(stack_name)
36
- resp = cfn.describe_stacks(stack_name: stack_name)
37
- resp.stacks.first
38
- rescue Aws::CloudFormation::Errors::ValidationError => e
39
- # example: Stack with id demo-web does not exist
40
- if e.message =~ /Stack with/ && e.message =~ /does not exist/
41
- nil
42
- else
43
- raise
44
- end
45
- end
46
-
47
- def rollback_complete?(stack)
48
- stack.stack_status == 'ROLLBACK_COMPLETE'
49
- end
50
-
51
- def testing_update?
52
- # TODO: Figure out how to get rid of this
53
- ENV['TEST'] # && self.class.name == "BoltCfn::Update"
54
- end
55
- end
56
- end
@@ -1,220 +0,0 @@
1
- require "cfn/status/version"
2
-
3
- module Cfn
4
- autoload :AwsService, "cfn/aws_service"
5
-
6
- class Status
7
- class Error < StandardError; end
8
-
9
- include AwsService
10
-
11
- attr_reader :events
12
- def initialize(stack_name, options={})
13
- @stack_name = stack_name
14
- @options = options
15
- reset
16
- end
17
-
18
- # used for the bolt cfn status command
19
- def run
20
- unless stack_exists?(@stack_name)
21
- puts "The stack #{@stack_name.color(:green)} does not exist."
22
- return true
23
- end
24
-
25
- resp = cfn.describe_stacks(stack_name: @stack_name)
26
- stack = resp.stacks.first
27
-
28
- puts "The current status for the stack #{@stack_name.color(:green)} is #{stack.stack_status.color(:green)}"
29
- if stack.stack_status =~ /_IN_PROGRESS$/
30
- puts "Stack events (tailing):"
31
- # tail all events until done
32
- @hide_time_took = true
33
- wait
34
- else
35
- puts "Stack events:"
36
- # show the last events that was user initiated
37
- refresh_events
38
- show_events(true)
39
- end
40
- success?
41
- end
42
-
43
- def reset
44
- @events = [] # constantly replaced with recent events
45
- @last_shown_event_id = nil
46
- @stack_deletion_completed = nil
47
- end
48
-
49
- # check for /(_COMPLETE|_FAILED)$/ status
50
- def wait
51
- puts "Waiting for stack to complete"
52
- start_time = Time.now
53
-
54
- refresh_events
55
- until completed || @stack_deletion_completed
56
- show_events
57
- end
58
- show_events(true) # show the final event
59
-
60
- if @stack_deletion_completed
61
- puts "Stack #{@stack_name} deleted."
62
- return
63
- end
64
-
65
- if last_event_status =~ /_FAILED/
66
- puts "Stack failed: #{last_event_status}".color(:red)
67
- puts "Stack reason #{@events[0]["resource_status_reason"]}".color(:red)
68
- elsif last_event_status =~ /_ROLLBACK_/
69
- puts "Stack rolled back: #{last_event_status}".color(:red)
70
- else # success
71
- puts "Stack success status: #{last_event_status}".color(:green)
72
- end
73
-
74
- # Never gets here when deleting a stack because the describe stack returns nothing
75
- # once the stack is deleted. Gets here for stack create and update though.
76
- return if @hide_time_took # set in run
77
- took = Time.now - start_time
78
- puts "Time took for stack deployment: #{pretty_time(took).color(:green)}."
79
- success?
80
- end
81
-
82
- def completed
83
- last_event_status =~ /(_COMPLETE|_FAILED)$/ &&
84
- @events[0]["logical_resource_id"] == @stack_name &&
85
- @events[0]["resource_type"] == "AWS::CloudFormation::Stack"
86
- end
87
-
88
- def last_event_status
89
- @events[0]["resource_status"]
90
- end
91
-
92
- # Only shows new events
93
- def show_events(final=false)
94
- if @last_shown_event_id.nil?
95
- i = find_index(:start, final)
96
- print_events(i)
97
- else
98
- i = find_index(:last_shown, final)
99
- # puts "last_shown index #{i}"
100
- print_events(i-1) unless i == 0
101
- end
102
-
103
- return if final
104
- sleep 5 unless ENV['TEST']
105
- refresh_events
106
- end
107
-
108
- def print_events(i)
109
- @events[0..i].reverse.each do |e|
110
- print_event(e)
111
- end
112
- @last_shown_event_id = @events[0]["event_id"]
113
- # puts "@last_shown_event_id #{@last_shown_event_id.inspect}"
114
- end
115
-
116
- def print_event(e)
117
- message = [
118
- event_time(e["timestamp"]),
119
- e["resource_status"],
120
- e["resource_type"],
121
- e["logical_resource_id"],
122
- e["resource_status_reason"]
123
- ].join(" ")
124
- message = message.color(:red) if e["resource_status"] =~ /_FAILED/
125
- puts message
126
- end
127
-
128
- # https://stackoverflow.com/questions/18000432/rails-12-hour-am-pm-range-for-a-day
129
- def event_time(timestamp)
130
- Time.parse(timestamp.to_s).localtime.strftime("%I:%M:%S%p")
131
- end
132
-
133
- # refreshes the loaded events in memory
134
- def refresh_events
135
- resp = cfn.describe_stack_events(stack_name: @stack_name)
136
- @events = resp["stack_events"]
137
- rescue Aws::CloudFormation::Errors::ValidationError => e
138
- if e.message =~ /Stack .* does not exis/
139
- @stack_deletion_completed = true
140
- else
141
- raise
142
- end
143
- end
144
-
145
- def find_index(name, final=false)
146
- send("#{name}_index", final)
147
- end
148
-
149
- def start_index(final=false)
150
- index = @events.find_index do |event|
151
- event["resource_type"] == "AWS::CloudFormation::Stack" &&
152
- event["resource_status_reason"] == "User Initiated"
153
- end
154
- # Instead of paginating until until we find the first "User Initiated" "AWS::CloudFormation::Stack" event
155
- # we'll use the max.
156
- index ? index : @events.size - 1
157
- end
158
-
159
- def last_shown_index(_)
160
- @events.find_index do |event|
161
- event["event_id"] == @last_shown_event_id
162
- end
163
- end
164
-
165
- def success?
166
- resource_status = @events[0]["resource_status"]
167
- %w[CREATE_COMPLETE UPDATE_COMPLETE].include?(resource_status)
168
- end
169
-
170
- def update_rollback?
171
- @events[0]["resource_status"] == "UPDATE_ROLLBACK_COMPLETE"
172
- end
173
-
174
- def find_update_failed_event
175
- i = @events.find_index do |event|
176
- event["resource_type"] == "AWS::CloudFormation::Stack" &&
177
- event["resource_status_reason"] == "User Initiated"
178
- end
179
-
180
- @events[0..i].reverse.find do |e|
181
- e["resource_status"] == "UPDATE_FAILED"
182
- end
183
- end
184
-
185
- def rollback_error_message
186
- return unless update_rollback?
187
-
188
- event = find_update_failed_event
189
- return unless event
190
-
191
- reason = event["resource_status_reason"]
192
- messages_map.each do |pattern, message|
193
- if reason =~ pattern
194
- return message
195
- end
196
- end
197
-
198
- reason # default message is original reason if not found in messages map
199
- end
200
-
201
- def messages_map
202
- {
203
- /CloudFormation cannot update a stack when a custom-named resource requires replacing/ => "A workaround is to run ufo again with STATIC_NAME=0 and to switch to dynamic names for resources. Then run ufo again with STATIC_NAME=1 to get back to statically name resources. Note, there are caveats with the workaround.",
204
- /cannot be associated with more than one load balancer/ => "There's was an issue updating the stack. Target groups can only be associated with one load balancer at a time. The workaround for this is to use UFO_FORCE_TARGET_GROUP=1 and run the command again. This will force the recreation of the target group resource.",
205
- /SetSubnets is not supported for load balancers of type/ => "Changing subnets for Network Load Balancers is currently not supported. You can try workarouding this with UFO_FORCE_ELB=1 and run the command again. This will force the recreation of the elb resource."
206
- }
207
- end
208
-
209
- # http://stackoverflow.com/questions/4175733/convert-duration-to-hoursminutesseconds-or-similar-in-rails-3-or-ruby
210
- def pretty_time(total_seconds)
211
- minutes = (total_seconds / 60) % 60
212
- seconds = total_seconds % 60
213
- if total_seconds < 60
214
- "#{seconds.to_i}s"
215
- else
216
- "#{minutes.to_i}m #{seconds.to_i}s"
217
- end
218
- end
219
- end
220
- end
@@ -1,5 +0,0 @@
1
- module Cfn
2
- class Status
3
- VERSION = "0.1.0"
4
- end
5
- end
@@ -1,81 +0,0 @@
1
- RSpec.describe Cfn::Status do
2
- it "has a version number" do
3
- expect(Cfn::Status::VERSION).not_to be nil
4
- end
5
-
6
- let(:status) do
7
- status = Cfn::Status.new("test-stack")
8
- allow(status).to receive(:cfn).and_return(cfn)
9
- status
10
- end
11
- let(:cfn) do
12
- service = double("service").as_null_object
13
- allow(service).to receive(:describe_stacks).and_return(stack_status)
14
- allow(service).to receive(:describe_stack_events).and_return(stack_events)
15
- service
16
- end
17
-
18
- context "in progress" do
19
- let(:stack_status) { "UPDATE_IN_PROGRESS" }
20
- let(:stack_events) { JSON.load(IO.read("spec/fixtures/cfn/stack-events-in-progress.json")) }
21
- it "lists events since user initiated event" do
22
- status.refresh_events
23
- i = status.find_index(:start)
24
- expect(i).to eq 15
25
- # uncomment to view and debug
26
- # status.show_events
27
- # puts "****"
28
- # status.show_events # show not show anything
29
- end
30
-
31
- it "lists events since last shown event" do
32
- # first display
33
- status.refresh_events
34
- i = status.find_index(:start)
35
- expect(i).to eq 15
36
-
37
- # move the last event back in time 4 events, so should print 3 events
38
- status.instance_variable_set(:@last_shown_event_id, "TargetGroup-ec634c43-b887-4bde-a525-7c69782865a6")
39
-
40
- captured_events = []
41
- allow(status).to receive(:print_event) do |e|
42
- captured_events << "#{e["resource_type"]} #{e["resource_status"]}"
43
- end
44
- status.show_events
45
- expect(captured_events).to eq([
46
- "AWS::ElasticLoadBalancingV2::LoadBalancer DELETE_IN_PROGRESS",
47
- "AWS::ElasticLoadBalancingV2::LoadBalancer DELETE_COMPLETE",
48
- "AWS::EC2::SecurityGroup DELETE_IN_PROGRESS",
49
- ])
50
- end
51
- end
52
-
53
- context "complete" do
54
- let(:stack_status) { "UPDATE_COMPLETE" }
55
- let(:stack_events) { JSON.load(IO.read("spec/fixtures/cfn/stack-events-complete.json")) }
56
- it "lists events all the way to completion" do
57
- status.refresh_events
58
- i = status.find_index(:start)
59
- expect(i).to eq 17
60
- # uncomment to view and debug
61
- # status.show_events
62
- end
63
- end
64
-
65
- context "update_rollback" do
66
- let(:stack_status) { "UPDATE_ROLLBACK_COMPLETE" }
67
- let(:stack_events) { JSON.load(IO.read("spec/fixtures/cfn/stack-events-update-rollback-complete.json")) }
68
- it "lists events all the way to update rollback complete" do
69
- status.refresh_events
70
- expect(status.success?).to be false
71
- expect(status.update_rollback?).to be true
72
- expect(status.rollback_error_message).to include("STATIC_NAME")
73
-
74
- # i = status.find_index(:start)
75
- # expect(i).to eq 17
76
- # uncomment to view and debug
77
- # status.show_events
78
- end
79
- end
80
- end
81
-
@@ -1,1080 +0,0 @@
1
- {
2
- "stack_events": [
3
- {
4
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
5
- "event_id": "4543a350-7362-11e8-9cba-50d5cd16c68e",
6
- "stack_name": "demo-web",
7
- "logical_resource_id": "demo-web",
8
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
9
- "resource_type": "AWS::CloudFormation::Stack",
10
- "timestamp": "2018-06-19 01:44:14 UTC",
11
- "resource_status": "UPDATE_COMPLETE"
12
- },
13
- {
14
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
15
- "event_id": "ElbSecurityGroup-543beb17-2e99-43ed-b191-b15d5e11da79",
16
- "stack_name": "demo-web",
17
- "logical_resource_id": "ElbSecurityGroup",
18
- "physical_resource_id": "sg-e3da72a8",
19
- "resource_type": "AWS::EC2::SecurityGroup",
20
- "timestamp": "2018-06-19 01:44:13 UTC",
21
- "resource_status": "DELETE_COMPLETE"
22
- },
23
- {
24
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
25
- "event_id": "ElbSecurityGroup-b915d3d7-0136-43af-86f5-7e0f2aa25811",
26
- "stack_name": "demo-web",
27
- "logical_resource_id": "ElbSecurityGroup",
28
- "physical_resource_id": "sg-e3da72a8",
29
- "resource_type": "AWS::EC2::SecurityGroup",
30
- "timestamp": "2018-06-19 01:43:25 UTC",
31
- "resource_status": "DELETE_IN_PROGRESS"
32
- },
33
- {
34
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
35
- "event_id": "Elb-48e41804-9d23-4302-97f6-12023a7179e1",
36
- "stack_name": "demo-web",
37
- "logical_resource_id": "Elb",
38
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a",
39
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
40
- "timestamp": "2018-06-19 01:43:23 UTC",
41
- "resource_status": "DELETE_COMPLETE"
42
- },
43
- {
44
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
45
- "event_id": "Elb-807571cb-2d4a-43b7-b2f0-5f801b4f7b14",
46
- "stack_name": "demo-web",
47
- "logical_resource_id": "Elb",
48
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a",
49
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
50
- "timestamp": "2018-06-19 01:43:23 UTC",
51
- "resource_status": "DELETE_IN_PROGRESS"
52
- },
53
- {
54
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
55
- "event_id": "TargetGroup-ec634c43-b887-4bde-a525-7c69782865a6",
56
- "stack_name": "demo-web",
57
- "logical_resource_id": "TargetGroup",
58
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1",
59
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
60
- "timestamp": "2018-06-19 01:43:22 UTC",
61
- "resource_status": "DELETE_COMPLETE"
62
- },
63
- {
64
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
65
- "event_id": "TargetGroup-3b2887fb-00d0-4629-bc21-c6343de22da4",
66
- "stack_name": "demo-web",
67
- "logical_resource_id": "TargetGroup",
68
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1",
69
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
70
- "timestamp": "2018-06-19 01:43:21 UTC",
71
- "resource_status": "DELETE_IN_PROGRESS"
72
- },
73
- {
74
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
75
- "event_id": "EcsService-65a49928-5719-417c-8b88-d46615a819e0",
76
- "stack_name": "demo-web",
77
- "logical_resource_id": "EcsService",
78
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1N7ADZ6ZXNSHZ",
79
- "resource_type": "AWS::ECS::Service",
80
- "timestamp": "2018-06-19 01:43:20 UTC",
81
- "resource_status": "DELETE_COMPLETE"
82
- },
83
- {
84
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
85
- "event_id": "EcsSecurityGroupRule-cd75e919-18d3-4358-a079-1ce5601f1472",
86
- "stack_name": "demo-web",
87
- "logical_resource_id": "EcsSecurityGroupRule",
88
- "physical_resource_id": "EcsSecurityGroupRule",
89
- "resource_type": "AWS::EC2::SecurityGroupIngress",
90
- "timestamp": "2018-06-19 01:42:50 UTC",
91
- "resource_status": "DELETE_COMPLETE"
92
- },
93
- {
94
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
95
- "event_id": "Listener-40b1dc95-4c2c-43b4-9a3f-a72c0a9a8db2",
96
- "stack_name": "demo-web",
97
- "logical_resource_id": "Listener",
98
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a/0269156c6f8a5d37",
99
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
100
- "timestamp": "2018-06-19 01:42:50 UTC",
101
- "resource_status": "DELETE_COMPLETE"
102
- },
103
- {
104
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
105
- "event_id": "EcsSecurityGroupRule-426d9090-c431-41f7-a9eb-58dbfa5754ec",
106
- "stack_name": "demo-web",
107
- "logical_resource_id": "EcsSecurityGroupRule",
108
- "physical_resource_id": "EcsSecurityGroupRule",
109
- "resource_type": "AWS::EC2::SecurityGroupIngress",
110
- "timestamp": "2018-06-19 01:42:49 UTC",
111
- "resource_status": "DELETE_IN_PROGRESS"
112
- },
113
- {
114
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
115
- "event_id": "Listener-edc90e3f-5d30-4470-be0f-eaf821cdaf96",
116
- "stack_name": "demo-web",
117
- "logical_resource_id": "Listener",
118
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a/0269156c6f8a5d37",
119
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
120
- "timestamp": "2018-06-19 01:42:49 UTC",
121
- "resource_status": "DELETE_IN_PROGRESS"
122
- },
123
- {
124
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
125
- "event_id": "EcsService-60b2bae3-abb1-40bc-add1-901baf9cbc38",
126
- "stack_name": "demo-web",
127
- "logical_resource_id": "EcsService",
128
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1N7ADZ6ZXNSHZ",
129
- "resource_type": "AWS::ECS::Service",
130
- "timestamp": "2018-06-19 01:42:49 UTC",
131
- "resource_status": "DELETE_IN_PROGRESS"
132
- },
133
- {
134
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
135
- "event_id": "1191b0b0-7362-11e8-8f9f-500c285eae99",
136
- "stack_name": "demo-web",
137
- "logical_resource_id": "demo-web",
138
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
139
- "resource_type": "AWS::CloudFormation::Stack",
140
- "timestamp": "2018-06-19 01:42:47 UTC",
141
- "resource_status": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"
142
- },
143
- {
144
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
145
- "event_id": "EcsService-UPDATE_COMPLETE-2018-06-19T01:42:45.150Z",
146
- "stack_name": "demo-web",
147
- "logical_resource_id": "EcsService",
148
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-COSKF0KEJ778",
149
- "resource_type": "AWS::ECS::Service",
150
- "timestamp": "2018-06-19 01:42:45 UTC",
151
- "resource_status": "UPDATE_COMPLETE",
152
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/my-elb/0158af4eb596cfd2\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
153
- },
154
- {
155
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
156
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-19T01:40:43.817Z",
157
- "stack_name": "demo-web",
158
- "logical_resource_id": "EcsService",
159
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-COSKF0KEJ778",
160
- "resource_type": "AWS::ECS::Service",
161
- "timestamp": "2018-06-19 01:40:43 UTC",
162
- "resource_status": "UPDATE_IN_PROGRESS",
163
- "resource_status_reason": "Resource creation Initiated",
164
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/my-elb/0158af4eb596cfd2\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
165
- },
166
- {
167
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
168
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-19T01:40:43.135Z",
169
- "stack_name": "demo-web",
170
- "logical_resource_id": "EcsService",
171
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1N7ADZ6ZXNSHZ",
172
- "resource_type": "AWS::ECS::Service",
173
- "timestamp": "2018-06-19 01:40:43 UTC",
174
- "resource_status": "UPDATE_IN_PROGRESS",
175
- "resource_status_reason": "Requested update requires the creation of a new physical resource; hence creating one.",
176
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/my-elb/0158af4eb596cfd2\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
177
- },
178
- {
179
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
180
- "event_id": "c32cb870-7361-11e8-aa12-500c28b3e29a",
181
- "stack_name": "demo-web",
182
- "logical_resource_id": "demo-web",
183
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
184
- "resource_type": "AWS::CloudFormation::Stack",
185
- "timestamp": "2018-06-19 01:40:35 UTC",
186
- "resource_status": "UPDATE_IN_PROGRESS",
187
- "resource_status_reason": "User Initiated"
188
- },
189
- {
190
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
191
- "event_id": "b17cfae0-7361-11e8-8652-500c524058c6",
192
- "stack_name": "demo-web",
193
- "logical_resource_id": "demo-web",
194
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
195
- "resource_type": "AWS::CloudFormation::Stack",
196
- "timestamp": "2018-06-19 01:40:06 UTC",
197
- "resource_status": "UPDATE_COMPLETE"
198
- },
199
- {
200
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
201
- "event_id": "EcsService-7817b4fd-6a5d-473d-a098-fffc31f8be02",
202
- "stack_name": "demo-web",
203
- "logical_resource_id": "EcsService",
204
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-3WUGSQGMX5D7",
205
- "resource_type": "AWS::ECS::Service",
206
- "timestamp": "2018-06-19 01:40:05 UTC",
207
- "resource_status": "DELETE_COMPLETE"
208
- },
209
- {
210
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
211
- "event_id": "EcsService-40f58304-ce99-4a1c-8457-0c1d4c659a8a",
212
- "stack_name": "demo-web",
213
- "logical_resource_id": "EcsService",
214
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-3WUGSQGMX5D7",
215
- "resource_type": "AWS::ECS::Service",
216
- "timestamp": "2018-06-19 01:39:34 UTC",
217
- "resource_status": "DELETE_IN_PROGRESS"
218
- },
219
- {
220
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
221
- "event_id": "9d9ffd10-7361-11e8-b9a6-50fae984a0d1",
222
- "stack_name": "demo-web",
223
- "logical_resource_id": "demo-web",
224
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
225
- "resource_type": "AWS::CloudFormation::Stack",
226
- "timestamp": "2018-06-19 01:39:32 UTC",
227
- "resource_status": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"
228
- },
229
- {
230
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
231
- "event_id": "EcsService-UPDATE_COMPLETE-2018-06-19T01:39:30.206Z",
232
- "stack_name": "demo-web",
233
- "logical_resource_id": "EcsService",
234
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1N7ADZ6ZXNSHZ",
235
- "resource_type": "AWS::ECS::Service",
236
- "timestamp": "2018-06-19 01:39:30 UTC",
237
- "resource_status": "UPDATE_COMPLETE",
238
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
239
- },
240
- {
241
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
242
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-19T01:37:29.037Z",
243
- "stack_name": "demo-web",
244
- "logical_resource_id": "EcsService",
245
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1N7ADZ6ZXNSHZ",
246
- "resource_type": "AWS::ECS::Service",
247
- "timestamp": "2018-06-19 01:37:29 UTC",
248
- "resource_status": "UPDATE_IN_PROGRESS",
249
- "resource_status_reason": "Resource creation Initiated",
250
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
251
- },
252
- {
253
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
254
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-19T01:37:28.467Z",
255
- "stack_name": "demo-web",
256
- "logical_resource_id": "EcsService",
257
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-3WUGSQGMX5D7",
258
- "resource_type": "AWS::ECS::Service",
259
- "timestamp": "2018-06-19 01:37:28 UTC",
260
- "resource_status": "UPDATE_IN_PROGRESS",
261
- "resource_status_reason": "Requested update requires the creation of a new physical resource; hence creating one.",
262
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
263
- },
264
- {
265
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
266
- "event_id": "Listener-CREATE_COMPLETE-2018-06-19T01:37:28.191Z",
267
- "stack_name": "demo-web",
268
- "logical_resource_id": "Listener",
269
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a/0269156c6f8a5d37",
270
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
271
- "timestamp": "2018-06-19 01:37:28 UTC",
272
- "resource_status": "CREATE_COMPLETE",
273
- "resource_properties": "{\"LoadBalancerArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a\",\"DefaultActions\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1\",\"Type\":\"forward\"}],\"Port\":\"80\",\"Protocol\":\"HTTP\"}"
274
- },
275
- {
276
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
277
- "event_id": "Listener-CREATE_IN_PROGRESS-2018-06-19T01:37:27.393Z",
278
- "stack_name": "demo-web",
279
- "logical_resource_id": "Listener",
280
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a/0269156c6f8a5d37",
281
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
282
- "timestamp": "2018-06-19 01:37:27 UTC",
283
- "resource_status": "CREATE_IN_PROGRESS",
284
- "resource_status_reason": "Resource creation Initiated",
285
- "resource_properties": "{\"LoadBalancerArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a\",\"DefaultActions\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1\",\"Type\":\"forward\"}],\"Port\":\"80\",\"Protocol\":\"HTTP\"}"
286
- },
287
- {
288
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
289
- "event_id": "Listener-CREATE_IN_PROGRESS-2018-06-19T01:37:27.013Z",
290
- "stack_name": "demo-web",
291
- "logical_resource_id": "Listener",
292
- "physical_resource_id": "",
293
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
294
- "timestamp": "2018-06-19 01:37:27 UTC",
295
- "resource_status": "CREATE_IN_PROGRESS",
296
- "resource_properties": "{\"LoadBalancerArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a\",\"DefaultActions\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1\",\"Type\":\"forward\"}],\"Port\":\"80\",\"Protocol\":\"HTTP\"}"
297
- },
298
- {
299
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
300
- "event_id": "TargetGroup-CREATE_COMPLETE-2018-06-19T01:37:24.475Z",
301
- "stack_name": "demo-web",
302
- "logical_resource_id": "TargetGroup",
303
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1",
304
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
305
- "timestamp": "2018-06-19 01:37:24 UTC",
306
- "resource_status": "CREATE_COMPLETE",
307
- "resource_properties": "{\"HealthCheckIntervalSeconds\":\"60\",\"VpcId\":\"vpc-d79753ae\",\"HealthCheckPath\":\"/\",\"Port\":\"80\",\"TargetType\":\"ip\",\"TargetGroupAttributes\":[{\"Value\":\"0\",\"Key\":\"deregistration_delay.timeout_seconds\"}],\"UnhealthyThresholdCount\":\"10\",\"Protocol\":\"HTTP\"}"
308
- },
309
- {
310
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
311
- "event_id": "TargetGroup-CREATE_IN_PROGRESS-2018-06-19T01:37:23.290Z",
312
- "stack_name": "demo-web",
313
- "logical_resource_id": "TargetGroup",
314
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-16TC4INRX3RED/f48205693f50b7a1",
315
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
316
- "timestamp": "2018-06-19 01:37:23 UTC",
317
- "resource_status": "CREATE_IN_PROGRESS",
318
- "resource_status_reason": "Resource creation Initiated",
319
- "resource_properties": "{\"HealthCheckIntervalSeconds\":\"60\",\"VpcId\":\"vpc-d79753ae\",\"HealthCheckPath\":\"/\",\"Port\":\"80\",\"TargetType\":\"ip\",\"TargetGroupAttributes\":[{\"Value\":\"0\",\"Key\":\"deregistration_delay.timeout_seconds\"}],\"UnhealthyThresholdCount\":\"10\",\"Protocol\":\"HTTP\"}"
320
- },
321
- {
322
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
323
- "event_id": "TargetGroup-CREATE_IN_PROGRESS-2018-06-19T01:37:22.878Z",
324
- "stack_name": "demo-web",
325
- "logical_resource_id": "TargetGroup",
326
- "physical_resource_id": "",
327
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
328
- "timestamp": "2018-06-19 01:37:22 UTC",
329
- "resource_status": "CREATE_IN_PROGRESS",
330
- "resource_properties": "{\"HealthCheckIntervalSeconds\":\"60\",\"VpcId\":\"vpc-d79753ae\",\"HealthCheckPath\":\"/\",\"Port\":\"80\",\"TargetType\":\"ip\",\"TargetGroupAttributes\":[{\"Value\":\"0\",\"Key\":\"deregistration_delay.timeout_seconds\"}],\"UnhealthyThresholdCount\":\"10\",\"Protocol\":\"HTTP\"}"
331
- },
332
- {
333
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
334
- "event_id": "Elb-CREATE_COMPLETE-2018-06-19T01:37:20.680Z",
335
- "stack_name": "demo-web",
336
- "logical_resource_id": "Elb",
337
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a",
338
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
339
- "timestamp": "2018-06-19 01:37:20 UTC",
340
- "resource_status": "CREATE_COMPLETE",
341
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-e3da72a8\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-23\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
342
- },
343
- {
344
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
345
- "event_id": "EcsSecurityGroupRule-CREATE_COMPLETE-2018-06-19T01:35:18.518Z",
346
- "stack_name": "demo-web",
347
- "logical_resource_id": "EcsSecurityGroupRule",
348
- "physical_resource_id": "EcsSecurityGroupRule",
349
- "resource_type": "AWS::EC2::SecurityGroupIngress",
350
- "timestamp": "2018-06-19 01:35:18 UTC",
351
- "resource_status": "CREATE_COMPLETE",
352
- "resource_properties": "{\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\",\"SourceSecurityGroupId\":\"sg-e3da72a8\",\"GroupId\":\"sg-dc379997\"}"
353
- },
354
- {
355
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
356
- "event_id": "Elb-CREATE_IN_PROGRESS-2018-06-19T01:35:18.390Z",
357
- "stack_name": "demo-web",
358
- "logical_resource_id": "Elb",
359
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-3VO09GCMW764/44104adf26b1873a",
360
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
361
- "timestamp": "2018-06-19 01:35:18 UTC",
362
- "resource_status": "CREATE_IN_PROGRESS",
363
- "resource_status_reason": "Resource creation Initiated",
364
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-e3da72a8\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-23\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
365
- },
366
- {
367
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
368
- "event_id": "EcsSecurityGroupRule-CREATE_IN_PROGRESS-2018-06-19T01:35:17.697Z",
369
- "stack_name": "demo-web",
370
- "logical_resource_id": "EcsSecurityGroupRule",
371
- "physical_resource_id": "EcsSecurityGroupRule",
372
- "resource_type": "AWS::EC2::SecurityGroupIngress",
373
- "timestamp": "2018-06-19 01:35:17 UTC",
374
- "resource_status": "CREATE_IN_PROGRESS",
375
- "resource_status_reason": "Resource creation Initiated",
376
- "resource_properties": "{\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\",\"SourceSecurityGroupId\":\"sg-e3da72a8\",\"GroupId\":\"sg-dc379997\"}"
377
- },
378
- {
379
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
380
- "event_id": "Elb-CREATE_IN_PROGRESS-2018-06-19T01:35:17.537Z",
381
- "stack_name": "demo-web",
382
- "logical_resource_id": "Elb",
383
- "physical_resource_id": "",
384
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
385
- "timestamp": "2018-06-19 01:35:17 UTC",
386
- "resource_status": "CREATE_IN_PROGRESS",
387
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-e3da72a8\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-23\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
388
- },
389
- {
390
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
391
- "event_id": "EcsSecurityGroupRule-CREATE_IN_PROGRESS-2018-06-19T01:35:17.523Z",
392
- "stack_name": "demo-web",
393
- "logical_resource_id": "EcsSecurityGroupRule",
394
- "physical_resource_id": "",
395
- "resource_type": "AWS::EC2::SecurityGroupIngress",
396
- "timestamp": "2018-06-19 01:35:17 UTC",
397
- "resource_status": "CREATE_IN_PROGRESS",
398
- "resource_properties": "{\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\",\"SourceSecurityGroupId\":\"sg-e3da72a8\",\"GroupId\":\"sg-dc379997\"}"
399
- },
400
- {
401
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
402
- "event_id": "ElbSecurityGroup-CREATE_COMPLETE-2018-06-19T01:35:15.453Z",
403
- "stack_name": "demo-web",
404
- "logical_resource_id": "ElbSecurityGroup",
405
- "physical_resource_id": "sg-e3da72a8",
406
- "resource_type": "AWS::EC2::SecurityGroup",
407
- "timestamp": "2018-06-19 01:35:15 UTC",
408
- "resource_status": "CREATE_COMPLETE",
409
- "resource_properties": "{\"GroupDescription\":\"Allow http to client host\",\"VpcId\":\"vpc-d79753ae\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}],\"SecurityGroupEgress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\"}],\"Tags\":[{\"Value\":\"demo-web-elb\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
410
- },
411
- {
412
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
413
- "event_id": "ElbSecurityGroup-CREATE_IN_PROGRESS-2018-06-19T01:35:12.980Z",
414
- "stack_name": "demo-web",
415
- "logical_resource_id": "ElbSecurityGroup",
416
- "physical_resource_id": "sg-e3da72a8",
417
- "resource_type": "AWS::EC2::SecurityGroup",
418
- "timestamp": "2018-06-19 01:35:12 UTC",
419
- "resource_status": "CREATE_IN_PROGRESS",
420
- "resource_status_reason": "Resource creation Initiated",
421
- "resource_properties": "{\"GroupDescription\":\"Allow http to client host\",\"VpcId\":\"vpc-d79753ae\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}],\"SecurityGroupEgress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\"}],\"Tags\":[{\"Value\":\"demo-web-elb\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
422
- },
423
- {
424
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
425
- "event_id": "ElbSecurityGroup-CREATE_IN_PROGRESS-2018-06-19T01:35:12.117Z",
426
- "stack_name": "demo-web",
427
- "logical_resource_id": "ElbSecurityGroup",
428
- "physical_resource_id": "",
429
- "resource_type": "AWS::EC2::SecurityGroup",
430
- "timestamp": "2018-06-19 01:35:12 UTC",
431
- "resource_status": "CREATE_IN_PROGRESS",
432
- "resource_properties": "{\"GroupDescription\":\"Allow http to client host\",\"VpcId\":\"vpc-d79753ae\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}],\"SecurityGroupEgress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\"}],\"Tags\":[{\"Value\":\"demo-web-elb\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
433
- },
434
- {
435
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
436
- "event_id": "ff4de5f0-7360-11e8-856b-50fae9882035",
437
- "stack_name": "demo-web",
438
- "logical_resource_id": "demo-web",
439
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
440
- "resource_type": "AWS::CloudFormation::Stack",
441
- "timestamp": "2018-06-19 01:35:07 UTC",
442
- "resource_status": "UPDATE_IN_PROGRESS",
443
- "resource_status_reason": "User Initiated"
444
- },
445
- {
446
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
447
- "event_id": "badb9ed0-7360-11e8-ba23-503aca4a5835",
448
- "stack_name": "demo-web",
449
- "logical_resource_id": "demo-web",
450
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
451
- "resource_type": "AWS::CloudFormation::Stack",
452
- "timestamp": "2018-06-19 01:33:12 UTC",
453
- "resource_status": "UPDATE_COMPLETE"
454
- },
455
- {
456
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
457
- "event_id": "ElbSecurityGroup-a7a54761-56ba-4410-9e3f-1e219a8a4a90",
458
- "stack_name": "demo-web",
459
- "logical_resource_id": "ElbSecurityGroup",
460
- "physical_resource_id": "sg-f5c26bbe",
461
- "resource_type": "AWS::EC2::SecurityGroup",
462
- "timestamp": "2018-06-19 01:33:11 UTC",
463
- "resource_status": "DELETE_COMPLETE"
464
- },
465
- {
466
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
467
- "event_id": "ElbSecurityGroup-da33b83e-80a5-49ce-b651-aca71f2e04c4",
468
- "stack_name": "demo-web",
469
- "logical_resource_id": "ElbSecurityGroup",
470
- "physical_resource_id": "sg-f5c26bbe",
471
- "resource_type": "AWS::EC2::SecurityGroup",
472
- "timestamp": "2018-06-19 01:32:05 UTC",
473
- "resource_status": "DELETE_IN_PROGRESS"
474
- },
475
- {
476
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
477
- "event_id": "Elb-479bb2c6-00b0-41da-84ed-194b3e9c1168",
478
- "stack_name": "demo-web",
479
- "logical_resource_id": "Elb",
480
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158",
481
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
482
- "timestamp": "2018-06-19 01:32:04 UTC",
483
- "resource_status": "DELETE_COMPLETE"
484
- },
485
- {
486
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
487
- "event_id": "Elb-31b43685-4613-41ed-aa71-cdd65d3a9ed0",
488
- "stack_name": "demo-web",
489
- "logical_resource_id": "Elb",
490
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158",
491
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
492
- "timestamp": "2018-06-19 01:32:03 UTC",
493
- "resource_status": "DELETE_IN_PROGRESS"
494
- },
495
- {
496
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
497
- "event_id": "TargetGroup-d5082134-ddcc-4db2-bae1-3b5555a8893d",
498
- "stack_name": "demo-web",
499
- "logical_resource_id": "TargetGroup",
500
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209",
501
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
502
- "timestamp": "2018-06-19 01:32:02 UTC",
503
- "resource_status": "DELETE_COMPLETE"
504
- },
505
- {
506
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
507
- "event_id": "TargetGroup-5ec17653-f24b-44c0-8a28-c88fdb59967b",
508
- "stack_name": "demo-web",
509
- "logical_resource_id": "TargetGroup",
510
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209",
511
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
512
- "timestamp": "2018-06-19 01:32:02 UTC",
513
- "resource_status": "DELETE_IN_PROGRESS"
514
- },
515
- {
516
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
517
- "event_id": "EcsService-59707204-ad72-4eec-94d2-2ed97455b404",
518
- "stack_name": "demo-web",
519
- "logical_resource_id": "EcsService",
520
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-WB5L8HVGARBJ",
521
- "resource_type": "AWS::ECS::Service",
522
- "timestamp": "2018-06-19 01:32:01 UTC",
523
- "resource_status": "DELETE_COMPLETE"
524
- },
525
- {
526
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
527
- "event_id": "EcsSecurityGroupRule-b2b44dee-965c-48cd-940b-f743b6b5baf0",
528
- "stack_name": "demo-web",
529
- "logical_resource_id": "EcsSecurityGroupRule",
530
- "physical_resource_id": "EcsSecurityGroupRule",
531
- "resource_type": "AWS::EC2::SecurityGroupIngress",
532
- "timestamp": "2018-06-19 01:31:01 UTC",
533
- "resource_status": "DELETE_COMPLETE"
534
- },
535
- {
536
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
537
- "event_id": "Listener-36080d15-51a8-4a64-8e46-59e7b158ee74",
538
- "stack_name": "demo-web",
539
- "logical_resource_id": "Listener",
540
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158/8a3e327ae285dedb",
541
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
542
- "timestamp": "2018-06-19 01:31:00 UTC",
543
- "resource_status": "DELETE_COMPLETE"
544
- },
545
- {
546
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
547
- "event_id": "Listener-51bdedbf-5dd3-4c58-9a04-8dd8e11ea07f",
548
- "stack_name": "demo-web",
549
- "logical_resource_id": "Listener",
550
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158/8a3e327ae285dedb",
551
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
552
- "timestamp": "2018-06-19 01:31:00 UTC",
553
- "resource_status": "DELETE_IN_PROGRESS"
554
- },
555
- {
556
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
557
- "event_id": "EcsSecurityGroupRule-c3e534f1-ace5-41fa-bf63-c19fba8dbf02",
558
- "stack_name": "demo-web",
559
- "logical_resource_id": "EcsSecurityGroupRule",
560
- "physical_resource_id": "EcsSecurityGroupRule",
561
- "resource_type": "AWS::EC2::SecurityGroupIngress",
562
- "timestamp": "2018-06-19 01:31:00 UTC",
563
- "resource_status": "DELETE_IN_PROGRESS"
564
- },
565
- {
566
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
567
- "event_id": "EcsService-8ed38b67-3f65-41d5-9bf1-80a9d14fc3b2",
568
- "stack_name": "demo-web",
569
- "logical_resource_id": "EcsService",
570
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-WB5L8HVGARBJ",
571
- "resource_type": "AWS::ECS::Service",
572
- "timestamp": "2018-06-19 01:30:59 UTC",
573
- "resource_status": "DELETE_IN_PROGRESS"
574
- },
575
- {
576
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
577
- "event_id": "6afa3fc0-7360-11e8-8cc6-500c5242948e",
578
- "stack_name": "demo-web",
579
- "logical_resource_id": "demo-web",
580
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
581
- "resource_type": "AWS::CloudFormation::Stack",
582
- "timestamp": "2018-06-19 01:30:58 UTC",
583
- "resource_status": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"
584
- },
585
- {
586
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
587
- "event_id": "EcsService-UPDATE_COMPLETE-2018-06-19T01:30:55.783Z",
588
- "stack_name": "demo-web",
589
- "logical_resource_id": "EcsService",
590
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-3WUGSQGMX5D7",
591
- "resource_type": "AWS::ECS::Service",
592
- "timestamp": "2018-06-19 01:30:55 UTC",
593
- "resource_status": "UPDATE_COMPLETE",
594
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
595
- },
596
- {
597
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
598
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-19T01:28:54.696Z",
599
- "stack_name": "demo-web",
600
- "logical_resource_id": "EcsService",
601
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-3WUGSQGMX5D7",
602
- "resource_type": "AWS::ECS::Service",
603
- "timestamp": "2018-06-19 01:28:54 UTC",
604
- "resource_status": "UPDATE_IN_PROGRESS",
605
- "resource_status_reason": "Resource creation Initiated",
606
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
607
- },
608
- {
609
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
610
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-19T01:28:54.020Z",
611
- "stack_name": "demo-web",
612
- "logical_resource_id": "EcsService",
613
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-WB5L8HVGARBJ",
614
- "resource_type": "AWS::ECS::Service",
615
- "timestamp": "2018-06-19 01:28:54 UTC",
616
- "resource_status": "UPDATE_IN_PROGRESS",
617
- "resource_status_reason": "Requested update requires the creation of a new physical resource; hence creating one.",
618
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
619
- },
620
- {
621
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
622
- "event_id": "1cc446c0-7360-11e8-8a08-500c28604ce6",
623
- "stack_name": "demo-web",
624
- "logical_resource_id": "demo-web",
625
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
626
- "resource_type": "AWS::CloudFormation::Stack",
627
- "timestamp": "2018-06-19 01:28:47 UTC",
628
- "resource_status": "UPDATE_IN_PROGRESS",
629
- "resource_status_reason": "User Initiated"
630
- },
631
- {
632
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
633
- "event_id": "d78988e0-7346-11e8-93ce-500c28659c35",
634
- "stack_name": "demo-web",
635
- "logical_resource_id": "demo-web",
636
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
637
- "resource_type": "AWS::CloudFormation::Stack",
638
- "timestamp": "2018-06-18 22:27:53 UTC",
639
- "resource_status": "UPDATE_COMPLETE"
640
- },
641
- {
642
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
643
- "event_id": "d707fcd0-7346-11e8-a61b-500c524058f2",
644
- "stack_name": "demo-web",
645
- "logical_resource_id": "demo-web",
646
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
647
- "resource_type": "AWS::CloudFormation::Stack",
648
- "timestamp": "2018-06-18 22:27:52 UTC",
649
- "resource_status": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"
650
- },
651
- {
652
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
653
- "event_id": "EcsService-UPDATE_COMPLETE-2018-06-18T22:27:49.258Z",
654
- "stack_name": "demo-web",
655
- "logical_resource_id": "EcsService",
656
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-WB5L8HVGARBJ",
657
- "resource_type": "AWS::ECS::Service",
658
- "timestamp": "2018-06-18 22:27:49 UTC",
659
- "resource_status": "UPDATE_COMPLETE",
660
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
661
- },
662
- {
663
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
664
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-18T22:19:44.883Z",
665
- "stack_name": "demo-web",
666
- "logical_resource_id": "EcsService",
667
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-WB5L8HVGARBJ",
668
- "resource_type": "AWS::ECS::Service",
669
- "timestamp": "2018-06-18 22:19:44 UTC",
670
- "resource_status": "UPDATE_IN_PROGRESS",
671
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-18479b53\",\"sg-c3c16888\",\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
672
- },
673
- {
674
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
675
- "event_id": "Elb-UPDATE_COMPLETE-2018-06-18T22:19:39.365Z",
676
- "stack_name": "demo-web",
677
- "logical_resource_id": "Elb",
678
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158",
679
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
680
- "timestamp": "2018-06-18 22:19:39 UTC",
681
- "resource_status": "UPDATE_COMPLETE",
682
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-f5c26bbe\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-78\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
683
- },
684
- {
685
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
686
- "event_id": "Elb-UPDATE_IN_PROGRESS-2018-06-18T22:19:38.696Z",
687
- "stack_name": "demo-web",
688
- "logical_resource_id": "Elb",
689
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158",
690
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
691
- "timestamp": "2018-06-18 22:19:38 UTC",
692
- "resource_status": "UPDATE_IN_PROGRESS",
693
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-f5c26bbe\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-78\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
694
- },
695
- {
696
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
697
- "event_id": "ad3772b0-7345-11e8-aefe-500c28b03efd",
698
- "stack_name": "demo-web",
699
- "logical_resource_id": "demo-web",
700
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
701
- "resource_type": "AWS::CloudFormation::Stack",
702
- "timestamp": "2018-06-18 22:19:33 UTC",
703
- "resource_status": "UPDATE_IN_PROGRESS",
704
- "resource_status_reason": "User Initiated"
705
- },
706
- {
707
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
708
- "event_id": "76b5be40-7345-11e8-8ec2-500c28604c82",
709
- "stack_name": "demo-web",
710
- "logical_resource_id": "demo-web",
711
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
712
- "resource_type": "AWS::CloudFormation::Stack",
713
- "timestamp": "2018-06-18 22:18:01 UTC",
714
- "resource_status": "UPDATE_COMPLETE"
715
- },
716
- {
717
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
718
- "event_id": "EcsService-16413393-56c4-4ba7-a828-898f51fa4320",
719
- "stack_name": "demo-web",
720
- "logical_resource_id": "EcsService",
721
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-11MPMP7GAS3WL",
722
- "resource_type": "AWS::ECS::Service",
723
- "timestamp": "2018-06-18 22:18:01 UTC",
724
- "resource_status": "DELETE_COMPLETE"
725
- },
726
- {
727
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
728
- "event_id": "EcsService-79fe2fa0-928f-4892-b9fb-f532d210a107",
729
- "stack_name": "demo-web",
730
- "logical_resource_id": "EcsService",
731
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-11MPMP7GAS3WL",
732
- "resource_type": "AWS::ECS::Service",
733
- "timestamp": "2018-06-18 22:17:29 UTC",
734
- "resource_status": "DELETE_IN_PROGRESS"
735
- },
736
- {
737
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
738
- "event_id": "62bb2650-7345-11e8-bc61-500c286014fd",
739
- "stack_name": "demo-web",
740
- "logical_resource_id": "demo-web",
741
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
742
- "resource_type": "AWS::CloudFormation::Stack",
743
- "timestamp": "2018-06-18 22:17:28 UTC",
744
- "resource_status": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"
745
- },
746
- {
747
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
748
- "event_id": "EcsService-UPDATE_COMPLETE-2018-06-18T22:17:25.710Z",
749
- "stack_name": "demo-web",
750
- "logical_resource_id": "EcsService",
751
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-WB5L8HVGARBJ",
752
- "resource_type": "AWS::ECS::Service",
753
- "timestamp": "2018-06-18 22:17:25 UTC",
754
- "resource_status": "UPDATE_COMPLETE",
755
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
756
- },
757
- {
758
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
759
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-18T22:16:24.749Z",
760
- "stack_name": "demo-web",
761
- "logical_resource_id": "EcsService",
762
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-WB5L8HVGARBJ",
763
- "resource_type": "AWS::ECS::Service",
764
- "timestamp": "2018-06-18 22:16:24 UTC",
765
- "resource_status": "UPDATE_IN_PROGRESS",
766
- "resource_status_reason": "Resource creation Initiated",
767
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
768
- },
769
- {
770
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
771
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-18T22:16:24.284Z",
772
- "stack_name": "demo-web",
773
- "logical_resource_id": "EcsService",
774
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-11MPMP7GAS3WL",
775
- "resource_type": "AWS::ECS::Service",
776
- "timestamp": "2018-06-18 22:16:24 UTC",
777
- "resource_status": "UPDATE_IN_PROGRESS",
778
- "resource_status_reason": "Requested update requires the creation of a new physical resource; hence creating one.",
779
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
780
- },
781
- {
782
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
783
- "event_id": "Listener-CREATE_COMPLETE-2018-06-18T22:16:23.226Z",
784
- "stack_name": "demo-web",
785
- "logical_resource_id": "Listener",
786
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158/8a3e327ae285dedb",
787
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
788
- "timestamp": "2018-06-18 22:16:23 UTC",
789
- "resource_status": "CREATE_COMPLETE",
790
- "resource_properties": "{\"LoadBalancerArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158\",\"DefaultActions\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"Type\":\"forward\"}],\"Port\":\"80\",\"Protocol\":\"HTTP\"}"
791
- },
792
- {
793
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
794
- "event_id": "Listener-CREATE_IN_PROGRESS-2018-06-18T22:16:22.509Z",
795
- "stack_name": "demo-web",
796
- "logical_resource_id": "Listener",
797
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:listener/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158/8a3e327ae285dedb",
798
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
799
- "timestamp": "2018-06-18 22:16:22 UTC",
800
- "resource_status": "CREATE_IN_PROGRESS",
801
- "resource_status_reason": "Resource creation Initiated",
802
- "resource_properties": "{\"LoadBalancerArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158\",\"DefaultActions\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"Type\":\"forward\"}],\"Port\":\"80\",\"Protocol\":\"HTTP\"}"
803
- },
804
- {
805
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
806
- "event_id": "Listener-CREATE_IN_PROGRESS-2018-06-18T22:16:22.031Z",
807
- "stack_name": "demo-web",
808
- "logical_resource_id": "Listener",
809
- "physical_resource_id": "",
810
- "resource_type": "AWS::ElasticLoadBalancingV2::Listener",
811
- "timestamp": "2018-06-18 22:16:22 UTC",
812
- "resource_status": "CREATE_IN_PROGRESS",
813
- "resource_properties": "{\"LoadBalancerArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158\",\"DefaultActions\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209\",\"Type\":\"forward\"}],\"Port\":\"80\",\"Protocol\":\"HTTP\"}"
814
- },
815
- {
816
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
817
- "event_id": "TargetGroup-CREATE_COMPLETE-2018-06-18T22:16:19.929Z",
818
- "stack_name": "demo-web",
819
- "logical_resource_id": "TargetGroup",
820
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209",
821
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
822
- "timestamp": "2018-06-18 22:16:19 UTC",
823
- "resource_status": "CREATE_COMPLETE",
824
- "resource_properties": "{\"HealthCheckIntervalSeconds\":\"60\",\"VpcId\":\"vpc-d79753ae\",\"HealthCheckPath\":\"/\",\"Port\":\"80\",\"TargetType\":\"ip\",\"UnhealthyThresholdCount\":\"10\",\"Protocol\":\"HTTP\"}"
825
- },
826
- {
827
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
828
- "event_id": "TargetGroup-CREATE_IN_PROGRESS-2018-06-18T22:16:19.241Z",
829
- "stack_name": "demo-web",
830
- "logical_resource_id": "TargetGroup",
831
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/hi-we-Targe-1J483H7T57EOA/c8dd41f65138d209",
832
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
833
- "timestamp": "2018-06-18 22:16:19 UTC",
834
- "resource_status": "CREATE_IN_PROGRESS",
835
- "resource_status_reason": "Resource creation Initiated",
836
- "resource_properties": "{\"HealthCheckIntervalSeconds\":\"60\",\"VpcId\":\"vpc-d79753ae\",\"HealthCheckPath\":\"/\",\"Port\":\"80\",\"TargetType\":\"ip\",\"UnhealthyThresholdCount\":\"10\",\"Protocol\":\"HTTP\"}"
837
- },
838
- {
839
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
840
- "event_id": "TargetGroup-CREATE_IN_PROGRESS-2018-06-18T22:16:18.730Z",
841
- "stack_name": "demo-web",
842
- "logical_resource_id": "TargetGroup",
843
- "physical_resource_id": "",
844
- "resource_type": "AWS::ElasticLoadBalancingV2::TargetGroup",
845
- "timestamp": "2018-06-18 22:16:18 UTC",
846
- "resource_status": "CREATE_IN_PROGRESS",
847
- "resource_properties": "{\"HealthCheckIntervalSeconds\":\"60\",\"VpcId\":\"vpc-d79753ae\",\"HealthCheckPath\":\"/\",\"Port\":\"80\",\"TargetType\":\"ip\",\"UnhealthyThresholdCount\":\"10\",\"Protocol\":\"HTTP\"}"
848
- },
849
- {
850
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
851
- "event_id": "Elb-CREATE_COMPLETE-2018-06-18T22:16:16.484Z",
852
- "stack_name": "demo-web",
853
- "logical_resource_id": "Elb",
854
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158",
855
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
856
- "timestamp": "2018-06-18 22:16:16 UTC",
857
- "resource_status": "CREATE_COMPLETE",
858
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-f5c26bbe\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-55\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
859
- },
860
- {
861
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
862
- "event_id": "EcsSecurityGroupRule-CREATE_COMPLETE-2018-06-18T22:14:15.538Z",
863
- "stack_name": "demo-web",
864
- "logical_resource_id": "EcsSecurityGroupRule",
865
- "physical_resource_id": "EcsSecurityGroupRule",
866
- "resource_type": "AWS::EC2::SecurityGroupIngress",
867
- "timestamp": "2018-06-18 22:14:15 UTC",
868
- "resource_status": "CREATE_COMPLETE",
869
- "resource_properties": "{\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\",\"SourceSecurityGroupId\":\"sg-f5c26bbe\",\"GroupId\":\"sg-dc379997\"}"
870
- },
871
- {
872
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
873
- "event_id": "EcsSecurityGroupRule-CREATE_IN_PROGRESS-2018-06-18T22:14:14.500Z",
874
- "stack_name": "demo-web",
875
- "logical_resource_id": "EcsSecurityGroupRule",
876
- "physical_resource_id": "EcsSecurityGroupRule",
877
- "resource_type": "AWS::EC2::SecurityGroupIngress",
878
- "timestamp": "2018-06-18 22:14:14 UTC",
879
- "resource_status": "CREATE_IN_PROGRESS",
880
- "resource_status_reason": "Resource creation Initiated",
881
- "resource_properties": "{\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\",\"SourceSecurityGroupId\":\"sg-f5c26bbe\",\"GroupId\":\"sg-dc379997\"}"
882
- },
883
- {
884
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
885
- "event_id": "Elb-CREATE_IN_PROGRESS-2018-06-18T22:14:14.354Z",
886
- "stack_name": "demo-web",
887
- "logical_resource_id": "Elb",
888
- "physical_resource_id": "arn:aws:elasticloadbalancing:us-east-1:111111111111:loadbalancer/app/demo-web-Elb-14V4X6KBAVEPP/24302e751e5ac158",
889
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
890
- "timestamp": "2018-06-18 22:14:14 UTC",
891
- "resource_status": "CREATE_IN_PROGRESS",
892
- "resource_status_reason": "Resource creation Initiated",
893
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-f5c26bbe\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-55\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
894
- },
895
- {
896
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
897
- "event_id": "EcsSecurityGroupRule-CREATE_IN_PROGRESS-2018-06-18T22:14:13.797Z",
898
- "stack_name": "demo-web",
899
- "logical_resource_id": "EcsSecurityGroupRule",
900
- "physical_resource_id": "",
901
- "resource_type": "AWS::EC2::SecurityGroupIngress",
902
- "timestamp": "2018-06-18 22:14:13 UTC",
903
- "resource_status": "CREATE_IN_PROGRESS",
904
- "resource_properties": "{\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\",\"SourceSecurityGroupId\":\"sg-f5c26bbe\",\"GroupId\":\"sg-dc379997\"}"
905
- },
906
- {
907
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
908
- "event_id": "Elb-CREATE_IN_PROGRESS-2018-06-18T22:14:13.478Z",
909
- "stack_name": "demo-web",
910
- "logical_resource_id": "Elb",
911
- "physical_resource_id": "",
912
- "resource_type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
913
- "timestamp": "2018-06-18 22:14:13 UTC",
914
- "resource_status": "CREATE_IN_PROGRESS",
915
- "resource_properties": "{\"SecurityGroups\":[\"sg-32a30579\",\"sg-f5c26bbe\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"Scheme\":\"internet-facing\",\"Tags\":[{\"Value\":\"demo-web-55\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
916
- },
917
- {
918
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
919
- "event_id": "ElbSecurityGroup-CREATE_COMPLETE-2018-06-18T22:14:11.250Z",
920
- "stack_name": "demo-web",
921
- "logical_resource_id": "ElbSecurityGroup",
922
- "physical_resource_id": "sg-f5c26bbe",
923
- "resource_type": "AWS::EC2::SecurityGroup",
924
- "timestamp": "2018-06-18 22:14:11 UTC",
925
- "resource_status": "CREATE_COMPLETE",
926
- "resource_properties": "{\"GroupDescription\":\"Allow http to client host\",\"VpcId\":\"vpc-d79753ae\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}],\"SecurityGroupEgress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\"}],\"Tags\":[{\"Value\":\"demo-web-elb\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
927
- },
928
- {
929
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
930
- "event_id": "ElbSecurityGroup-CREATE_IN_PROGRESS-2018-06-18T22:14:08.801Z",
931
- "stack_name": "demo-web",
932
- "logical_resource_id": "ElbSecurityGroup",
933
- "physical_resource_id": "sg-f5c26bbe",
934
- "resource_type": "AWS::EC2::SecurityGroup",
935
- "timestamp": "2018-06-18 22:14:08 UTC",
936
- "resource_status": "CREATE_IN_PROGRESS",
937
- "resource_status_reason": "Resource creation Initiated",
938
- "resource_properties": "{\"GroupDescription\":\"Allow http to client host\",\"VpcId\":\"vpc-d79753ae\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}],\"SecurityGroupEgress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\"}],\"Tags\":[{\"Value\":\"demo-web-elb\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
939
- },
940
- {
941
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
942
- "event_id": "ElbSecurityGroup-CREATE_IN_PROGRESS-2018-06-18T22:14:08.020Z",
943
- "stack_name": "demo-web",
944
- "logical_resource_id": "ElbSecurityGroup",
945
- "physical_resource_id": "",
946
- "resource_type": "AWS::EC2::SecurityGroup",
947
- "timestamp": "2018-06-18 22:14:08 UTC",
948
- "resource_status": "CREATE_IN_PROGRESS",
949
- "resource_properties": "{\"GroupDescription\":\"Allow http to client host\",\"VpcId\":\"vpc-d79753ae\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}],\"SecurityGroupEgress\":[{\"CidrIp\":\"0.0.0.0/0\",\"FromPort\":\"0\",\"ToPort\":\"65535\",\"IpProtocol\":\"tcp\"}],\"Tags\":[{\"Value\":\"demo-web-elb\",\"Key\":\"Name\"},{\"Value\":\"demo-web\",\"Key\":\"ufo\"}]}"
950
- },
951
- {
952
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
953
- "event_id": "e8841220-7344-11e8-a5aa-50fae98974fd",
954
- "stack_name": "demo-web",
955
- "logical_resource_id": "demo-web",
956
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
957
- "resource_type": "AWS::CloudFormation::Stack",
958
- "timestamp": "2018-06-18 22:14:03 UTC",
959
- "resource_status": "UPDATE_IN_PROGRESS",
960
- "resource_status_reason": "User Initiated"
961
- },
962
- {
963
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
964
- "event_id": "bb9b7290-7343-11e8-9fbc-500c28b23699",
965
- "stack_name": "demo-web",
966
- "logical_resource_id": "demo-web",
967
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
968
- "resource_type": "AWS::CloudFormation::Stack",
969
- "timestamp": "2018-06-18 22:05:38 UTC",
970
- "resource_status": "UPDATE_COMPLETE"
971
- },
972
- {
973
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
974
- "event_id": "EcsService-0e2e37db-5c33-4cf9-af7c-9d0151de2d68",
975
- "stack_name": "demo-web",
976
- "logical_resource_id": "EcsService",
977
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1RGUXOEJCH6RH",
978
- "resource_type": "AWS::ECS::Service",
979
- "timestamp": "2018-06-18 22:05:37 UTC",
980
- "resource_status": "DELETE_COMPLETE"
981
- },
982
- {
983
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
984
- "event_id": "EcsService-501fd5b6-8366-4d83-92eb-7108ce8224f3",
985
- "stack_name": "demo-web",
986
- "logical_resource_id": "EcsService",
987
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1RGUXOEJCH6RH",
988
- "resource_type": "AWS::ECS::Service",
989
- "timestamp": "2018-06-18 22:05:06 UTC",
990
- "resource_status": "DELETE_IN_PROGRESS"
991
- },
992
- {
993
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
994
- "event_id": "a7630e50-7343-11e8-bc49-500c28903236",
995
- "stack_name": "demo-web",
996
- "logical_resource_id": "demo-web",
997
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
998
- "resource_type": "AWS::CloudFormation::Stack",
999
- "timestamp": "2018-06-18 22:05:04 UTC",
1000
- "resource_status": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"
1001
- },
1002
- {
1003
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1004
- "event_id": "EcsService-UPDATE_COMPLETE-2018-06-18T22:05:00.211Z",
1005
- "stack_name": "demo-web",
1006
- "logical_resource_id": "EcsService",
1007
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-11MPMP7GAS3WL",
1008
- "resource_type": "AWS::ECS::Service",
1009
- "timestamp": "2018-06-18 22:05:00 UTC",
1010
- "resource_status": "UPDATE_COMPLETE",
1011
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/my-elb/0158af4eb596cfd2\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
1012
- },
1013
- {
1014
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1015
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-18T22:02:59.026Z",
1016
- "stack_name": "demo-web",
1017
- "logical_resource_id": "EcsService",
1018
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-11MPMP7GAS3WL",
1019
- "resource_type": "AWS::ECS::Service",
1020
- "timestamp": "2018-06-18 22:02:59 UTC",
1021
- "resource_status": "UPDATE_IN_PROGRESS",
1022
- "resource_status_reason": "Resource creation Initiated",
1023
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/my-elb/0158af4eb596cfd2\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
1024
- },
1025
- {
1026
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1027
- "event_id": "EcsService-UPDATE_IN_PROGRESS-2018-06-18T22:02:58.432Z",
1028
- "stack_name": "demo-web",
1029
- "logical_resource_id": "EcsService",
1030
- "physical_resource_id": "arn:aws:ecs:us-east-1:111111111111:service/demo-web-EcsService-1RGUXOEJCH6RH",
1031
- "resource_type": "AWS::ECS::Service",
1032
- "timestamp": "2018-06-18 22:02:58 UTC",
1033
- "resource_status": "UPDATE_IN_PROGRESS",
1034
- "resource_status_reason": "Requested update requires the creation of a new physical resource; hence creating one.",
1035
- "resource_properties": "{\"TaskDefinition\":\"arn:aws:ecs:us-east-1:111111111111:task-definition/demo-web:191\",\"Cluster\":\"development\",\"LoadBalancers\":[{\"TargetGroupArn\":\"arn:aws:elasticloadbalancing:us-east-1:111111111111:targetgroup/my-elb/0158af4eb596cfd2\",\"ContainerName\":\"web\",\"ContainerPort\":\"4567\"}],\"NetworkConfiguration\":{\"AwsvpcConfiguration\":{\"SecurityGroups\":[\"sg-dc379997\"],\"Subnets\":[\"subnet-29e75925\",\"subnet-3fb1875a\",\"subnet-4ac50f66\",\"subnet-622eee38\",\"subnet-83cf49cb\",\"subnet-f45d02c8\"],\"AssignPublicIp\":\"ENABLED\"}},\"DesiredCount\":\"1\",\"LaunchType\":\"FARGATE\"}"
1036
- },
1037
- {
1038
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1039
- "event_id": "586e5930-7343-11e8-afba-50d501eb4c17",
1040
- "stack_name": "demo-web",
1041
- "logical_resource_id": "demo-web",
1042
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1043
- "resource_type": "AWS::CloudFormation::Stack",
1044
- "timestamp": "2018-06-18 22:02:51 UTC",
1045
- "resource_status": "UPDATE_IN_PROGRESS",
1046
- "resource_status_reason": "User Initiated"
1047
- },
1048
- {
1049
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1050
- "event_id": "41b7d590-7343-11e8-b84a-5044763dbb7b",
1051
- "stack_name": "demo-web",
1052
- "logical_resource_id": "demo-web",
1053
- "physical_resource_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1054
- "resource_type": "AWS::CloudFormation::Stack",
1055
- "timestamp": "2018-06-18 22:02:13 UTC",
1056
- "resource_status": "UPDATE_COMPLETE"
1057
- },
1058
- {
1059
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1060
- "event_id": "ElbSecurityGroup-ef82a7f7-c221-401d-86b6-c5d521df68a1",
1061
- "stack_name": "demo-web",
1062
- "logical_resource_id": "ElbSecurityGroup",
1063
- "physical_resource_id": "sg-5310be18",
1064
- "resource_type": "AWS::EC2::SecurityGroup",
1065
- "timestamp": "2018-06-18 22:02:13 UTC",
1066
- "resource_status": "DELETE_COMPLETE"
1067
- },
1068
- {
1069
- "stack_id": "arn:aws:cloudformation:us-east-1:111111111111:stack/demo-web/2813d320-733c-11e8-8746-503f23fb55fe",
1070
- "event_id": "ElbSecurityGroup-16feab17-9bc6-4755-8c6b-1855140fd0b0",
1071
- "stack_name": "demo-web",
1072
- "logical_resource_id": "ElbSecurityGroup",
1073
- "physical_resource_id": "sg-5310be18",
1074
- "resource_type": "AWS::EC2::SecurityGroup",
1075
- "timestamp": "2018-06-18 22:01:37 UTC",
1076
- "resource_status": "DELETE_IN_PROGRESS"
1077
- }
1078
- ],
1079
- "next_token": "l+T1eeFIE01sHtDEjTgRi3YqGpWoo8Xcd8/bdB+D4mUTq6pSt2rRUGj+b406+o6XcH8GTcekaz9QRHzjfqqLnssgJOHm6JkQ0L/j66RSgA4luIHEYJDtQje3zfPHG6kfxukN3yC03BtKrKXW7CJGsKJ9Ar1ofwBfoopVi7tjH9SCimSHavcRKbovDH9tT5eOhg0YTbh2aeHb0OqQ1fjAF27yhp4UNjY/VHr8/w50cxZ9lWtYfB+D7Bh4aNbLxan2RKo1XqhzF5jXQFZ/8rWtaFNCSTQPlMiqFbQna9navxjNGjKGZGfRXEvl/mwpWobQlrYoD53EwwuN76/Op0H5HMNWFRSDCBozCqnf+VUVw/hKMV76pyPoD9Kuu2Ec2Rge65octIPmDyYD+An0FUH5x/YaX0sUyoFuNdxUNZXWDb2vaUm++/d9HP0di3nECUiwUB7ofrWRlcAo4xJHf3Lm5MGsTVBGIZCuxQQMiROZyX46a9FgjaOvEQ60WZP/5f3/88ImOcK/pEPp6a8KWRx14ur2Cjhseagw1v5gP/2yxd88xWqKZdUOlKp3I1XdTVB4oMAzLgZuhUnp5btKtSrMyMI3wpTLE+N94ylI5U0degan+yqnq4Jkx/YGAgkiRs/6SvbyhA5BU5tmM+c1SVS9FI0zaY6UE1Z+jl8EhPfNwohO52KJLSvIkqqyBme0AeSlFam/60U6mYh0uhzonAaO9QhFQU9xLwvuQ1GFv2GZPzipVsHLvIHMW28EdTbcYZNp|7su6Swe1kyx+zWOE+p7Q2g==|1|820d7989c4bb44f73eef80ac3f4c59f1a0b768a4fafa61d43fe9af3db87f13d4"
1080
- }