ufo 6.3.5 → 6.3.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c7412fed5f36c54bd78f76bfb6debb841d3f867ea25ef4625a31c9e205a1e955
4
- data.tar.gz: a0d91c95a050d2fbce2731c10387651fb2909c3dc65a4e2af60a6cf780d3e1b7
3
+ metadata.gz: 1629eaa759c7bae3106f8abd862e0be399ede5e53723ee6e97570cc047f93069
4
+ data.tar.gz: e214fa1a5e92d8d8989a91a2bbe5490d40e33d65870563938153c0432c1d7aa1
5
5
  SHA512:
6
- metadata.gz: 6ee413ef0571f90417c37327d78fbb86c8fab10584746dfcbec86d292ce3f8dad8d31d53d3a939db6b9a2f91639d50ed4f876262d84c40c453ad22e610a7b46f
7
- data.tar.gz: c8fe10ab749b98820faa9105584175b1c97cfcd7ecee92a1bf75e7d1623ed158c86b2ac32a834a8f4b617e252dca6c28682f8a3e4664f8dac03785117ab26bb8
6
+ metadata.gz: e574a93ce4a006be8fd020b3f3efd69bb58eb3290d1215ea34a73b6ac429b997d142ab7474c9a0f1f073ba80c94f73782a1498ad4b15a8116d5a2a27be506e6a
7
+ data.tar.gz: 51864fd98e59b9bdaee578dc877e6b3e6c258ca5c0c379c35ee9f0222f07cc7e7f46e0f49c2809272ac4f9839da5e4c50e708ac57f24c9f72772b4ecb18e7992
data/CHANGELOG.md CHANGED
@@ -3,6 +3,15 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  This project *tries* to adhere to [Semantic Versioning](http://semver.org/), even before v1.0.
5
5
 
6
+ ## [6.3.8] - 2022-05-02
7
+ - [#174](https://github.com/tongueroo/ufo/pull/174) fix update rollback failed user friendly error message
8
+
9
+ ## [6.3.7] - 2022-04-29
10
+ - [#173](https://github.com/tongueroo/ufo/pull/173) fix when ssl certs not used
11
+
12
+ ## [6.3.6] - 2022-04-29
13
+ - [#172](https://github.com/tongueroo/ufo/pull/172) support multiple ssl certs
14
+
6
15
  ## [6.3.5] - 2022-04-28
7
16
  - [#171](https://github.com/tongueroo/ufo/pull/171) default unhealthy_threshold_count = 3
8
17
 
@@ -0,0 +1,32 @@
1
+ class Ufo::Cfn::Stack::Builder::Resources
2
+ class ListenerCertificate < ListenerSsl
3
+ def build
4
+ return unless certificates && certificates.size >= 1 # already removed firt cert
5
+ {
6
+ Type: "AWS::ElasticLoadBalancingV2::ListenerCertificate",
7
+ Condition: "CreateElbIsTrue",
8
+ Properties: properties,
9
+ }
10
+ end
11
+
12
+ def properties
13
+ {
14
+ Certificates: certificates,
15
+ ListenerArn: {Ref: "ListenerSsl"}
16
+ }
17
+ end
18
+
19
+ def certificates
20
+ ssl = Ufo.config.elb.ssl
21
+ if ssl.certificates
22
+ certs = normalize(ssl.certificates)
23
+ # CloudFormation has weird interface
24
+ # Only one cert allowed at the AWS::ElasticLoadBalancingV2::Listener
25
+ # https://stackoverflow.com/questions/54447250/how-to-set-multiple-certificates-for-awselasticloadbalancingv2listener
26
+ # Also note the docs say "You can specify one certificate per resource."
27
+ # But tested and multiple certs here work
28
+ certs[1..-1] # dont include the first one
29
+ end
30
+ end
31
+ end
32
+ end
@@ -7,7 +7,10 @@ class Ufo::Cfn::Stack::Builder::Resources
7
7
 
8
8
  def properties
9
9
  props = super
10
- props[:Certificates] = certificates
10
+ # CloudFormation has weird interface
11
+ # Only one cert allowed at the AWS::ElasticLoadBalancingV2::Listener
12
+ # https://stackoverflow.com/questions/54447250/how-to-set-multiple-certificates-for-awselasticloadbalancingv2listener
13
+ props[:Certificates] = [certificates.first] # first one only
11
14
  props
12
15
  end
13
16
 
@@ -10,6 +10,7 @@ class Ufo::Cfn::Stack::Builder
10
10
  ElbSecurityGroup: SecurityGroup::Elb.build(@options),
11
11
  ExecutionRole: IamRoles::ExecutionRole.build(@options),
12
12
  Listener: Listener.build(@options),
13
+ ListenerCertificate: ListenerCertificate.build(@options),
13
14
  ListenerSsl: ListenerSsl.build(@options),
14
15
  TargetGroup: TargetGroup.build(@options),
15
16
  TaskDefinition: TaskDefinition.build(@options),
data/lib/ufo/cfn/stack.rb CHANGED
@@ -110,7 +110,7 @@ module Ufo::Cfn
110
110
  when /state and can not be updated/
111
111
  logger.info "The #{@stack_name} stack is in a state that cannot be updated. Deleted the stack and try again."
112
112
  logger.info "ERROR: #{e.message}"
113
- if message.include?('UPDATE_ROLLBACK_FAILED')
113
+ if e.message.include?('UPDATE_ROLLBACK_FAILED')
114
114
  logger.info "You might be able to do a 'Continue Update Rollback' and skip some resources to get the stack back into a good state."
115
115
  end
116
116
  url = "https://console.aws.amazon.com/cloudformation/home?region=#{region}"
data/lib/ufo/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Ufo
2
- VERSION = "6.3.5"
2
+ VERSION = "6.3.8"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ufo
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.3.5
4
+ version: 6.3.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tung Nguyen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-04-28 00:00:00.000000000 Z
11
+ date: 2022-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-logs
@@ -516,6 +516,7 @@ files:
516
516
  - lib/ufo/cfn/stack/builder/resources/iam_roles/execution_role.rb
517
517
  - lib/ufo/cfn/stack/builder/resources/iam_roles/task_role.rb
518
518
  - lib/ufo/cfn/stack/builder/resources/listener.rb
519
+ - lib/ufo/cfn/stack/builder/resources/listener_certificate.rb
519
520
  - lib/ufo/cfn/stack/builder/resources/listener_ssl.rb
520
521
  - lib/ufo/cfn/stack/builder/resources/scaling/base.rb
521
522
  - lib/ufo/cfn/stack/builder/resources/scaling/policy.rb