Hey guys, Just want to get some of your thoughts on what the best workflow for pulumi is? Specifically in CICD/Code management. Do you guys keep all infrastructure code separate from application code? or together all in one and a single deployment pipleline?
05/28/2021, 6:15 PM
We keep infra code in the same repo as application code with a single pipeline that builds artifacts and deploys changes. We've found it increases discoverability of a service's components and increases transparency when changes are made. It also removes the need to coordinate multiple PR merges when app code changes require infra code changes.
05/29/2021, 2:00 PM
Application specific pulumi apps reside with the application. Core, shared infrastructure has it's own repo and runs separately.
Eg. Kubernetes cluster provisioning and core k8s applications (fluentd, certmanager, etc) are provisioned with pulumi and these apps live in their own repo.
<Insert Business App Name here> is deployed into k8s using pulumi and the pulumi app code lives with the business app source code.