Curious question for people. I've seen a number of...
# getting-started
f
Curious question for people. I've seen a number of blog articles and docs suggesting "Micro-stacks" when working with Pulumi. I'm hitting the need for that to do GitOps utilizing Stack Outputs. How many people end up doing Micro-repositories for those stacks vs. monoliths? Or sub-module micro-repos in a monolith? Especially thinking about GitHub Actions for CI/CD?
Oh, and S3 backed state, BTW.
n
What specifically do you mean by gitops in this context?
Sub-modules are almost always the wrong thing imo
f
So for example, I've got a stack that is setup within one git-repo that manages AWS accounts in our AWS organization using YAML files. If new YAML files are committed (and pull request approved), a new account is created using Pulumi. I want that output to create an additional YAML file in another folder (or other repo if micro-stack/repos) to describe a GitHub Repo for that AWS account and kick off the Pulumi stack that handles GitHub. Still trying to figure out the PR/or just some whitelisted commit if automated. Right now I'm going monolith with a directory per micro-stack and configuration file folders.
n
Having many repos seems to add a lot of complexity and dependency chains that have to get iteratively unfolded. Are you doing a monorepo instead?
f
Currently a mono-repo. Trying to figure out if I should break it up.
I do like the idea of even a different "microrepo" creating commits into other microrepos and that triggering pipelines via Hooks/Actions.
n
What's the advantage of that over commits in the monorepo?
f
I think mostly using Git Hooks would require more of a switch type function built in. Was this a commit that modified the AWS Accounts vs. GitHub vs. Other.