github crossplane-contrib/provider-kubernetes v1.3.0

6 hours ago

v1.3.0

New Features

  • Health and readiness probes (#301): The provider now exposes HTTP health (/healthz) and readiness (/readyz) endpoints. Probe configuration is aligned with standard Crossplane provider conventions.

  • Configurable webhook port and metrics bind address (#301): Webhook port and metrics bind address are now configurable via flags, making it easier to deploy the provider in restricted network environments.

  • Nebius in-process service account identity auth (#499): A new NebiusServiceAccountCredentials identity type authenticates to Nebius Managed Kubernetes clusters by minting IAM tokens in-process from a service account's credentials, without requiring an exec credential plugin. Token sources are cached per-credentials to avoid leaks across reconciles.

  • Configurable DeletionPropagationPolicy for Object (#437): The Object spec now accepts a deletionPropagationPolicy field. Defaults to Background. Set to Foreground to ensure dependent resources are fully cleaned up before the owner is removed.

  • Remove managed fields from observed objects (#483): Managed fields are now stripped from objects returned by the provider, reducing noise in status and stored state.

  • Strip managed fields in informer caches (#425): The controller-runtime cache is now configured to strip managed fields from informer objects and uses PartialObjectMetadata where appropriate, reducing memory usage when watching resources.

Bug Fixes

  • Redact Secret data from debug logs (#533): Secret values are no longer logged at debug level, preventing accidental credential exposure in log aggregators.

  • Do not block Object deletion on failed connection details (#531): A failure to publish connection details no longer prevents an Object from being deleted, avoiding stuck finalizers.

  • Honor proxy-url from kubeconfig cluster config (#530): The provider now correctly picks up the proxy-url field from the kubeconfig cluster entry when building the Kubernetes client.

  • Fix OpenAPI v3 ServerRelativeURL root prefix stripping (#507): SSA apply no longer fails when the OpenAPI discovery server returns a URL with an unexpected root path prefix.

  • Fix ProviderConfig readiness for wrapped providers (#423): An Object that creates a k8s.m ProviderConfig now correctly transitions to Ready once the inner provider config is healthy.

Dependency & Security Updates

  • Crossplane runtime bumped to v2.3.3 (#512)
  • Security patches: google.golang.org/grpc → v1.82.1, golang.org/x/net → v0.55.0, go.opentelemetry.io/otel → v1.41.0, github.com/google/cel-go → v0.29.0
  • Go toolchain updated to v1.26.5

Contributors

Thank you to everyone who contributed to this release:

What's Changed

  • fix: object that creates a k8s.m ProviderConfig never becomes ready by @patrickleet in #423
  • e2e: add Object manifest for a wrapped provider config by @erhancagirici in #436
  • Add bobh66 (myself) as a maintainer by @bobh66 in #444
  • build(deps): bump github.com/aws/aws-sdk-go-v2/service/sts from 1.38.9 to 1.41.9 by @dependabot[bot] in #434
  • ci: switch to renovate for dependency updates by @erhancagirici in #441
  • Update codecov/codecov-action digest to 75cd116 by @renovate[bot] in #446
  • Pin dependencies by @renovate[bot] in #445
  • Update dependency go to v1.24.13 by @renovate[bot] in #448
  • Update dependency docker/buildx to v0.33.0 by @renovate[bot] in #449
  • Update docker/setup-buildx-action action to v4 by @renovate[bot] in #452
  • Update docker/setup-qemu-action action to v4 by @renovate[bot] in #453
  • Update codecov/codecov-action action to v6 by @renovate[bot] in #451
  • Update gcr.io/distroless/static Docker digest to 47b2d72 by @renovate[bot] in #454
  • Update actions/setup-go action to v6 by @renovate[bot] in #450
  • Update dependency kubernetes-sigs/kind to v0.31.0 by @renovate[bot] in #460
  • Update dependency crossplane/crossplane to v2.2.1 by @renovate[bot] in #458
  • Update actions/checkout action to v6.0.2 by @renovate[bot] in #457
  • Update dependency golangci/golangci-lint to v2.11.4 by @renovate[bot] in #459
  • Update module google.golang.org/grpc to v1.79.3 [SECURITY] by @renovate[bot] in #465
  • ci: add codecov token for coverage report uploads by @erhancagirici in #470
  • Update module go.opentelemetry.io/otel to v1.41.0 [SECURITY] by @renovate[bot] in #472
  • Add configurable Object DeletionPropagationPolicy by @alanrichman in #437
  • Add DeletionPropagationPolicy unit tests by @phisco in #477
  • Update dependency docker/buildx to v0.34.1 by @renovate[bot] in #478
  • Remove wildcards from renovate patterns by @bobh66 in #486
  • Update codecov/codecov-action digest to fb8b358 by @renovate[bot] in #487
  • Update crossplane versions in CI to v2.3.2 by @renovate[bot] in #489
  • Update codecov/codecov-action action to v7 by @renovate[bot] in #490
  • Update docker/setup-qemu-action digest to 0611638 by @renovate[bot] in #491
  • Update gcr.io/distroless/static Docker digest to 3592aa8 by @renovate[bot] in #492
  • Update all non-major github action by @renovate[bot] in #493
  • Update dependency kubernetes-sigs/kind to v0.32.0 by @renovate[bot] in #494
  • Update golangci-lint versions in CI to v2.12.2 by @renovate[bot] in #495
  • Update docker/setup-buildx-action digest to d7f5e7f by @renovate[bot] in #488
  • Update golang versions to v1.26.4 by @renovate[bot] in #474
  • Update dependency docker/buildx to v0.35.0 by @renovate[bot] in #497
  • Restore valid wildcards in renovate config by @bobh66 in #496
  • Update actions/checkout action to v7 by @renovate[bot] in #498
  • Update actions/setup-go action to v6.5.0 by @renovate[bot] in #503
  • Update dependency crossplane/crossplane to v2.3.3 by @renovate[bot] in #500
  • feat(nebius): add in-process service account identity auth for Nebius Cloud by @jonasz-lasut in #499
  • chore: use pflag ParseErrorsAllowlist and bump pflag to v1.0.10 by @jcogilvie in #506
  • fix(ssa): strip API root prefix from OpenAPI v3 ServerRelativeURL by @jcogilvie in #507
  • Update docker/setup-qemu-action digest to 96fe6ef by @renovate[bot] in #505
  • Update golangci/golangci-lint-action action to v9.3.0 by @renovate[bot] in #504
  • Update module golang.org/x/net to v0.55.0 [SECURITY] by @renovate[bot] in #508
  • feat: update Crossplane runtime to v2.3.3 by @jcogilvie in #512
  • Update module google.golang.org/grpc to v1.82.1 [SECURITY] by @renovate[bot] in #515
  • Update dependency go to v1.26.5 by @renovate[bot] in #513
  • Update docker/setup-buildx-action digest to bb05f3f by @renovate[bot] in #509
  • Update all non-major github action by @renovate[bot] in #517
  • Update gcr.io/distroless/static Docker digest to 9197324 by @renovate[bot] in #516
  • Update actions/setup-go action to v7 by @renovate[bot] in #520
  • Update dependency crossplane/crossplane to v2.3.4 by @renovate[bot] in #518
  • Update module sigs.k8s.io/structured-merge-diff/v6 to v6.4.2 by @renovate[bot] in #519
  • Update module github.com/google/cel-go to v0.29.0 [SECURITY] by @renovate[bot] in #521
  • Update kubernetes patches by @renovate[bot] in #522
  • feat: remove managed fields by @blut in #483
  • Add jonasz-lasut to codeowners/owners.md by @jonasz-lasut in #529
  • Reduce memory usage when watching resources by @LAMRobinson in #425
  • feat: make the webhook port configurable by @Argannor in #301
  • Honor proxy-url from kubeconfig cluster config by @jonasz-lasut in #530
  • Do not block Object deletion on failed connection details by @jonasz-lasut in #531
  • Redact Secret data from debug logs by @jonasz-lasut in #533
  • security: Bump golang.org/x/text to v0.39.0 by @sergenyalcin in #537

New Contributors

Full Changelog: v1.2.1...v1.3.0

Don't miss a new provider-kubernetes release

NewReleases is sending notifications on new releases.