Stacker: stacker 1.7.0
Boto: boto3 1.9.187
Botocore: botocore 1.12.187
I'm using the ECS base for generating Fargate tasks. (https://github.com/cloudtools/stacker_blueprints/blob/master/stacker_blueprints/ecs.py)
I use ${ssmstore _____} throughout my stacks, but always in the Environment: blocks. Most frequently I store the path of the SSM parameter in an environment file, and call it like ${ssmstore ${example1_path}}.
I'm trying to use SSMStore in the Image: block of ECS, but get an error.
Image: ${ecr_url}/company/example.api:${ssmstore eu-west-2@/prod/api/example-api/latesttag} - (Where latesttag in SSM = "ref-bh43r78gf9fge9hd")
[2019-07-10T09:38:36] Value for variable Image must be of type <type 'str'>. Actual type: <type 'unicode'>.
Traceback (most recent call last):
File "/usr/local/lib/python2.7/site-packages/stacker-1.7.0-py2.7.egg/stacker/plan.py", line 93, in _run_once
status = self.fn(self.stack, status=self.status)
File "/usr/local/lib/python2.7/site-packages/stacker-1.7.0-py2.7.egg/stacker/actions/build.py", line 326, in _launch_stack
stack.resolve(self.context, self.provider)
File "/usr/local/lib/python2.7/site-packages/stacker-1.7.0-py2.7.egg/stacker/stack.py", line 194, in resolve
self.blueprint.resolve_variables(self.variables)
File "/usr/local/lib/python2.7/site-packages/stacker-1.7.0-py2.7.egg/stacker/blueprints/base.py", line 452, in resolve_variables
self.name
File "/usr/local/lib/python2.7/site-packages/stacker-1.7.0-py2.7.egg/stacker/blueprints/base.py", line 226, in resolve_variable
value = validate_variable_type(var_name, var_type, value)
File "/usr/local/lib/python2.7/site-packages/stacker-1.7.0-py2.7.egg/stacker/blueprints/base.py", line 147, in validate_variable_type
"type: %s." % (var_name, var_type, type(value))
ValueError: Value for variable Image must be of type <type 'str'>. Actual type: <type 'unicode'>.
[2019-07-10T09:38:36] fargate-example-api: failed (Value for variable Image must be of type <type 'str'>. Actual type: <type 'unicode'>.)
I've tried manually typing the variable in AWS console, and through awscli. It seems to just be ssmstore inside the Images block, as there is no issues in the Environment blocks.
Stacker:
stacker 1.7.0Boto:
boto3 1.9.187Botocore:
botocore 1.12.187I'm using the ECS base for generating Fargate tasks. (https://github.com/cloudtools/stacker_blueprints/blob/master/stacker_blueprints/ecs.py)
I use ${ssmstore _____} throughout my stacks, but always in the Environment: blocks. Most frequently I store the path of the SSM parameter in an environment file, and call it like ${ssmstore ${example1_path}}.
I'm trying to use SSMStore in the Image: block of ECS, but get an error.
Image: ${ecr_url}/company/example.api:${ssmstore eu-west-2@/prod/api/example-api/latesttag}- (Where latesttag in SSM = "ref-bh43r78gf9fge9hd")I've tried manually typing the variable in AWS console, and through awscli. It seems to just be ssmstore inside the Images block, as there is no issues in the Environment blocks.