Skip to content

Commit

Permalink
fix(pipelines): using the same source (s3, connection, or codecommit)…
Browse files Browse the repository at this point in the history
… in a pipeline causes duplicate id error (#27602)

Differentiates between sources of the same repository by appending the branch name onto the node id and input/output artifacts. This avoids the duplicate id errors for different branches of the same repository, as well as validating that each source is a unique repository & branch combination.

The only change to the CFN template is the input & output artifacts, but since these are not stateful resources, they can be modified without breaking changes. The artifacts are also updates in tandem, so the pipeline source behavior will stay the same.

This change impacts these `CodePipelineSource`s:
- `s3()` - `objectKey` appended
- `connection()`
- `codeCommit()`

Does not change `ecr()` behavior as there is no notion of folders or branches.
Does not change `github()` behavior as doing so would cause destructive changes of webhooks.

Closes #23916 and #19875.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
  • Loading branch information
scanlonp committed Oct 20, 2023
1 parent d85f9a7 commit 70acc84
Show file tree
Hide file tree
Showing 36 changed files with 42,030 additions and 106 deletions.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -805,7 +805,7 @@
},
"OutputArtifacts": [
{
"Name": "c81125c577cddc5477d274144695873cfd8965e6a0_Source"
"Name": "c81125c577cddc5477d274144695873cfd8965e6a0_key_Source"
}
],
"RoleArn": {
Expand Down Expand Up @@ -835,7 +835,7 @@
},
"InputArtifacts": [
{
"Name": "c81125c577cddc5477d274144695873cfd8965e6a0_Source"
"Name": "c81125c577cddc5477d274144695873cfd8965e6a0_key_Source"
}
],
"Name": "Synth",
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 70acc84

Please sign in to comment.