Releases: crossplane-contrib/provider-upjet-gcp
v1.1.0
The v1.1.0
release introduces MR metrics, a new family provider provider-gcp-containerattached
, new resources, bug fixes, enhancements, and dependency updates.
We are excited to introduce a new set of managed resource (MR) metrics in this release. These metrics are pivotal for monitoring the state and performance of resources managed through Crossplane. This enhancement follows the implementation guidelines from the provider-kubernetes and incorporates changes from crossplane/crossplane-runtime#683. The newly available metrics include:
- crossplane_managed_resource_exists{"gvk"}
- crossplane_managed_resource_ready{"gvk"}
- crossplane_managed_resource_synced{"gvk"}
- crossplane_managed_resource_first_time_to_reconcile_seconds{"gvk"}
- crossplane_managed_resource_first_time_to_readiness_seconds{"gvk"}
- crossplane_managed_resource_deletion_seconds{"gvk"}
- crossplane_managed_resource_drift_seconds{"gvk"}
For a detailed overview of the implementation, please refer to this crossplane/crossplane-runtime#683.
Note that, for async resources, upjet_resource_ttr_bucket{"group","kind","version"}
gives a more accurate measurement of when the external resource becomes available, compared to crossplane_managed_resource_first_time_to_readiness_seconds{"gvk"}
.
Support for New Resources
RegionNetworkEndpoint.compute.gcp.upbound.io/v1beta1
Cluster.containerattached.gcp.upbound.io/v1beta1
Bug Fixes and Enhancements
- Bug Fix: Addresses a critical bug related to asynchronous operation failures. With this fix, the "Synced" status will immediately reflect as "False" upon any failure in asynchronous operations, ensuring compliance with the XRM contract and improving reliability in status reporting. Previously, the error handling only updated the LastAsyncOperation status without properly setting the Synced condition to False. For more information, please see the crossplane/upjet#391 (comment).
- Support for publishing password to Connection Secret for the
Uer.sql
resource #501
Breaking UX Changes
The release switches the order of the SYNCED
and READY
printer columns so that the SYCNED
column is now printed before the READY
column as follows:
❯ kubectl get managed
NAME SYNCED READY EXTERNAL-NAME AGE
serviceaccount.cloudplatform.gcp.upbound.io/example-service-account True True example-service-account 56s
This used to be first the READY
column and then the SYNCED
column previously. Please see crossplane/upjet#360 for further details.
What's Changed
- Add support for google_compute_region_network_endpoint gcp resource by @JonathanO in #469
- Consume the reusable workflows from upbound/uptest@standard-runners by @sergenyalcin in #473
- Set log.Default's output to io.Discard by @ulucinar in #479
- Applying license changes by @sergenyalcin in #477
- Fix the wrong provider name reference from README by @sergenyalcin in #484
- Generate license headers for setup.go files by consuming the upjet
1.1.5
by @sergenyalcin in #486 - Update docker/setup-buildx-action digest to 2b51285 by @renovate in #478
- Update module google.golang.org/protobuf to v1.33.0 [SECURITY] by @renovate in #481
- Update kubernetes patches to v0.29.3 by @renovate in #488
- Create
containerattached
Cluster
resource by @RedbackThomson in #485 - Update actions/cache digest to 0c45773 by @renovate in #491
- Switch to the new API for
marking as required
the fields for some resources by @sergenyalcin in #490 - Add SSA merge strategy to container Cluster's nodeConfig to avoid fights over ownership. by @JonathanO in #487
- Log a deprecation message when the monolithic provider is run by @sergenyalcin in #493
- Monitor, mark and close issues and PRs with github workflow by @turkenf in #499
- Update docker/setup-buildx-action digest to d70bba7 by @renovate in #500
- Update module sigs.k8s.io/controller-runtime to v0.17.3 by @renovate in #502
- Remove GitHub issue triage workflow by @turkenf in #504
- [User.Sql] publish password to Connection Secret by @ytsarev in #501
- Update kubernetes patches to v0.29.4 by @renovate in #505
- Update actions/upload-artifact digest to 1746f4a by @renovate in #507
- Rename the repo name for reusable workflows used by @turkenf in #514
- Introduce MR metrics by @mergenci in #512
New Contributors
- @RedbackThomson made their first contribution in #485
- @mergenci made their first contribution in #512
Full Changelog: v1.0.2...v1.1.0
v1.0.2
The release v1.0.2
introduces:
- Switches to the new API for
marking as required
the fields. The new API will mark as required the fields during the generation without any native resource schema change. For more details of this new API please see this PR - Fixes [Bug]: Creation of compute Instances (and others) fails with SetNew only operates on computed keys #472
- Adds info logs in the monolithic provider's output that communicate the deprecation and the next steps #493
- Adds SSA merge strategy to container Cluster's nodeConfig to avoid fights over ownership #487
What's Changed
- Bump upjet to 1.1.6 and switch to the new API for marking as required the fields for some resources by @sergenyalcin in #492
- [Backport release-1.0] Add SSA merge strategy to container Cluster's nodeConfig to avoid fights over ownership. by @github-actions in #495
- [Backport release-1.0] Log a deprecation message when the monolithic provider is run by @github-actions in #497
Full Changelog: v1.0.1...v1.0.2
v0.41.4
The release v0.41.4
introduces:
- Adds info logs in the monolithic provider's output that communicate the deprecation and the next steps #493
- Adds SSA merge strategy to container Cluster's nodeConfig to avoid fights over ownership #487
What's Changed
- [Backport release-0.41] Add SSA merge strategy to container Cluster's nodeConfig to avoid fights over ownership. by @github-actions in #494
- [Backport release-0.41] Log a deprecation message when the monolithic provider is run by @github-actions in #496
Full Changelog: v0.41.3...v0.41.4
v1.0.1
The release v1.0.1
sets a default io.Discard
logger for the controller-runtime if debug logging is not enabled. If debug logging is enabled, then the controller-runtime uses a debug mode zap logger as usual.
What's Changed
- Switch to Github hosted runners for the CI jobs by @ulucinar in #483
- [Backport release-1.0] Set log.Default's output to io.Discard by @github-actions in #480
Full Changelog: v1.0.0...v1.0.1
v0.41.3
The release v0.41.3
sets a default io.Discard
logger for the controller-runtime if debug logging is not enabled. If debug logging is enabled, then the controller-runtime uses a debug mode zap logger as usual.
What's Changed
Full Changelog: v0.41.2...v0.41.3
v1.0.0
In the v1.0.0
release, we've upgraded the underlying Terraform provider version from 4.77.0
to 5.19.0
.
Explore the API Changes
section below for a concise overview of the modifications introduced by this version bump.
The release introduces support for the conversion functions to be able to handle any future breaking API changes. Also includes updates to the dependencies.
With this release, the provider-gcp-cloudiot
family provider has been removed with the following two resources:
Device.cloudiot.gcp.upbound.io/v1beta1
Registry.cloudiot.gcp.upbound.io/v1beta1
Bug Fixes and Enhancements
- Enable Conversion Webhooks #468
- Add SSA merge strategy to container NodePool's nodeConfig to avoid fights over ownership #457
- rds: NodePool CRD is producing endless loop if autoUpgrade enabled #249
API Changes
- Changed external name configuration for
Membership.gkehub.gcp.upbound.io/v1beta1
andDNSAuthorization.certificatemanager.gcp.upbound.io/v1beta1
, andspec.forProvider.location
is now required. Instance.alloydb.gcp.upbound.io/v1beta1
=> added reference and selector forspec.forProvider.instanceType
field.Routine.bigquery.gcp.upbound.io/v1beta1
=>spec.forProvider.routineType
is now required.Function.cloudfunctions2.gcp.upbound.io/v1beta1
=>spec.forProvider.location
is now required.DomainMapping.cloudrun.gcp.upbound.io/v1beta1
=>spec.forProvider.metadata
is now optional.V2Job.cloudrun.gcp.upbound.io/v1beta1
=>spec.forProvider.location
is now required andspec.forProvider.template.template.containers.{livenessProbe,startupProbe}
have been removed.Service.cloudrun.gcp.upbound.io/v1beta1
=>spec.forProvider.location
is now required.NodeGroup.compute.gcp.upbound.io/v1beta1
=>spec.forProvider.size
has been replaced withspec.forProvider.initialSize
.RouterNAT.compute.gcp.upbound.io/v1beta1
=>spec.forProvider.natIpAllocateOption
is now optional.spec.forProvider.enableEndpointIndependentMapping
now defaults toFALSE
. Previously, the default value wasTRUE
.
Cluster.container.gcp.upbound.io/v1beta1
=>spec.forProvider.enableBinaryAuthorization
has been removed.spec.forProvider.deletionProtection
field has been added with a default oftrue
. Cluster deletion now prevented by default with this field.spec.forProvider.networkingMode
defaults toVPC_NATIVE
for newly created clusters.
Trigger.eventarc.gcp.upbound.io/v1beta1
=>spec.forProvider.destination.cloudFunction
has been removed.Certificate.privateca.gcp.upbound.io/v1beta1
=>status.atProvider.pemCertificates
has been removed andstatus.atProvider.certificateDescription.configValues
has been removed.Secret.secretmanager.gcp.upbound.io/v1beta1
=>spec.forProvider.replication.automatic
has been replaced withspec.forProvider.replication.auto
.Databaselnstance.sql.gcp.upbound.io/v1beta1
=>status.atProvider.serverCaCert
has been removed.SSLCert.sql.gcp.upbound.io/v1beta1
=>status.atProvider.serverCaCert
has been removed.ServiceAttachment.compute.gcp.upbound.io/v1beta1
=>spec.forProvider.reconcileConnections
now defaults from API. Previously defaulted totrue
.NodePool.container.gcp.upbound.io/v1beta1
=>spec.forProvider.autoRepair
andspec.forProvider.autoUpgrade
now default totrue
. Previously both fields defaulted tofalse
ifspec.forProvider.management
was set as an empty block.ProjectSink.logging.gcp.upbound.io/v1beta1
=>spec.forProvider.uniqueWriterIdentity
now defaults toTRUE
. Previously, the default value wasFALSE
.
What's Changed
- Update actions/cache digest to e12d46a by @renovate in #440
- Update actions/upload-artifact digest to 1eb3cb2 by @renovate in #442
- Update actions/cache action to v4 by @renovate in #444
- Update kubernetes patches to v0.29.1 by @renovate in #445
- Update actions/upload-artifact digest to 694cdab by @renovate in #446
- Update actions/upload-artifact digest to 26f96df by @renovate in #449
- Comprehensive Issue Template Update: Assisting Users in Better Issue Definition by @turkenf in #450
- Update module sigs.k8s.io/controller-tools to v0.14.0 by @renovate in #441
- Update alpine Docker tag to v3.19.1 by @renovate in #453
- Update actions/upload-artifact digest to 5d5d22a by @renovate in #458
- Add SSA merge strategy to container NodePool's nodeConfig to avoid fights over ownership. by @JonathanO in #457
- fix: add version to lateinit ingore array by @Demonsthere in #456
- Update kubernetes patches to v0.29.2 by @renovate in #459
- Switch from the NoFork terminology to the TerraformPluginSDK terminology and bump dependiencies by @sergenyalcin in #461
- Update module sigs.k8s.io/controller-runtime to v0.17.2 by @renovate in #464
- Update module github.com/cloudflare/circl to v1.3.7 [SECURITY] by @renovate in #463
- Enable Conversion Webhooks by @ulucinar in #468
- Update docker/setup-buildx-action digest to 0d103c3 by @renovate in #466
- Update actions/cache digest to ab5e6d0 by @renovate in #467
- Bump native tf provider to version 5.19.0 by @turkenf in #465
New Contributors
- @JonathanO made their first contribution in #457
- @Demonsthere made their first contribution in #456
Full Changelog: v0.41.2...v1.0.0
v0.41.2
The release v0.41.2
includes some important bug fixes and dependency bumps detailed below:
- Bump crossplane-runtime to
v1.15.1
along with various bug fixes. - Bump upjet to
v1.1.1
- There’s a fix in the implementation of the
LateInitialize
management policy in the context of the no-fork architecture. Previously, we were relying solely on the managed reconciler for preventing the late-initialization of the managed resources if the specified policies do not contain it. Now, we also explicitly skip the late-initialization in upjet to prevent some accidental updates to thespec.forProvider
while, for example, updating the annotations. - Adds a more explanatory error message when immutable fields of a managed resource have changed.
What's Changed
- [Release-0.41] Switch from the NoFork terminology to the TerraformPluginSDK terminology and bump dependiencies by @turkenf in #462
Full Changelog: v0.41.1...v0.41.2
v0.41.1
v0.41.0
The release includes some bug fixes, adding a new resource, and updates to dependencies, with the most significant ones detailed below.
- Generates reference fields for the
spec.initProvider
of all resources. - Support for new resource:
RegionTargetTCPProxy.compute
What's Changed
- Add support for google_compute_region_target_tcp_proxy gcp resource by @meerkat-b in #432
- Update actions/upload-artifact action to v4 by @renovate in #436
- Update kubernetes packages to v0.29.0 by @renovate in #435
- Update module golang.org/x/crypto to v0.17.0 [SECURITY] by @renovate in #438
- Bump upjet to the commit
4cb45f9104ac
by @turkenf in #439
New Contributors
- @meerkat-b made their first contribution in #432
Full Changelog: v0.40.0...v0.41.0
v0.40.0
This release brings a change with how we interact with the underlying Terraform GCP provider. Instead of interfacing with Terraform via the TF CLI, the new implementation consumes the Terraform provider's Go provider schema and invokes the CRUD functions registered in that schema, and we no longer fork the underlying Terraform provider process.
For this reason, we removed the Terraform CLI from the provider package, and accordingly we also deprecated all the process-forking related command-line flags. The full list of the deprecated command-line flags is as follows:
--terraform-version
--terraform-provider-version
--terraform-native-provider-path
--terraform-provider-source
--provider-ttl
Using these flags will be non-functional and you will receive log messages similar to the following, if you pass any of these deprecated command-line flags to the provider.
warning: Command-line flag "terraform-version" is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).
warning: Command-line flag "terraform-provider-source" is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).
warning: Command-line flag "terraform-provider-version" is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).
warning: Command-line flag "provider-ttl" is deprecated and no longer used. It will be removed in a future release. Please remove it from all of your configurations (ControllerConfigs, etc.).
Our users are advised to remove any of these deprecated command-line flags from their configurations (ControllerConfig
s, etc.) because the deprecated command-line flags will be removed in a future release of the provider.
What's Changed
- Update alpine Docker tag to v3.18.5 by @renovate in #428
- Update actions/setup-go action to v5 by @renovate in #430
- Update alpine Docker tag to v3.19.0 by @renovate in #431
- Use Terraform Plugin SDK to Reconcile MRs by @ulucinar in #424
- Remove the Terraform CLI from the provider package and deprecate the relevant provider command-line flags by @ulucinar in #434
Full Changelog: v0.39.0...v0.40.0