Replies: 3 comments 2 replies
-
|
Thanks for posting this question @alex5207, There's some things about your use case I'd like to understand more. I'm curious what exactly is causing a "very crowded and non-meaningful commit history", could you go into this a bit? When would you want to run |
Beta Was this translation helpful? Give feedback.
-
|
@alex5207 Im very late to this thread, but another idea that we employ is, on a feature branch, make your meaningless commits to that feature branch and manually release the change on codepipeline by specifying the commit in the feature branch. Then before merging to dev squash all commits. One caveat that can get frustrating is if you have self mutation on and the pipeline needs to self mutate, it will pull the latest commit from the default branch for that pipeline (dev/staging/prod) and you’ll end up unexpectedly deploying the “wrong” stack. |
Beta Was this translation helpful? Give feedback.
-
|
Also linking this discussion as CDK pipelines, while powerful, can be painfully slow |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
We've adopted the CDK pipelines construct library for maintaining a ci/cd of our cdk app with our git repo as a source. It works quite well and we're fairly happy with it. But since this pipeline's construct wraps the stack that contains our application we can no longer use
cdk deploy. This effectively leaves us in a place where (as far as I can see) can only deploy to our staging environment by pushing to the repo which starts the pipeline. This presents us with two challenges:(1) A very crowded and non-meaningful commit history
(2) Long feedback cycles when developing. Our pipeline takes 10-15 min including builds, unit and integ tests.
For previous projects I've used
aws samwhich had great support for fast iterations usingsam syncwhich I found really effective.What we've tried to solve it:
We've tried to let developers use a script to modify our
app.pyto replace the Pipeline construct with the the Application stack which then can becdk deploy'ed. But challenges us since some uniquely named resources already exists on the account from the wrapped stack. We're using best practices to let CDK define most resource names (dynamodb tables, lambda etc.) but still have resources such as SES email identities etc. which we have to name explicitly.What is an effective way of managing these challenges while getting the benefits of cdk pipelines?
Thanks a lot.
Alex
Beta Was this translation helpful? Give feedback.
All reactions