Fix issue with hardcoded s3 template path
Fix this issue by allowing the S3 bucket name to be configured and
injected to the cloudformation templates.
Bug: Issue 13096
Change-Id: I97ee3ad1951ef6181bd6bbc2405f49c75192bc22
diff --git a/dual-master/Makefile b/dual-master/Makefile
index 15d2b86..c606639 100644
--- a/dual-master/Makefile
+++ b/dual-master/Makefile
@@ -38,6 +38,7 @@
--parameters \
ParameterKey=DesiredCapacity,ParameterValue=$(CLUSTER_DESIRED_CAPACITY) \
ParameterKey=ECSKeyName,ParameterValue=$(CLUSTER_KEYS) \
+ ParameterKey=TemplateBucketName,ParameterValue=$(TEMPLATE_BUCKET_NAME) \
ParameterKey=InternetGatewayIdProp,ParameterValue=$(INTERNET_GATEWAY_ID) \
ParameterKey=VPCIdProp,ParameterValue=$(VPC_ID) \
ParameterKey=SubnetIdProp,ParameterValue=$(SUBNET_ID) \
diff --git a/dual-master/cf-cluster.yml b/dual-master/cf-cluster.yml
index 6eec872..07b4cc2 100644
--- a/dual-master/cf-cluster.yml
+++ b/dual-master/cf-cluster.yml
@@ -3,6 +3,9 @@
hosts using Elastic Container Service. This stack runs containers on
hosts that are in a public VPC subnet.
Parameters:
+ TemplateBucketName:
+ Description: S3 bucket containing cloudformation templates
+ Type: String
DesiredCapacity:
Type: Number
Default: '1'
@@ -260,7 +263,7 @@
ECSTaskNetworkStack:
Type: AWS::CloudFormation::Stack
Properties:
- TemplateURL: https://aws-gerrit-cf-templates.s3.amazonaws.com/cf-gerrit-network-stack.yml
+ TemplateURL: !Join [ '', ['https://', !Ref TemplateBucketName, '.s3.amazonaws.com/cf-gerrit-network-stack.yml'] ]
TimeoutInMinutes: '25'
Parameters:
InternetGatewayIdProp: !Ref 'InternetGatewayIdProp'
diff --git a/master-slave/Makefile b/master-slave/Makefile
index b9a382f..31f0d29 100644
--- a/master-slave/Makefile
+++ b/master-slave/Makefile
@@ -35,6 +35,7 @@
--parameters \
ParameterKey=DesiredCapacity,ParameterValue=$(CLUSTER_DESIRED_CAPACITY) \
ParameterKey=ECSKeyName,ParameterValue=$(CLUSTER_KEYS) \
+ ParameterKey=TemplateBucketName,ParameterValue=$(TEMPLATE_BUCKET_NAME) \
ParameterKey=InternetGatewayIdProp,ParameterValue=$(INTERNET_GATEWAY_ID) \
ParameterKey=VPCIdProp,ParameterValue=$(VPC_ID) \
ParameterKey=SubnetIdProp,ParameterValue=$(SUBNET_ID) \
diff --git a/master-slave/cf-cluster.yml b/master-slave/cf-cluster.yml
index c3c64f0..c7a4a0e 100644
--- a/master-slave/cf-cluster.yml
+++ b/master-slave/cf-cluster.yml
@@ -3,6 +3,9 @@
hosts using Elastic Container Service. This stack runs containers on
hosts that are in a public VPC subnet.
Parameters:
+ TemplateBucketName:
+ Description: S3 bucket containing cloudformation templates
+ Type: String
DesiredCapacity:
Type: Number
Default: '1'
@@ -204,7 +207,7 @@
ECSTaskNetworkStack:
Type: AWS::CloudFormation::Stack
Properties:
- TemplateURL: https://aws-gerrit-cf-templates.s3.amazonaws.com/cf-gerrit-network-stack.yml
+ TemplateURL: !Join [ '', ['https://', !Ref TemplateBucketName, '.s3.amazonaws.com/cf-gerrit-network-stack.yml'] ]
TimeoutInMinutes: '25'
Parameters:
InternetGatewayIdProp: !Ref 'InternetGatewayIdProp'
diff --git a/single-master/Makefile b/single-master/Makefile
index 96d133c..b2cd8ae 100644
--- a/single-master/Makefile
+++ b/single-master/Makefile
@@ -31,6 +31,7 @@
--region $(AWS_REGION) \
--parameters \
ParameterKey=ECSKeyName,ParameterValue=$(CLUSTER_KEYS) \
+ ParameterKey=TemplateBucketName,ParameterValue=$(TEMPLATE_BUCKET_NAME) \
ParameterKey=InternetGatewayIdProp,ParameterValue=$(INTERNET_GATEWAY_ID) \
ParameterKey=VPCIdProp,ParameterValue=$(VPC_ID) \
ParameterKey=SubnetIdProp,ParameterValue=$(SUBNET_ID) \
diff --git a/single-master/cf-cluster.yml b/single-master/cf-cluster.yml
index 239ed31..a436035 100644
--- a/single-master/cf-cluster.yml
+++ b/single-master/cf-cluster.yml
@@ -3,6 +3,9 @@
hosts using Elastic Container Service. This stack runs containers on
hosts that are in a public VPC subnet.
Parameters:
+ TemplateBucketName:
+ Description: S3 bucket containing cloudformation templates
+ Type: String
DesiredCapacity:
Type: Number
Default: '1'
@@ -180,7 +183,7 @@
ECSTaskNetworkStack:
Type: AWS::CloudFormation::Stack
Properties:
- TemplateURL: https://aws-gerrit-cf-templates.s3.amazonaws.com/cf-gerrit-network-stack.yml
+ TemplateURL: !Join [ '', ['https://', !Ref TemplateBucketName, '.s3.amazonaws.com/cf-gerrit-network-stack.yml'] ]
TimeoutInMinutes: '25'
Parameters:
InternetGatewayIdProp: !Ref 'InternetGatewayIdProp'
diff --git a/single-master/cf-service.yml b/single-master/cf-service.yml
index d08ef0e..7b1a2ae 100644
--- a/single-master/cf-service.yml
+++ b/single-master/cf-service.yml
@@ -302,7 +302,7 @@
ECSTaskExecutionRoleStack:
Type: AWS::CloudFormation::Stack
Properties:
- TemplateURL: https://aws-gerrit-cf-templates.s3.amazonaws.com/cf-gerrit-task-execution-role.yml
+ TemplateURL: !Join [ '', ['https://', !Ref TemplateBucketName, '.s3.amazonaws.com/cf-gerrit-task-execution-role.yml'] ]
TimeoutInMinutes: '5'
Outputs: