aws / aws-extensions-for-dotnet-cli

Extensions to the dotnet CLI to simplify the process of building and publishing .NET Core applications to AWS services
Apache License 2.0
369 stars 87 forks source link

support CloudFormation template configuration file for deploy-serverless #216

Open hauntingEcho opened 2 years ago

hauntingEcho commented 2 years ago

Describe the feature

The template configuration file is supported by several other tools in the CloudFormation ecosystem, and provides a convenient way to share config between manual deployments and CodePipeline.

Use Case

When using a CI/CD pipeline, we prefer to use one package-ci call with multiple CloudFormation deployments (via CodePipeline's CloudFormation action). However, when experimenting locally, dotnet lambda deploy-serverless would be more convenient to use. Being able to share one config file format between the two (copying & tweaking or overriding the dev config file for local experiments) would make this a lot more straightforward.

Proposed Solution

an option for dotnet lambda deploy-serverless accepting a relative path to a CloudFormation template config file, which applies that config but is overridden by the --template-parameters and --tags arguments

Other Information

A workaround which only respects Parameters (not Tags) is to use dotnet lambda package-ci followed by aws cloudformation deploy --parameter-overrides file://{config_file_path}

Acknowledgements

Targeted .NET platform

6.0.202

CLI extension version

5.1.4

Environment details (OS name and version, etc.)

Windows 10, git bash