echoing-kite-20691
04/22/2024, 10:52 PMinfra
).
• a few application services that live each in their own git repo (e.g. serv1
, serv2
, etc). Each service has its own CI/CD pipeline for deploying a new version upon merging to the main branch.
• The CI/CD pipeline of each service does not use pulumi to publish a new version, but rather some some bash scripts (due to legacy reasons)
I would like to use pulumi to substitute said bash scripts, but I'm having trouble understanding how I could achieve this. I understand that, if I had one stack per service, I could easily build docker images as part of each stack and update the resources accordingly. However, as far as I understand, this would come at the cost of a complex setup (tradeoffs described here) using stack references.
So I guess what I'm trying to figure out is: is there a way I can still have a centralized definition of resources but have each separate app be able to publish their new versions? Does this even make sense or is it an anti-pattern?echoing-kite-20691
04/22/2024, 11:01 PMlittle-cartoon-10569
04/22/2024, 11:58 PMechoing-kite-20691
04/23/2024, 12:28 AMinfra
project creating a service. and the scripts update which version (e.g. image) that service runes over time.
I could have separate projects both create their services and build/push an image that will be run by the service, but I'm wondering if I can keep things separate: infra
project creates the service and individual applications build/push images and update the service to point to the new image (here's where I understand stack references would be used).little-cartoon-10569
04/23/2024, 12:32 AMlittle-cartoon-10569
04/23/2024, 1:01 AMechoing-kite-20691
04/23/2024, 4:14 PMBuilding / pushing an image is probably packaging, and comes at the end of a CI pipeline; that packaged image is used by a deployment pipeline, but only in the same way that a source file is used by a CI pipeline.In this context, would you say that pulumi is appropriate for the deployment step? For example, if the output of the CI/CD pipeline is a deployable artifact (e.g. a docker image, a jar file, etc), would it make sense to use pulumi to patch the running services to use this new artifact?
little-cartoon-10569
04/23/2024, 8:48 PMlittle-cartoon-10569
04/23/2024, 8:49 PMlittle-cartoon-10569
04/23/2024, 8:51 PMpulumi up
often when you're using those tools.