aws / aws/aws-sam-cli

sam deploy doesn't update params in the stack when modified in the CF template

Open
#4,404 17 comments 16 reactions 0 assignees View on GitHub
area/deploy blocked/more-info-needed type/feature
Dominant language
Python
Stars
6.7k
Forks
1.2k
Avg merge
1d 10h
Merged PRs (30d)
52

Description

### Description:

Making a change to a default parameter in a CF template, and/or to a parameter that is passed to a child stack described in a CF template, does not register when running sam build/deploy. Since it doesn't create/modify a resource, sam seems to think there has been no change. This makes it extremely difficult to keep a stack in sync with its CF template, which is especially problematic when you have multiple stacks (in the same region or different regions) who have to stay in sync with the latest changes (which is achieved by sharing the same platform.yaml).

### Steps to reproduce:

1. Deploy stack with parameters. Deploy.
2. Make a change to the parameter default value in platform.yaml.
3. Deploy.

### Observed result:

Check the value of the parameter in the Stack via the Console: value has not changed
(If the parameter was passed to a child stack, the child stack's value will also remain unchanged.)

### Expected result:

The param value in the Stack should be updated to match the updated value in platform.yaml. If the param was passed to a child stack defined in platform.yaml, that child stack should also be updated with the new value.

### Additional environment details (Ex: Windows, Mac, Amazon Linux etc)

1. OS: Ubuntu 22.04
6. `sam --version`: 1.45.0
7. AWS region: any

`Add --debug flag to command you are running`

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.