pulumi/sdk/go/common/resource
Pat Gavlin d1ff268b10 [esc] Add commands for managing stack environments
These changes add three commands for managing a stack's environments:

- `pulumi config env init`, which creates a new environment for a stack
  based on its configuration values
- `pulumi config env add`, which adds environments to a stack's import
  list
- `pulumi config env rm`, which removes an environment from a stack's
  import list

As implied by their paths, these commands hang off of a new sub-command
of `pulumi config`, `pulumi config env`.

From the usage:

* `pulumi config env init`

Creates an environment for a specific stack based on the stack's
configuration values, then replaces the stack's configuration values with
a reference to that environment. The environment will be created in the
same organization as the stack.

* `pulumi config env add`

Adds environments to the end of a stack's import list. Imported
environments are merged in order per the ESC merge rules. The list of
stacks behaves as if it were the import list in an anonymous environment.

* `pulumi config env rm`

Removes an environment from a stack's import list.

Each of these commands previews the new stack environment and shows the
environment definition. These commands print a warning if the stack's
environment does not define any of the `environmentVariables`, `files`,
or `pulumiConfig` properties.

These changes also add an `ENVIRONMENT` block to the output of `pulumi
config` for stacks that reference environments. This block shows the
definition of the stack's environment. In order to improve the
appearence of these tables, these changes also add a helper function
that colorizes the header row.

Finally, these changes add a warning on `pulumi env add`, `pulumi env
rm`, and `pulumi up/refresh/etc.` for stacks that reference environments
that do define any of `environmentVariables`, `files`, or
`pulumiConfig`, and add a tag to update metadata that includes the
environments associated with an update.
2023-11-13 16:38:31 -08:00
..
config [esc] Add commands for managing stack environments 2023-11-13 16:38:31 -08:00
plugin Ignore spurious error from kubernetes DiffConfig (#14533) 2023-11-11 09:59:39 +00:00
testing deps: Upgrade to pgregory.net/rapid v0.5 2023-02-16 12:04:07 -08:00
alias.go [engine] Fix aliasing children 2023-06-14 05:19:17 -07:00
alias_test.go feat(engine): Adds structured alias support to the engine 2022-10-11 17:56:32 -04:00
asset.go [sdk/go] Ensure Assets of AssetArchive are non-nil when creating and deserializing (#14007) 2023-09-22 15:46:19 +00:00
asset_test.go Use `assert.NoError` rather than `assert.Nil` (#14233) 2023-10-13 09:46:07 +00:00
custom_timeouts.go move pkg/resource -> sdk/go/common/resource, but leave nested resource packages 2020-03-18 13:36:19 -07:00
errors.go [breaking] Changing the version of go.mod in sdk / pkg to be v3 2021-04-14 19:32:18 +01:00
mapper_test.go Use `assert.NoError` rather than `assert.Nil` (#14233) 2023-10-13 09:46:07 +00:00
properties.go [resource] Add a generic NewProperty function (#14534) 2023-11-11 21:12:17 +00:00
properties_diff.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
properties_diff_test.go [resource] Add a generic NewProperty function (#14534) 2023-11-11 21:12:17 +00:00
properties_path.go Support 'key.[index]' in property paths (#14451) 2023-10-31 17:37:48 +00:00
properties_path_test.go [resource] Add a generic NewProperty function (#14534) 2023-11-11 21:12:17 +00:00
properties_test.go [resource] Add a generic NewProperty function (#14534) 2023-11-11 21:12:17 +00:00
resource_goal.go [engine] Add support for source positions 2023-07-10 14:35:40 -07:00
resource_id.go sdk/go: Prefer contract.Assertf over Assert 2023-02-15 10:22:43 -08:00
resource_id_test.go Use `assert.NoError` rather than `assert.Nil` (#14233) 2023-10-13 09:46:07 +00:00
resource_operation.go move pkg/resource -> sdk/go/common/resource, but leave nested resource packages 2020-03-18 13:36:19 -07:00
resource_state.go Policy remediations feature (#14080) 2023-10-09 18:31:17 +00:00
stack.go [breaking] Changing the version of go.mod in sdk / pkg to be v3 2021-04-14 19:32:18 +01:00
status.go move pkg/resource -> sdk/go/common/resource, but leave nested resource packages 2020-03-18 13:36:19 -07:00
urn.go When changing parents also fix URNs (#13935) 2023-09-14 19:52:27 +00:00
urn_test.go ci: radical idea - what if slow tests & no stdout makes GH consider runner dead? 2022-03-06 14:52:13 -08:00