pulumi/tests
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
..
benchmarks/go-alias-norm Bump go-git to v5.6.0 to remove cgo dependency fixing 2023-02-28 16:01:31 -08:00
examples Rename "Smoke" test to "Acceptance" tests 2023-01-30 15:38:37 -05:00
integration backend/filestate: Re-add project support 2023-03-14 17:30:57 -07:00
testprovider all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
.gitignore ci: Use reduced smoke testing on Windows & macOS targets 2022-09-21 09:55:06 -07:00
README.md Rename "Smoke" test to "Acceptance" tests 2023-01-30 15:38:37 -05:00
about_test.go test: fix regex used to test Go version output in about command. (#10499) 2022-08-29 11:53:03 -07:00
config_test.go backend/filestate: Re-add project support 2023-03-14 17:30:57 -07:00
go.mod pkg: Dedupe "open in browser" library 2023-03-10 10:57:33 -07:00
go.sum pkg: Dedupe "open in browser" library 2023-03-10 10:57:33 -07:00
history_test.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
login_test.go ci: radical idea - what if slow tests & no stdout makes GH consider runner dead? 2022-03-06 14:52:13 -08:00
main_test.go [breaking] Changing the version of go.mod in sdk / pkg to be v3 2021-04-14 19:32:18 +01:00
remote_test.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
roundtrip_test.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
stack_test.go backend/filestate: Re-add project support 2023-03-14 17:30:57 -07:00

README.md

Integration Tests

This module provides integration tests for the Pulumi CLI.

The tests can be run via:

make test_all

Usage of Go build tags

In order to speed up integration tests in GitHub actions, Go build tags are used to conditionally compile the desired test cases.

// integration_nodejs_test.go
//go:build (nodejs || all) && !xplatform-acceptance

// integration_nodejs_acceptance_test.go
//go:build nodejs || all