ufo 6.3.5 → 6.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/lib/ufo/cfn/stack/builder/resources/listener_certificate.rb +32 -0
- data/lib/ufo/cfn/stack/builder/resources/listener_ssl.rb +4 -1
- data/lib/ufo/cfn/stack/builder/resources.rb +1 -0
- data/lib/ufo/cfn/stack.rb +1 -1
- data/lib/ufo/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1629eaa759c7bae3106f8abd862e0be399ede5e53723ee6e97570cc047f93069
|
4
|
+
data.tar.gz: e214fa1a5e92d8d8989a91a2bbe5490d40e33d65870563938153c0432c1d7aa1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
-
|
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
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.
|
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-
|
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
|