Skip to content

Releases: cert-manager/cert-manager

v1.15.0

05 Jun 15:39
3403251
Compare
Choose a tag to compare

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

cert-manager 1.15 promotes several features to beta, including GatewayAPI support (ExperimentalGatewayAPISupport), the ability to provide a subject in the Certificate that will be used literally in the CertificateSigningRequest (LiteralCertificateSubject) and the outputting of additional certificate formats (AdditionalCertificateOutputFormats).

Note

The cmctl binary have been moved to https://github.com/cert-manager/cmctl/releases.
For the startupapicheck Job you should update references to point at quay.io/jetstack/cert-manager-startupapicheck

Note

From this release, the Helm chart will no longer uninstall the CRDs when the chart is uninstalled. If you want the CRDs to be removed on uninstall use crds.keep=false when installing the Helm chart.

Community

Thanks again to all open-source contributors with commits in this release, including: @Pionerd, @SgtCoDFish, @ThatsMrTalbot, @andrey-dubnik, @bwaldrep, @eplightning, @erikgb, @findnature, @gplessis, @import-shiburin, @inteon, @jkroepke, @lunarwhite, @mangeshhambarde, @pwhitehead-splunk & @rodrigorfk, @wallrj.

Thanks also to the following cert-manager maintainers for their contributions during this release: @SgtCoDFish, @SpectralHiss, @ThatsMrTalbot, @hawksight, @inteon, @maelvls & @wallrj.

Equally thanks to everyone who provided feedback, helped users and raised issues on GitHub and Slack and joined our meetings!

Thanks also to the CNCF, which provides resources and support, and to the AWS open source team for being good community members and for their maintenance of the PrivateCA Issuer.

In addition, massive thanks to Venafi for contributing developer time and resources towards the continued maintenance of cert-manager projects.

Changes by Kind

Feature

  • GatewayAPI support has graduated to Beta. Add the --enable-gateway-api flag to enable the integration. (#6961, @ThatsMrTalbot)
  • Add support to specify a custom key alias in a JKS Keystore (#6807, @bwaldrep)
  • Add the ability to communicate with Vault via mTLS when strict client certificates is enabled at Vault server side (#6614, @rodrigorfk)
  • Added option to provide additional audiences in the service account auth section for vault (#6718, @andrey-dubnik)
  • Venafi Issuer now sends a cert-manager HTTP User-Agent header in all Venafi Rest API requests.
    For example: cert-manager-certificaterequests-issuer-venafi/v1.15.0+(linux/amd64)+cert-manager/ef068a59008f6ed919b98a7177921ddc9e297200. (#6865, @wallrj)
  • Add hint to validation error message to help users of external issuers more easily fix the issue if they specify a Kind but forget the Group (#6913, @SgtCoDFish)
  • Add support for numeric OID types in LiteralSubject. Eg. "1.2.3.4=String Value" (#6775, @inteon)
  • Promote the LiteralCertificateSubject feature to Beta. (#7030, @inteon)
  • Promoted the AdditionalCertificateOutputFormats feature gate to Beta (enabled by default). (#6970, @erikgb)
  • The Helm chart now allows you to supply extraObjects; a list of yaml manifests which will helm will install and uninstall with the cert-manager manifests. (#6424, @gplessis)
  • Update the Route53 provider to support fetching credentials using AssumeRoleWithWebIdentity (#6878, @pwhitehead-splunk)
  • Helm can now add optional hostAliases to cert-manager Pod to allow the DNS self-check to pass in custom scenarios. (#6456, @Pionerd)
  • Added a new Ingress annotation for copying specific Ingress annotations to Certificate's secretTemplate (#6839, @mangeshhambarde)
  • Added option to define additional token audiences for the Vault Kubernetes auth (#6744, @andrey-dubnik)
  • Allow cert-manager.io/allow-direct-injection in annotations (#6801, @jkroepke)

Design

Bug or Regression

  • BUGFIX: Fixes issue with JSON-logging, where only a subset of the log messages were output as JSON. (#6779, @inteon)
  • BUGFIX: JKS and PKCS12 stores now contain the full set of CAs specified by an issuer (#6806, @bwaldrep)
  • BUGFIX: cainjector leaderelection flag/config option defaults are missing (#6816, @inteon)
  • BUGFIX: cert-manager issuers incorrectly copied the critical flag from the CSR instead of re-calculating that field themselves. (#6724, @inteon)
  • Breaking Change: Fixed unintended certificate chain is used if preferredChain is configured. (#6755, @import-shiburin)
  • Bugfix: LiteralSubjects with a #= value can result in memory issues due to faulty BER parser (github.com/go-asn1-ber/asn1-ber). (#6770, @inteon)
  • DigitalOcean: Ensure that only TXT records are considered for deletion when cleaning up after an ACME challenge (#6875, @SgtCoDFish)
  • Fix backwards incompatible removal of default prometheus Service resource. (#6699, @inteon)
  • Fix broken cainjector image value in Helm chart (#6692, @SgtCoDFish)
  • Helm: Fix a bug in the logic that differentiates between 0 and an empty value. (#6713, @inteon)
  • Make sure the Azure SDK error messages are stable. (#6676, @inteon)
  • When using the literalSubject on a Certificate, the webhook validation for the common name now also points to the literalSubject. (#6767, @lunarwhite)
  • Bump golang.org/x/net to fix CVE-2023-45288 (#6929, @SgtCoDFish)
  • Fix ACME issuer being stuck waiting for DNS propagation when using Azure DNS with multiple instances issuing for the same FQDN (#6351, @eplightning)
  • Fix cainjector ConfigMap not mounted in the cainjector deployment. (#7055, @inteon)
  • Added disableAutoApproval and approveSignerNames Helm chart options. (#7054, @inteon)

Other (Cleanup or Flake)

  • ⚠️ Possibly breaking: Helm will now keep the CRDs when you uninstall cert-manager by default to prevent accidental data loss. (#6760, @inteon)
  • New crds.keep and crds.enabled Helm options can now be used instead of the installCRDs option. (#6760, @inteon)
  • Bump base images (#6840, @inteon)
  • Bump github.com/go-jose/go-jose to v3.0.3 to fix CVE-2024-28180 (#6854, @wallrj)
  • Removed deprecated util functions that have been replaced by the slices and k8s.io/apimachinery/pkg/util packages.
    Removed deprecated CSR functions which have been replaced with other functions in the pkg/util/pki package. (#6730, @inteon)
  • Upgrade go to 1.21.8: fixes CVE-2024-24783 (#6823, @inteon)
  • Upgrade go to latest version 1.22.1 (#6831, @inteon)
  • Upgrade google.golang.org/protobuf: fixing GO-2024-2611 (#6827, @inteon)
  • cmctl and kubectl cert-manger have been moved to the https://github.com/cert-manager/cmctl repo and will be versioned separately starting with cmctl v2.0.0 (#6663, @inteon)
  • Graduate the 'DisallowInsecureCSRUsageDefinition' feature gate to GA. (part 2) (#6963, @inteon)
  • Remove deprecated pkg/util/pki/ParseSubjectStringToRawDERBytes function. (#6994, @inteon)
  • Upgrade Kind to v0.23.0 and update supported node image digests (#7020, @github-actions[bot])
  • If the --controllers flag only specifies disabled controllers, the default controllers are now enabled implicitly. (#7054, @inteon)
  • Upgrade to Go 1.22.3, fixing GO-2024-2824. (#6996, @github-actions[bot])

v1.15.0-beta.2

28 May 13:19
3403251
Compare
Choose a tag to compare
v1.15.0-beta.2 Pre-release
Pre-release

This is the second beta release of cert-manager 1.15, which will be released on 2024-06-05.

Note

The cmctl and kubectl_cert-manager binaries have been moved to https://github.com/cert-manager/cmctl/releases.

📜 Changes since v1.15.0-beta.1

Feature

  • If the --controllers flag only specifies disabled controllers, the default controllers are now enabled implicitly.
    Added disableAutoApproval and approveSignerNames Helm chart options. (#7054, @cert-manager-bot)

Bug or Regression

  • Helm BUGFIX: the cainjector ConfigMap was not mounted in the cainjector deployment. (#7055, @cert-manager-bot)

v1.15.0-beta.1

21 May 14:57
ebb5281
Compare
Choose a tag to compare
v1.15.0-beta.1 Pre-release
Pre-release

This is the first successful beta release of cert-manager 1.15, which will be released on 2024-06-05.

An issue was found during the release of v1.15.0-beta.0 and so that version was skipped.

Note

The cmctl and kubectl_cert-manager binaries have been moved to https://github.com/cert-manager/cmctl/releases.

📜 Changes since v1.15.0-alpha.0

Feature

  • Add hint to validation error message to help users of external issuers more easily fix the issue if they specify a Kind but forget the Group (#6913, @SgtCoDFish)
  • Add support for numeric OID types in LiteralSubject. Eg. "1.2.3.4=String Value" (#6775, @inteon)
  • Promote the LiteralCertificateSubject feature to Beta. (#7030, @inteon)
  • Promoted the AdditionalCertificateOutputFormats feature gate to Beta (enabled by default). (#6970, @erikgb)
  • The Helm chart now allows you to supply extraObjects; a list of yaml manifests which will helm will install and uninstall with the cert-manager manifests. (#6424, @gplessis)
  • Update the Route53 provider to support fetching credentials using AssumeRoleWithWebIdentity (#6878, @pwhitehead-splunk)
  • [Helm] Add optional hostAliases to cert-manager pod to allow the DNS self-check to pass in custom scenarios. (#6456, @Pionerd)
  • Graduate the DisallowInsecureCSRUsageDefinition feature gate to GA. (#6927 and #6963, @yj-yoo and @inteon)
  • GatewayAPI support has graduated to Beta. Add the --enable-gateway-api flag to enable the integration. (#6961, @ThatsMrTalbot)

Bug or Regression

  • Bump golang.org/x/net to fix CVE-2023-45288 (#6929, @SgtCoDFish)
  • DigitalOcean: Ensure that only TXT records are considered for deletion when cleaning up after an ACME challenge (#6875, @SgtCoDFish)
  • Fix ACME issuer being stuck waiting for DNS propagation when using Azure DNS with multiple instances issuing for the same FQDN (#6351, @eplightning)

Other (Cleanup or Flake)

  • Remove deprecated pkg/util/pki/ParseSubjectStringToRawDERBytes function. (#6994, @inteon)
  • Upgrade Kind to v0.23.0 and update supported node image digests (#7020, @github-actions[bot])
  • Upgrade to Go 1.22.3, fixing GO-2024-2824. (#6996, @github-actions[bot])

Design

v1.14.5

25 Apr 11:37
v1.14.5
6a09152
Compare
Choose a tag to compare

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

v1.14.5 fixes a bug in the DigitalOcean DNS-01 provider which could cause incorrect DNS records to be deleted when using a domain with a CNAME. Special thanks to @BobyMCbobs for reporting this issue and testing the fix!

It also patches CVE-2023-45288.

Known Issues

  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see 1.14 release notes for more information.

Changes

Bug or Regression

v1.13.6

25 Apr 10:37
v1.13.6
d9235ef
Compare
Choose a tag to compare

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

v1.13.6 fixes a bug in the DigitalOcean DNS-01 provider which could cause incorrect DNS records to be deleted when using a domain with a CNAME. Special thanks to @BobyMCbobs for reporting this issue and testing the fix!

It also patches CVE-2023-45288.

Known Issues

  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see 1.14 release notes for more information.

Changes

Bug or Regression

v1.12.10

25 Apr 08:50
v1.12.10
4131d77
Compare
Choose a tag to compare

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

v1.12.10 fixes a bug in the DigitalOcean DNS-01 provider which could cause incorrect DNS records to be deleted when using a domain with a CNAME. Special thanks to @BobyMCbobs for reporting this issue and testing the fix!

It also patches CVE-2023-45288.

⚠️ Known Issues

  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see release docs for more info and mitigations

  • If you misconfigure two Certificate resources to have the same target Secret resource, cert-manager will generate a MANY CertificateRequests, possibly causing high CPU usage and/ or high costs due to the large number of certificates issued (see #6406).
    This problem was resolved in v1.13.2 and other later versions, but the fix cannot be easily backported to v1.12.x. We recommend using v1.12.x with caution (avoid misconfigured Certificate resources) or upgrading to a newer version.

Changes

Bug or Regression

v1.15.0-alpha.0

29 Mar 12:44
b61de55
Compare
Choose a tag to compare
v1.15.0-alpha.0 Pre-release
Pre-release

This is the first alpha release of cert-manager 1.15, which will be released in April or May 2024. The aim of this first alpha is to let people try out using serviceAccountRef with an external Vault. Read the page serviceAccountRef with external Vault to know more.

Note

The cmctl and kubectl_cert-manager binaries have been moved to https://github.com/cert-manager/cmctl/releases.

📜 Changes since v1.14.0

Feature

  • Add support to specify a custom key alias in a JKS Keystore (#6807, @bwaldrep)
  • Add the ability to communicate with Vault via mTLS when strict client certificates is enabled at Vault server side (#6614, @rodrigorfk)
  • Added an option to provide additional audiences in the service account auth section for Vault. Read the page serviceAccountRef with external Vault to know more. (#6718, @andrey-dubnik)
  • Venafi Issuer now sends a cert-manager HTTP User-Agent header in all Venafi Rest API requests.
    For example: cert-manager-certificaterequests-issuer-venafi/v1.15.0+(linux/amd64)+cert-manager/ef068a59008f6ed919b98a7177921ddc9e297200. (#6865, @wallrj)
  • Added a new Ingress annotation for copying specific Ingress annotations to Certificate's secretTemplate (#6839, @mangeshhambarde)
  • Added option to define additional token audiences for the Vault Kubernetes auth (#6744, @andrey-dubnik)
  • Allow cert-manager.io/allow-direct-injection in annotations (#6801, @jkroepke)
  • ⚠️ Possibly breaking: Helm will now keep the CRDs when you uninstall cert-manager by default to prevent accidental data loss
    Add new crds.keep and crds.enabled Helm options which will replace the installCRDs option.

Bug or Regression

  • BUGFIX: Fixes issue with JSON-logging, where only a subset of the log messages were output as JSON. (#6779, @inteon)
  • BUGFIX: JKS and PKCS12 stores now contain the full set of CAs specified by an issuer (#6806, @bwaldrep)
  • BUGFIX: cainjector leaderelection flag/ config option defaults are missing (#6816, @inteon)
  • BUGFIX: cert-manager issuers incorrectly copied the critical flag from the CSR instead of re-calculating that field themselves. (#6724, @inteon)
  • Breaking Change: Fixed unintended certificate chain is used if preferredChain is configured. (#6755, @import-shiburin)
  • Bugfix: LiteralSubjects with a #= value can result in memory issues due to faulty BER parser (github.com/go-asn1-ber/asn1-ber). (#6770, @inteon)
  • Fix backwards incompatible removal of default prometheus Service resource. (#6699, @inteon)
  • Fix broken cainjector image value in Helm chart (#6692, @SgtCoDFish)
  • Helm: Fix a bug in the logic that differentiates between 0 and an empty value. (#6713, @inteon)
  • Make sure the Azure SDK error messages are stable. (#6676, @inteon)
  • When using the literalSubject on a Certificate, the webhook validation for the common name now also points to the literalSubject. (#6767, @lunarwhite)

Other (Cleanup or Flake)

v1.14.4

08 Mar 12:32
f5ddc41
Compare
Choose a tag to compare

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

cert-manager 1.14 brings a variety of features, security improvements and bug fixes, including: support for creating X.509 certificates with "Other Name" fields, and support for creating CA certificates with "Name Constraints" and "Authority Information Accessors" extensions.

⚠️ Known Issues

  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see release docs for more info and mitigations

ℹ️ Documentation

Release notes
Upgrade notes
Installation instructions

🔧 Breaking changes

See Breaking changes in v1.14.0 release notes

📜 Changes since v1.14.3

Bug or Regression

  • Allow cert-manager.io/allow-direct-injection in annotations (#6809, @jetstack-bot)
  • BUGFIX: JKS and PKCS12 stores now contain the full set of CAs specified by an issuer (#6812, @jetstack-bot)
  • BUGFIX: cainjector leaderelection flag/ config option defaults are missing (#6819, @jetstack-bot)

Other (Cleanup or Flake)

v1.13.5

08 Mar 12:09
e4fc764
Compare
Choose a tag to compare

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

⚠️ Known Issues

  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see release docs for more info and mitigations

ℹ️ Documentation

Release notes
Upgrade notes
Installation instructions

🔧 Breaking changes

See Breaking changes in v1.13.0 release notes

📜 Changes since v1.13.4

Bug or Regression

  • Allow cert-manager.io/allow-direct-injection in annotations (#6810, @jetstack-bot)
  • BUGFIX: JKS and PKCS12 stores now contain the full set of CAs specified by an issuer (#6814, @inteon)
  • BUGFIX: fix race condition due to registering and using global runtime.Scheme variables (#6832, @inteon)

Other (Cleanup or Flake)

v1.12.9

08 Mar 12:08
6aae5ec
Compare
Choose a tag to compare

cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.

⚠️ Known Issues

  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see release docs for more info and mitigations

  • If you misconfigure two Certificate resources to have the same target Secret resource, cert-manager will generate a MANY CertificateRequests, possibly causing high CPU usage and/ or high costs due to the large number of certificates issued (see #6406).
    This problem was resolved in v1.13.2 and other later versions, but the fix cannot be easily backported to v1.12.x. We recommend using v1.12.x with caution (avoid misconfigured Certificate resources) or upgrading to a newer version.

ℹ️ Documentation

Release notes
Upgrade notes
Installation instructions

🔧 Breaking changes

See Breaking changes in v1.12.0 release notes

📜 Changes since v1.12.8

Bug or Regression

  • Allow cert-manager.io/allow-direct-injection in annotations (#6811, @jetstack-bot)
  • BUGFIX: JKS and PKCS12 stores now contain the full set of CAs specified by an issuer (#6813, @inteon)
  • BUGFIX: fix race condition due to registering and using global runtime.Scheme variables (#6833, @inteon)

Other (Cleanup or Flake)