0
votes

I am using CodePipeline to deploy my SAM (lambda etc) application referencing https://docs.aws.amazon.com/lambda/latest/dg/build-pipeline.html.

The "issue" now is my CloudFormation has some parameters inside and CodePipeline requires that I set these. I could do so via parameter overrides

enter image description here

But is this the correct way? I actually only want it set once at the start. And I'd rather have users set it in CloudFormation and CodePipeline should follow those values.

This stack is already created, why isit that CodePipeline complains I need them set?

2
The pipeline is creating the stack, so how can be "This stack is already created"?ttulka
@ttulka, the stack is already created manually in this case. The pipeline is updating itJiew Meng

2 Answers

1
votes

The input parameters are required by CloudFormation to update. Template configuration is the recommended way to specify the input parameters. You could create a template file of input parameters for the customers to use.

0
votes

Possible solution is to create custom Lambda functions which will be invoked from CodePipeline using Invoke action.

As a parameter to such Lambda you would specify CloudFormation stack name. Lambda then will load CloudFormation parameters from existing stack and create output from it (using appropriate AWS SDK). Such artifact will be used as an input to CloudFormation deployment.

Another solution is to create CodeBuild project which will do the same thing.

It's a bit complex but it seems that CodePipeline always needs full set of parameters unfortunately.