alright so after working with Pulumi programs for ...
# general
f
alright so after working with Pulumi programs for a while on my local, it’s time to put everything in my CI.. oh wait, yaml files.. I got so spoiled by not working with disgusting yaml files that writting my CI sequence in it feels weird and unefficient… any thoughts? I’d love to have CI/CD as code
maybe this is an area where pulumi would want to go? I could see another type of program that would represent the buids, triggers, etc 🙂
b
CI sequence?
g
Not sure what CI system you’re using, but https://www.pulumi.com/docs/guides/continuous-delivery/ might have some useful info for you
f
I use CircleCI now yes
I would see a pulumi program that represent a build sequence
b
there is THE program for this already: https://buildbot.net/
f
@best-xylophone-83824 that’s in python language right? it looks nice
b
yes it is in python and is oldest player in this market
👍 1
g
Another possibility is implementing a pulumi provider for whatever CI backend so that you could manage it with pulumi. If there’s an existing terraform provider, it’s fairly easy to generate a pulumi one from that
f
I just think that Pulumi covering CI/CD is the next logical step, I have my stacks ready to be automated.. why not have a pulumi program that takes trigger A, update pulumi stack etc
basically I want to avoid writting yaml files, I would want to write my CI/CD sequence with TypeScript 😂
I’m curious, what CI/CD does the pulumi team use internally? @gorgeous-egg-16927
g
Currently a combination of TravisCI and GitHub actions. But I agree with your points 😄
👍 1
f
I have the following pulumi “programs” right now: - identity (AWS Org, Accounts, Users, base IAM) - infra (EKS cluster, ECR, etc) - auth (authentication + permissioning layer) - apps (service and application to be run on the cluster)
a “ci” pulumi program would be awesome sauce, since I could reference the other stacks and trigger updates “pulumi up” based on conditions (like what trigger do I have)
this would be soooo awesome to write in a normal language
in over 7 years of workin in IT, my most miserable moments have been “configuring the goddamn CI”
b
by CI sequence, i guess you mean running all the stacks one after the other?
f
I mean, like the CI we know 1. trigger happens (git or manual) 2. depending on condition (what branch, what trigger) run whatever you need, including “pulumi up” on pulumi programs that needs to be updated
Joe Duffy pointed me to: https://atomist.com
but the paradigm they use.. is very very different from what we are used to.. anyway, it’s worth having a look