mirror of https://github.com/pulumi/pulumi.git
2dd13292a3
Previously `new` was operating under the assumption that it was always going to be creating a new project/stack, and would always prompt for these values. However, we want to be able to use `new` to pull down the source for an existing stack. This change adds a `--stack` flag to `new` that can be used to specify an existing stack. If the specified stack already exists, we won't prompt for the project name/description, and instead just use the existing stack's values. If `--stack` is specified, but doesn't already exist, it will just use that as the stack name (instead of prompting) when creating the stack. `new` also now handles configuration like `up <url>`: if the stack is a preconfigured empty stack (i.e. it was created/configured in the Pulumi Console via Pulumi Button or New Project), we will use the existing stack's config without prompting. Otherwise we will prompt for config, and just like `up <url>`, we'll use the existing stack's config values as defaults when prompting, or if the stack didn't exist, use the defaults from the template. Previously `up <url>`'s handling of the project name/description wasn't correct: it would always automatically use the values from the template without prompting. Now, just like `new`: - When updating an existing stack, it will not prompt, and just use the existing stack's values. - When creating a new stack, it will prompt for the project name/description, using the defaults from the template. This PR consolidates some of the `new`/`up` implementation so it shares code for this functionality. There's definitely opportunities for a lot more code reuse, but that cleanup can happen down the line if/when we have the cycles. |
||
---|---|---|
.. | ||
apitype | ||
backend | ||
diag | ||
encoding | ||
engine | ||
graph | ||
operations | ||
resource | ||
testing | ||
tokens | ||
tools | ||
util | ||
version | ||
workspace |