in internal/pkg/deploy/cloudformation/changeset.go [80:103]
func (set *changeSet) execute() error {
if err := set.describe(); err != nil {
return err
}
if set.executionStatus != cloudformation.ExecutionStatusAvailable {
// Ignore execute request if the change set does not contain any modifications.
if set.statusReason == noChangesReason {
return nil
}
if set.statusReason == noUpdatesReason {
return nil
}
return &ErrNotExecutableChangeSet{
set: set,
}
}
if _, err := set.c.ExecuteChangeSet(&cloudformation.ExecuteChangeSetInput{
ChangeSetName: aws.String(set.name),
StackName: aws.String(set.stackID),
}); err != nil {
return fmt.Errorf("failed to execute changeSet %s: %w", set, err)
}
return nil
}