Migrating from GCP 6.x to 7.x
Upstream Changes
The upstream target has been changed from v4.84.0 to targeting v5.0.0. That means that the upstream migration guide as well as the v.5.0.0 CHANGELOG
s are relevant.
Renamed resources and functions
To improve resource naming uniformity, we renamed the serviceAccount module to serviceaccount (all lowercase). No action is required for Node.js, Python, and .NET users. Go, Java, and YAML users will have to adjust their import paths and resource types.
- import "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/serviceAccount"
+ import "github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/serviceaccount"
- import com.pulumi.gcp.serviceAccount.*;
+ import com.pulumi.gcp.serviceaccount.*;
- type: gcp:serviceAccount:Account
+ type: gcp:serviceaccount:Account
Resources
- gcp:serviceAccount:Account -> gcp:serviceaccount:Account
- gcp:serviceAccount:IAMBinding -> gcp:serviceaccount:IAMBinding
- gcp:serviceAccount:IAMPolicy -> gcp:serviceaccount:IAMPolicy
- gcp:serviceAccount:Key -> gcp:serviceaccount:Key
Functions
- gcp:serviceAccount:getAccount -> gcp:serviceaccount:getAccount
- gcp:serviceAccount:getAccountAccessToken -> gcp:serviceaccount:getAccountAccessToken
- gcp:serviceAccount:getAccountIdToken -> gcp:serviceaccount:getAccountIdToken
- gcp:serviceAccount:getAccountJwt -> gcp:serviceaccount:getAccountJwt
- gcp:serviceAccount:getAccountKey -> gcp:serviceaccount:getAccountKey
- gcp:serviceAccount:getIamPolicy -> gcp:serviceaccount:getIamPolicy
Labels Rework
Upstream changes for provider, resource, and data source labels are included in this release. Global Google Cloud Platform labels configured on the provider are supported through the new defaultLabels
field. Default labels will be applied to all resources with a labels
field.
Resources that previously contained a single labels
field will now contain three fields:
- The
labels
field is now non-authoritative and only manages the label keys defined in your configuration for the resource. - The output-only
pulumiLabels
field merges the labels defined in the resource’s labels field and the globaldefaultLabels
. If the same label key exists on both the resource level and provider level, the value on the resource will override the provider-level default. - The output-only
effectiveLabels
will list all the labels present on the resource in GCP, including labels configured through Pulumi.
Note: Both pulumiLabels
and effectiveLabels
fields are set to Secret
to avoid leaking any labels
or defaultLabels
marked as Secret
by the user.
Due to the two new output fields, a resource that has a labels
field may show a diff when upgrading from pulumi-gcp v6 to v7. This diff reflects adding the new resource Output fields and is safe to do.
You can find more information about this change in the upstream documentation.