-
Notifications
You must be signed in to change notification settings - Fork 313
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Resolve #915] Support ChangeSetType CREATE #1469
[Resolve #915] Support ChangeSetType CREATE #1469
Conversation
This adds logic supporting the case of creating change sets for a stack that does not already exist, i.e. specifying ChangeSetType of CREATE. https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cloudformation/client/create_change_set.html
This reverts commit 906005d.
for more information, see https://pre-commit.ci
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Integration tests are failing for this PR, https://github.com/Sceptre/sceptre/actions/runs/9507089977/job/26205762444
@zaro0508 integration test fixed: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally LGTM, just need a little documentation.
This adds logic supporting the case of creating change sets for a stack that does not already exist. That is, it adds support for change sets of ChangeSetType CREATE. https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cloudformation/client/create_change_set.html
To add some context, there is no obvious reason why Sceptre does not already support change sets of type CREATE since the logic for detecting stack status already exists for the
launch
command. The project's initial commit already has this inconsistency and essentially the same code. It is probably an oversight.The changes have already been tested by Rohit S in this Slack thread
https://og-aws.slack.com/archives/C01JNN8RGBB/p1716869822031499
In addition, it is necessary to add logic to handle the
REVIEW_IN_PROGRESS
state, both for the case of thelaunch
andcreate
action.https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-describing-stacks.html
Creation of a change set on a non-existent stack actually creates a stack and places it into the
REVIEW_IN_PROGRESS
state. If Sceptre is then tolaunch
this stack, it is necessary to firstly delete the stack, just as it already does in the cases of statesCREATE_FAILED
andROLLBACK_COMPLETE
.PR Checklist
[Resolve #issue-number]
.poetry run tox
) are passing.poetry run pre-commit run --all-files
).and description in grammatically correct, complete sentences.
Approver/Reviewer Checklist
Other Information
Guide to writing a good commit