pulumi/tests
Fraser Waters c9c30f0939
Ensure internal provider state doesn't clash with user config (#16837)
Provider internal state is now separated from provider user config. This
allows providers to use a config key like "pluginDownloadURL" which
previously would have conflicted with the engines internal state. It
also allows the engine to add new internal state fields without concern
for clashing with existing or future provider config keys.

"version" is maintained as a root level key because providers already
look at this field, and we use it in conformance tests. However it's
been fixed to be the package version, not the plugin version. That's the
same for normal providers, but for a parameterised provider it will be
the version of the parameterised package, not the base plugin version.
As part of this I've made schema more strict that a provider can't
define its own version field. This would have clashed with the use of
version to set the plugin version to download, and is better set by
users by using the version resource option.

Fixes https://github.com/pulumi/pulumi/issues/16757.

---------

Co-authored-by: Will Jones <will@sacharissa.co.uk>
2024-07-30 12:22:32 +00:00
..
benchmarks/go-alias-norm Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
examples Update node sdk to use typescript definitions for grpc and protobufs. (#14415) 2023-12-04 15:22:44 +00:00
integration Ensure internal provider state doesn't clash with user config (#16837) 2024-07-30 12:22:32 +00:00
testdata Fix marshalling of plain properties (#16812) 2024-07-26 21:36:22 +00:00
testprovider Add support for parameterized invokes in Python (#16832) 2024-07-29 14:51:07 +00: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 Run Environment.DeleteIfNotFailed after tests complete (#16730) 2024-07-23 10:37:01 +00:00
config_test.go Skip TestConfigCommandsUsingEnvironments (#16794) 2024-07-25 10:36:40 +00:00
go.mod Changelog and go.mod updates for v3.127.0 (#16805) 2024-07-25 23:47:22 +00:00
go.sum Update Pulumi YAML to 1.9.1 (#16636) 2024-07-11 22:33:05 +00: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 Rename filestate to DIY (#15314) 2024-01-30 15:53:10 +00:00
policy_new_test.go Revert "[policy] support premium policies (#13898)" (#14114) 2023-10-06 09:49:40 +00:00
preview_only_test.go Run Environment.DeleteIfNotFailed after tests complete (#16730) 2024-07-23 10:37:01 +00:00
remote_test.go Use new API for deployments (#15684) 2024-04-16 23:23:56 +00:00
roundtrip_test.go Run Environment.DeleteIfNotFailed after tests complete (#16730) 2024-07-23 10:37:01 +00:00
smoke_test.go Fix plugin run to pickup binary path correctly (#16249) 2024-05-22 14:39:13 +00:00
stack_test.go Run Environment.DeleteIfNotFailed after tests complete (#16730) 2024-07-23 10:37:01 +00: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