pulumi/changelog
Fraser Waters 67208a3f27
backend/filestate: Re-add project support
This re-adds project support back to the filestate backend.

For backwards compatibility, and to plan for the future,
this requires versioning the storage state.
To do that, we introduce a .pulumi/Pulumi.yaml file
where we hold metadata like the version of the filestate storage
format.
Version 1 is the initial version that introduces project support.

    # .pulumi/Pulumi.yaml
    version: 1

If we ever need to make breaking changes to the storage protocol
we can bump the format version.

Newly initialized states will use the new project-mode format.
Existing states will continue to run in the old, non-project mode.
State can be migrated to the new format with `pulumi state upgrade`,
at which point they will become incompatible with older CLIs.

For more graceful degradation, if an old CLI writes to an upgraded state
the CLI will warn about these files, and recommend re-running upgrade.

Testing:
Some tests inside filestate/backend were duplicated
for legacy and project variants.
2023-03-14 17:30:57 -07:00
..
pending backend/filestate: Re-add project support 2023-03-14 17:30:57 -07:00
config.yaml Reorder scopes to be alphabetically ordered. 2022-11-10 16:54:37 -05:00