-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move pulumi context settings and persistent data #1820
Conversation
9e1fa60
to
642ea88
Compare
Working on this, the names are becoming a mess. Terms here. We have two Pulumi Programs, one for SHM, one for SRE. We could use stacks a bit more like they are intended, with dev and prod deployments. I don't see us doing that now though. So, the state is, each 'thing' is the only stack of a Pulumi Project. I think that has lead to conflating the terms program/stack and not using the term project. I propose
@craddm @jemrobinson thoughts? |
Also, I must be tired because I implemented a class where you can look up items using strings, which must be unique, and didn't use a |
Can you give a quick sketch of what would be in each of these config files? Could be e.g. a YAML representation of the pieces of data in each of them. |
The Pulumi files, or the classes we are creating? For the later, I would write the |
The data structure of the classes we're creating (I'm not worried about the serialisation part). I'm thinking something like: DSHPulumiConfig
- azure
- subscription_id
- tenant_id
- something_else DSHPulumiProject
- something
- A
- B
- something_else
- C
- D |
…lasses Separate config classes
Pulumi storage fixes, including adding encryption key
This is working now and I think I've addressed all the comments. |
✅ Checklist
Enable foobar integration
rather than515 foobar
).develop
.'[WIP]'
to the title if needed (if you're not yet ready to merge).ConfigClass
base class for configuration synced to Azure Storage in the Contextfrom_remote_or_create
method to fetch config if it exists in Azure Storage, otherwise create a new instanceDSHPulumiProject
andDSHPulumiConfig
classes for storing persistent Pulumi project informationConfigClass
for bothConfig
andDSHPulumiConfig
Context
to constructConfig
. Removes a lot of potential circular imports.DSHPulumiProject
instances to create Pulumi workspaces and stacks, avoiding the need to writePulumi.<stack>.yaml
andPulumi.yaml
files in a non-temp work directoryStackManager
classes🌂 Related issues
Closes #1689 #1828
🔬 Tests
New deployment, repeating commands successfully fetches Pulumi persistent data (stack settings, stack state)