pulumi/pkg
bors[bot] a0271f71c1
Merge #11192
11192: Hierarchical config: optional typing extended short-hand syntax r=Zaid-Ajaj a=Zaid-Ajaj

### Description

This PR extends the specs of the hierarchical configuration rules in the following manner:
 - The `type` property/attribute is made _optional_ for project configuration which means stack values overriding this config block will not be validated against the type (integer stack value will override string project value)
 - Stacks can now use non-project config values that don't have to be defined at the project level (because they are not namespaced by the project, i.e. `aws:region`)
 - Non-project config values (i.e. `aws:region`) defined at the project level _cannot_ have a `type` nor `default` properties, only `value`
 - Project config block using short-hand syntax now accept arrays: `pulumi:disable-default-providers: ["*"]`
 - Project config block when defined using `value` can be anything (objects, arrays, primitives)
 - Project config blocks cannot have both `value` and `default` defined at the same time

Fixes #11127
Fixes #11128

See added tests for more details

## Checklist

<!--- Please provide details if the checkbox below is to be left unchecked. -->
- [x] I have added tests that prove my fix is effective or that my feature works
<!--- 
User-facing changes require a CHANGELOG entry.
-->
- [x] I have run `make changelog` and committed the `changelog/pending/<file>` documenting my change
<!--
If the change(s) in this PR is a modification of an existing call to the Pulumi Service,
then the service should honor older versions of the CLI where this change would not exist.
You must then bump the API version in /pkg/backend/httpstate/client/api.go, as well as add
it to the service.
-->
- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi Service API version
  <!-- `@Pulumi` employees: If yes, you must submit corresponding changes in the service repo. -->


Co-authored-by: Zaid Ajaj <zaid.naom@gmail.com>
2022-10-31 01:13:26 +00:00
..
authhelpers Add support for authentication via GOOGLE_CREDENTIALS (#6379) 2022-06-07 16:02:08 +01:00
backend [auto] Fix hangs for remote previews 2022-10-28 10:33:43 -07:00
cmd/pulumi Merge #11192 2022-10-31 01:13:26 +00:00
codegen Fix failing tests 2022-10-28 10:18:09 -07:00
engine test # This is a combination of 3 commits. 2022-10-25 16:54:58 -07:00
graph Update error handling (#8406) 2021-11-12 18:37:17 -08:00
operations ci: gofmt 1.18+ clean 2022-09-21 09:48:39 -07:00
resource Add `pulumi state delete --target-dependents` 2022-10-27 11:23:56 -07:00
secrets Merge #11094 2022-10-24 11:33:21 +00:00
testing/integration Merge #10832 2022-10-18 16:42:18 +00:00
util [cli] Enable single-file Pulumi YAML templates (#10437) 2022-08-18 23:13:56 +01:00
version duplicate version to ensure linking is properly handled 2020-03-19 12:49:34 -07:00
README.md export codegen tests for internal use (#8928) 2022-02-07 12:10:04 +01:00
go.mod Update dependencies 2022-10-28 09:03:19 +00:00
go.sum Upgrade yaml to v0.5.10 2022-10-13 14:39:25 -07:00

README.md

pulumi/pkg

While pulumi/sdk maintains strict backwards compatibility guarantees, code under pkg/ is handled more informally: while breaking changes are still discouraged they may happen when they make sense.