sparse-intern-71089
04/07/2022, 3:09 PMgreat-queen-39697
04/07/2022, 3:10 PMgreat-queen-39697
04/07/2022, 3:12 PMstacks
as environments
. I really like this diagram from the docs as a way to explain all the various terms in a visual way: https://www.pulumi.com/images/docs/pulumi-programming-model-diagram.svggreat-queen-39697
04/07/2022, 3:13 PM.cs
file (or .py
or .ts
... depends on your programming language). The stack's config is defined by the Pulumi-<stack>.yaml
file, while the project config is the Pulumi.yaml
file.great-queen-39697
04/07/2022, 3:18 PMgreat-queen-39697
04/07/2022, 3:21 PMpulumi destroy
, it tears down the infrastructure (both the resources and the state) in the current context--the stack you have been working on. It doesn't delete the stack's configuration from Pulumi. To remove that stack's configuration from Pulumi, you use pulumi stack rm
. Be careful as you'll have to rebuild the config from scratch if you do that!great-queen-39697
04/07/2022, 3:25 PMpulumi stack rm
on all of the stacks, you've wiped all of the configurations, and the project is no longer needed as it doesn't mean much without a stack to attach to it. You still have the project on your local machine (or in a codebase somewhere), though, and can kick it back off by initializing a new stack and adding configurations.great-queen-39697
04/07/2022, 3:27 PMstocky-butcher-62635
04/08/2022, 8:37 AMproduction
, test
, and maybe feature branches. I think you call this monolithic?
The alternative seemed to be to make a project and stacks for every git repository that contains something that gets deployed. But, for example, this would make a web app difficult to configure when it depends on other apps (e.g., HTTP APIs) that are deployed in other stacks of other projects.
Is there a way to manage this configuration?great-queen-39697
04/08/2022, 2:17 PMgreat-queen-39697
04/08/2022, 2:25 PMPulumi.yaml
file, which got generated by the pulumi new python
command, and a Pulumi.dev.yaml
file, which got generated in that same command because I defined a first stack of dev
. The Pulumi.dev.yaml
file got populated by me running the following command: pulumi config set <key> <value>
for each one of those pairs. I could alternatively have run pulumi config set-all
, but I'd recommend doing the standard command one by one first until you're comfortable.