cert-manager

Automatically provision and manage TLS certificates in Kubernetes

APACHE-2.0 License

Stars
11.4K
Committers
456

Bot releases are visible (Hide)

cert-manager - v1.12.2

Published by jetstack-release-bot over 1 year ago

Known issues

Changes by Kind

Bugfixes

  • BUGFIX: cmctl check api --wait 0 exited without output; we now make sure we perform the API check at least once (#6116, @jetstack-bot)
cert-manager - v1.12.1

Published by jetstack-release-bot over 1 year ago

v1.12.1

This release contains a couple dependency bumps and changes to ACME external webhook library.

Known issues

Changes by Kind

Other (Cleanup or Flake)

  • Don't run API Priority and Fairness controller in webhook's extension apiserver (#6085, @irbekrm)
  • Adds a warning for folks to not use controller feature gates helm value to configure webhook feature gates (#6100, @irbekrm)

Uncategorized

cert-manager - v1.11.3

Published by jetstack-release-bot over 1 year ago

v1.11.3 mostly contains ACME library changes. API Priority and Fairness feature is now disabled in the external webhook's extension apiserver.

Changes by Kind

Other (Cleanup or Flake)

  • API Priority and Fairness controller is now disabled in extension apiserver for DNS webhook implementation. (#6092, @irbekrm)
  • Adds a warning for folks to not use controller feature gates helm value to configure webhook feature gates (#6101, @irbekrm)
cert-manager - v1.12.0

Published by jetstack-release-bot over 1 year ago

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

cert-manager v1.12 brings support for JSON logging, a lower memory footprint, support for ephemeral service account tokens with Vault, improved dependency management and support for the ingressClassName field.

The full release notes are available at https://cert-manager.io/docs/release-notes/release-notes-1.12.

Known issues

Community

Thanks again to all open-source contributors with commits in this release, including:

  • @malovme
  • @e96wic
  • @ExNG
  • @waterfoul
  • @jkroepke
  • @andrewsomething
  • @yulng
  • @tobotg
  • @maumontesilva
  • @avi-08
  • @vinzent
  • @TrilokGeer
  • @g-gaston
  • @james-callahan
  • @lucacome
  • @yanggangtony
  • @vidarno
  • @ctrought
  • @Robfz
  • @dsonck92
  • @rayandas
  • @olekfur
  • @ptrc-n
  • @bradjones1
  • @gdvalle

Thanks also to the following cert-manager maintainers for their contributions during this release:

  • @inteon
  • @wallrj
  • @maelvls
  • @SgtCoDFish
  • @irbekrm
  • @jakexks
  • @JoshVanL
  • @munnerz

Equally thanks to everyone who provided feedback, helped users and raised issues on Github and Slack, joined our meetings and talked to us at Kubecon!

Special thanks to @erikgb for continuously great input and feedback and to @lucacome for always ensuring that our kube deps are up to date!

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 Jetstack (by Venafi) for contributing developer time and resources towards the continued maintenance of cert-manager projects.

Changes by Kind

Feature

  • POTENTIALLY BREAKING: the cert-manager binaries and some tests have been split into separate Go modules, allowing them to be easily patched independently. This should have no impact if you simply run cert-manager in your cluster. If you import cert-manager binaries, integration tests or end-to-end tests in Go, you may need to make code changes in response to this. See https://cert-manager.io/docs/contributing/importing/ for more details. (#5880, @SgtCoDFish)
  • Added support for JSON logging (using --logging-format=json) (#5828, @malovme)
  • Added the --concurrent-workers flag that lets you control the number of concurrent workers for each of our controllers. (#5936, @inteon)
  • Adds acme.solvers.http01.ingress.podTemplate.spec.imagePullSecrets field to issuer spec to allow to specify image pull secrets for the ACME HTTP01 solver pod. (#5801, @malovme)
  • Cainjector:
    • New flags were added to the cainjector binary. They can be used to modify what injectable kinds are enabled. If cainjector is only used as a cert-manager's internal component it is sufficient to only enable validatingwebhookconfigurations and mutatingwebhookconfigurations injectable resources; disabling the rest can improve memory consumption. By default all are enabled.
    • The --watch-certs flag was renamed to --enable-certificates-data-source. (#5766, @irbekrm)
  • Helm: Added PodDisruptionBudgets for cert-manager components to the Helm chart (disabled by default). (#3931, @e96wic)
  • Helm: Egress 6443/TCP is now allowed in the webhook. This is required for OpenShift and OKD clusters for which the Kubernetes API server listens on port 6443 instead of 443. (#5788, @ExNG)
  • Helm: you can now add volumes and volume mounts via Helm variables for the cainjector, webhook, and startupapicheck. (#5668, @waterfoul)
  • Helm: you can now enable the flags --dns01-recursive-nameservers, --enable-certificate-owner-ref, and --dns01-recursive-nameservers-only through Helm values. (#5614, @jkroepke)
  • The DigitalOcean issuer now sets a cert-manager user agent string. (#5869, @andrewsomething)
  • The HTTP-01 solver can now be configured to create Ingresses with an ingressClassName. The credit goes to @dsonck92 for implementing the initial PR. (#5849, @maelvls)
  • The Vault issuer can now be used with ephemeral Kubernetes tokens. With the new serviceAccountRef field, cert-manager generates a short-lived token associated to the service account to authenticate to Vault. Along with this new feature, we have added validation logic in the webhook in order to check the vault.auth field when creating an Issuer or ClusterIssuer. Previously, it was possible to create an Issuer or ClusterIssuer with an invalid value for vault.auth. (#5502, @maelvls)
  • The cert-manager controller container of the controller Pod now has a /livez endpoint and a default liveness probe, which fails if leader election has been lost and for some reason the process has not exited. The liveness probe is disabled by default. (#5962, @wallrj)
  • Upgraded Gateway API to v0.6.0. (#5768, @yulng)
  • Webhook now logs requests to mutating/validating webhook (with --v=5 flag) (#5975, @tobotg)

Design

  • Certificate issuances are always failed (and retried with a backoff) for denied or invalid CertificateRequests.
    This is not necessarily a breaking change as due to a race condition this may already have been the case. (#5887, @irbekrm)
  • The cainjector controller can now use server-side apply to patch mutatingwebhookconfigurations, validatingwebhookconfigurations, apiservices, and customresourcedefinitions. This feature is currently in alpha and is not enabled by default. To enable server-side apply for the cainjector, add the flag --feature-gates=ServerSideApply=true to the deployment. (#5991, @inteon)

Documentation

Bug or Regression

  • Cmctl renew now prints an error message unless Certificate name(s) or --all are supplied (#5896, @maumontesilva)
  • Cmctl: In order work around a hardcoded Kubernetes version in Helm, we now use a fake kube-apiserver version when generating the helm template when running cmctl x install. (#5720, @irbekrm)
  • Fix development environment and go vendoring on Linux arm64. (#5810, @SgtCoDFish)
  • Fix ordering of remote git tags when preparing integration tests (#5910, @SgtCoDFish)
  • Helm: the flag --acme-http01-solver-image given to the variable acmesolver.extraArgs now has precedence over the variable acmesolver.image. (#5693, @SgtCoDFish)
  • Ingress and Gateway resources will not be synced if deleted via foreground cascading. (#5878, @avi-08)
  • The auto-retry mechanism added in VCert 4.23.0 and part of cert-manager 1.11.0 (#5674) has been found to be faulty. Until this issue is fixed upstream, we now use a patched version of VCert. This patch will slowdown the issuance of certificates by 9% in case of heavy load on TPP. We aim to release at an ulterior date a patch release of cert-manager to fix this slowdown. (#5805, @inteon)
  • Upgrade to go 1.19.6 along with newer helm and containerd versions and updated base images (#5813, @SgtCoDFish)
  • When using the jks and pkcs12 fields on a Certificate resource with a CA issuer that doesn't set the ca.crt in the Secret resource, cert-manager no longer loop trying to copy ca.crt into truststore.jks or truststore.p12. (#5972, @vinzent)
  • When using the literalSubject field on a Certificate resource, the IPs, URIs, DNS names, and email addresses segments are now properly compared. (#5747, @inteon)

Other (Cleanup or Flake)

  • ACME account registration is now re-verified if account key is manually changed. (#5949, @TrilokGeer)
  • Add make go-workspace target for generating a go.work file for local development (#5935, @SgtCoDFish)
  • Added a Makefile target to build a standalone E2E test binary: make e2e-build (#5804, @wallrj)
  • Bump keystore-go to v4.4.1 to work around an upstream rewrite of history (#5724, @g-gaston)
  • Bump the distroless base images (#5929, @maelvls)
  • Bumps base images (#5793, @irbekrm)
  • Cainjector memory improvements: removes second cache of secrets, CRDs, validating/mutatingwebhookconfigurations and APIServices that should reduce memory consumption by about half.
    **BREAKING:*- users who are relying on cainjector to work when certificates.cert-manager.io CRD is not installed in the cluster, now need to pass --watch-certificates=false flag to cainjector else it will not start.
    Users who only use cainjector as cert-manager's internal component and have a large number of Certificate resources in cluster can pass --watch-certificates=false to avoid cainjector from caching Certificate resources and save some memory. (#5746, @irbekrm)
  • Cainjector now only reconciles annotated objects of injectable kind. (#5764, @irbekrm)
  • Container images are have an OCI source label (#5722, @james-callahan)
  • Enable cmctl to be imported by third parties (#6050, @jetstack-bot)
  • The acmesolver pods created by cert-manager now have automountServiceAccountToken turned off. (#5754, @wallrj)
  • The controller binary now uses much less memory on Kubernetes clusters with large or numerous Secret resources. The controller now ignores the contents of Secrets that aren't relevant to cert-manager. This functionality is currently placed behind SecretsFilteredCaching feature flag. The filtering mechanism might, in some cases, slightly slow down issuance or cause additional requests to kube-apiserver because unlabelled Secret resources that cert-manager controller needs will now be retrieved from kube-apiserver instead of being cached locally. To prevent this from happening, users can label all issuer Secret resources with the controller.cert-manager.io/fao: true label. (#5824, @irbekrm)
  • The controller memory usage has been further decreased by ignoring annotations, labels and managed fields when caching Secret resources. (#5966, @irbekrm)
  • The controller now makes fewer calls to the ACME server.
    POTENTIALLY BREAKING: this PR slightly changes how the name of the Challenge resources are calculated. To avoid duplicate issuances due to the Challenge resource being recreated, ensure that there is no in-progress ACME certificate issuance when you upgrade to this version of cert-manager. (#5901, @irbekrm)
  • The memory usage of the controller has been reduced by only caching the metadata of Pods and Services. (#5976, @irbekrm)
  • The number of calls made to the ACME server during the controller startup has been reduced by storing the private key hash in the Issuer's status. (#6006, @vidarno)
  • Updates Kubernetes libraries to v0.26.2. (#5820, @lucacome)
  • Updates Kubernetes libraries to v0.26.3. (#5907, @lucacome)
  • Updates Kubernetes libraries to v0.27.1. (#5961, @lucacome)
  • Updates base images (#5832, @irbekrm)
  • Upgrade to Go 1.20 (#5969, @wallrj)
  • Upgrade to go 1.19.5 (#5712, @yanggangtony)
  • Validates that certificate.spec.secretName is a valid Secret name (#5967, @avi-08)
  • We are now testing with Kubernetes v1.27.1 by default. (#5979, @irbekrm)
  • certificate.spec.secretName Secrets will now be labelled with controller.cert-manager.io/fao label (#5660, @irbekrm)

Uncategorized

  • We have replaced our python boilerplate checker with an installed Go version, removing the need to have Python installed when developing or building cert-manager. (#6000, @SgtCoDFish)
cert-manager - v1.12.0-beta.2

Published by jetstack-release-bot over 1 year ago

Changelog since v1.12.0-beta.1

Changes by Kind

Other (Cleanup or Flake)

cert-manager - v1.11.2

Published by jetstack-release-bot over 1 year ago

Changelog since v1.11.1

Changes by Kind

Bug or Regression

Other (Cleanup or Flake)

  • Bump the distroless base images (#5930, @maelvls)

  • Bumps Docker libraries to fix vulnerability scan alert for CVE-2023-28840, CVE-2023-28841, CVE-2023-28842 (#6037, @irbekrm)
    Cert-manager was not actually affected by these CVEs which are all to do with Docker daemon's overlay network.

  • Bumps Kube libraries v0.26.0 -> v0.26.4 (#6038, @irbekrm)
    This might help with running cert-manager v1.11 on Kubernetes v1.27, see #6038

cert-manager - v1.12.0-beta.1

Published by jetstack-release-bot over 1 year ago

v1.12.0-beta.1

⚠️ cert-manager v1.12.0-beta.0 is a pre-release beta version intended for testing. It might not be suitable for production uses.

Changelog since v1.12.0-beta.0

Changes by Kind

Feature

  • Added support for json logging (using --logging-format=json) (#5828, @malovme)
  • The cert-manager controller container of the controller Pod now has a /livez endpoint and a default liveness probe, which fails if leader election has been lost and for some reason the process has not exited. The liveness probe is disabled by default. (#5962, @wallrj)
  • Webhook now logs requests to mutating/validating webhook (with --v=5 flag) (#5975, @tobotg)

Design

  • ServerSideApply: The feature gate ServerSideApply=true configures the ca-injector controller to use Kubernetes Server Side Apply on CA Injector injectable target resources. (#5991, @inteon)

Documentation

Bug or Regression

  • Adds missing comparisons for certain fields which were incorrectly skipped if a LiteralSubject was set (#5747, @inteon)
  • Check JKS/PKCS12 truststore in Secrets only if issuer provides the CA (#5972, @vinzent)

Other (Cleanup or Flake)

  • Caches metadata only for filtered Pods and Services (#5976, @irbekrm)
  • Storing the latest private key hash on issuer status prevents unnecessary calls to ACME server during controller startup (#6006, @vidarno)
  • Tests on Kubernetes v1.27.1 by default. (#5979, @irbekrm)
  • Updates Kubernetes libraries to v0.27.1. (#5961, @lucacome)

Uncategorized

  • Replaces our python boilerplate checker with an installed golang version, removing the need to have Python installed when developing or building cert-manager (#6000, @SgtCoDFish)
cert-manager - v1.12.0-beta.0

Published by jetstack-release-bot over 1 year ago

v1.12.0-beta.0

⚠️ cert-manager v1.12.0-beta.0 is a pre-release beta version intended for testing. It might not be suitable for production uses.

Changelog since v1.12.0-alpha.2

Changes by Kind

Feature

  • Added PodDisruptionBudgets for cert-manager components to the Helm chart (disabled by default). (#3931, @e96wic)
  • Added the --concurrent-workers flag that lets you control the number of concurrent workers for each of our controllers. (#5936, @inteon)
  • Cainjector:
    • adds a couple new flags to cainjector that can be used to modify what injectable kinds are enabled. If cainjector is only used as a cert-manager's internal component it is sufficient to only enable validatingwebhookconfigurations and mutatingwebhookconfigurations injectables- disabling the rest can improve memory consumption. By default all are enabled.
    • renames --watch-certs flag to --enable-certificates-data-source (#5766, @irbekrm)

Other (Cleanup or Flake)

  • ACME account registration is now re-verified if account key is manually changed. (#5949, @TrilokGeer)
  • Add make go-workspace target for generating a go.work file for local development (#5935, @SgtCoDFish)
  • Bump the distroless base images (#5929, @maelvls)
  • Ensures that annotations, labels and managed fields are not cached for partial metadata Secrets. (#5966, @irbekrm)
  • Filters Secret caching to ensure only relevant Secrets are cached in full. This should reduce controller's memory consumption in clusters with a large number of cert-manager unrelated Secret resources. The filtering functionality is currently placed behind SecretsFilteredCaching feature flag.
    The filtering mechanism might, in some cases, slightly slow down issuance or cause additional requests to kube apiserver, because unlabelled Secrets that cert-manager controller needs will now be retrieved from kube apiserver instead of being cached locally. To prevent this from happening, users can label all issuer Secrets with controller.cert-manager.io/fao: true label. (#5824, @irbekrm)
  • Updates Kubernetes libraries to v0.26.3. (#5907, @lucacome)
  • Upgrade to Go 1.20 (#5969, @wallrj)
  • Validates that certificate.spec.secretName is a valid Secret name (#5967, @avi-08)
cert-manager - v1.12.0-alpha.2

Published by jetstack-release-bot over 1 year ago

⚠️ cert-manager v1.12.0-alpha.2 is a pre-release alpha version intended for testing. It might not be suitable for production uses.

Changes since v1.12.0-alpha.1

Feature

  • POTENTIALLY BREAKING: Separates cert-manager binaries and some tests into separate go modules, allowing them to be easily patched independently. This should have no impact if you simply run cert-manager in your cluster. If you import cert-manager binaries, integration tests or end-to-end tests in Golang, you may need to make code changes in response to this. See https://cert-manager.io/docs/contributing/importing/ for more details (#5880, @SgtCoDFish)

Bug or Regression

  • Fix ordering of remote git tags when preparing integration tests (#5910, @SgtCoDFish)

Other (Cleanup or Flake)

  • Reduces the amount of ACME calls during an ACME certificate issuance.
    Warning: this PR slightly changes how Challenge names are calculated. To avoid duplicate issuances due to Challenges being recreated, ensure that there is no in-progress ACME certificate issuance when you upgrade to this version of cert-manager. (#5901, @irbekrm)
cert-manager - v1.11.1

Published by jetstack-release-bot over 1 year ago

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

In v1.11.1, we updated the base images used for cert-manager containers. In addition, the users of the Venafi issuer will see less certificates repeatedly failing.

If you are a user of Venafi TPP and have been having issues with the error message This certificate cannot be processed while it is in an error state. Fix any errors, and then click Retry, please use this version.

Changes since v1.11.0

Bug or Regression

  • Bump helm and other dependencies to fix CVEs, along with upgrading go and base images (#5815, @SgtCoDFish)
  • Bump the distroless base images (#5930, @maelvls)
  • The auto-retry mechanism added in VCert 4.23.0 and part of cert-manager 1.11.0 (#5674) has been found to be faulty. Until this issue is fixed upstream, we now use a patched version of VCert. This patch will slowdown the issuance of certificates by 9% in case of heavy load on TPP. We aim to release at an ulterior date a patch release of cert-manager to fix this slowdown. (#5819, @maelvls)
  • Use a fake-kube apiserver version when generating helm template in cmctl x install, to work around a hardcoded Kubernetes version in Helm. (#5726, @SgtCoDFish)

Other (Cleanup or Flake)

  • Bump keystore-go to v4.4.1 to work around an upstream rewrite of history (#5730, @SgtCoDFish)
cert-manager - v1.12.0-alpha.1

Published by jetstack-release-bot over 1 year ago

⚠️ cert-manager v1.12.0-alpha.1 is a pre-release alpha version intended for testing. It might not be suitable for production uses.

Changes since v1.12.0-alpha.0

Feature

  • Adds acme.solvers.http01.ingress.podTemplate.spec.imagePullSecrets field to issuer spec to allow to specify image pull secrets for the ACME HTTP01 solver pod. (#5801, @malovme)
  • The DigitalOcean issuer now sets a cert-manager user agent string. (#5869, @andrewsomething)
  • The HTTP-01 solver can now be configured to create Ingresses with an ingressClassName. The credit goes to @dsonck92 for implementing the initial PR. (#5849, @maelvls)
  • Upgraded Gateway API to v0.6.0. (#5768, @yulng)

Design

  • Certificate issuances are always failed (and retried with a backoff) for denied or invalid CertificateRequests.
    This is not necessarily a breaking change as due to a race condition this may already have been the case. (#5887, @irbekrm)

Bug or Regression

  • Cmctl renew now prints an error message unless Certificate name(s) or --all are supplied (#5896, @maumontesilva)
  • Fix development environment and go vendoring on Linux ARM64. (#5810, @SgtCoDFish)
  • Ingress and Gateway resources will not be synced if deleted via foreground cascading. (#5878, @avi-08)
  • The auto-retry mechanism added in VCert 4.23.0 and part of cert-manager 1.11.0 (#5674) has been found to be faulty. Until this issue is fixed upstream, we now use a patched version of VCert. This patch will slowdown the issuance of certificates by 9% in case of heavy load on TPP. We aim to release at an ulterior date a patch release of cert-manager to fix this slowdown. (#5805, @inteon)
  • Upgrade to go 1.19.6 along with newer helm and containerd versions and updated base images (#5813, @SgtCoDFish)

Other (Cleanup or Flake)

  • Added a Makefile target to build a standalone E2E test binary: make e2e-build (#5804, @wallrj)
  • Updates Kubernetes libraries to v0.26.2. (#5820, @lucacome)
  • Updates base images (#5832, @irbekrm)

Uncategorized

  • Add 6443/TCP to webhook egress rules (#5788, @ExNG)
cert-manager - v1.11.1-beta.0

Published by jetstack-release-bot over 1 year ago

⚠️ cert-manager v1.11.1-beta.0 is a pre-release patch version intended for testing and might not be suitable for production uses.

If you are a user of Venafi TPP and have been having issues with the error message This certificate cannot be processed while it is in an error state. Fix any errors, and then click Retry, please try this version.

Changes since v1.11.0

Bug or Regression

  • The auto-retry mechanism added in VCert 4.23.0 and part of cert-manager 1.11.0 (#5674) has been found to be faulty. Until this issue is fixed upstream, we now use a patched version of VCert. This patch will slowdown the issuance of certificates by 9% in case of heavy load on TPP. We aim to release at an ulterior date a patch release of cert-manager to fix this slowdown. (#5819, @maelvls)
  • Use a fake kube apiserver version when generating helm template in cmctl x install, to work around a hardcoded Kubernetes version in Helm. (#5726, @SgtCoDFish)
  • Bump helm and other dependencies to fix CVEs, along with upgrading go and base images (#5815, @SgtCoDFish)

Other

  • Bump keystore-go to v4.4.1 to work around an upstream rewrite of history (#5730, @SgtCoDFish)
cert-manager - v1.12.0-alpha.0

Published by jetstack-release-bot over 1 year ago

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

⚠️ cert-manager v1.12.0-alpha.0 is a pre-release alpha version intended for testing. It might not be suitable for production uses.

Changes since v1.11.0

Feature

  • Helm: you can now add volumes and volumeMounts via Helm variables for the cainjector, webhook, and startupapicheck. (#5668, @waterfoul)
  • The Vault issuer can now be used with ephemeral Kubernetes tokens. With the new serviceAccountRef field, cert-manager generates a short-lived token associated to the service account to authenticate to Vault. Along with this new feature, we have added validation logic in the webhook in order to check the vault.auth field when creating an Issuer or ClusterIssuer. Previously, it was possible to create an Issuer or ClusterIssuer with an invalid value for vault.auth. (#5502, @maelvls)
  • Helm: you can now enable the flags --dns01-recursive-nameservers, --enable-certificate-owner-ref, and --dns01-recursive-nameservers-only through Helm values. (#5614, @jkroepke)

Bug or Regression

  • Helm: the flag --acme-http01-solver-image given to the variable acmesolver.extraArgs now has precedence over the variable acmesolver.image. (#5693, @SgtCoDFish)
  • Use a fake kube apiserver version when generating helm template in cmctl x install, to work around a hardcoded Kubernetes version in Helm. (#5720, @irbekrm)

Other (Cleanup or Flake)

  • Bump keystore-go to v4.4.1 to work around an upstream rewrite of history (#5724, @g-gaston)
  • Bumps base images (#5793, @irbekrm)
  • Cainjector memory improvements: removes second cache of secrets, CRDs, validating/mutatingwebhookconfigurations and APIServices that should reduce memory consumption by about half. BREAKING: users who are relying on cainjector to work when certificates.cert-manager.io CRD is not installed in the cluster, now need to pass --watch-certificates=false flag to cainjector else it will not start.
    Users who only use cainjector as cert-manager's internal component and have a large number of Certificate resources in cluster can pass --watch-certificates=false to avoid cainjector from caching Certificate resources and save some memory. (#5746, @irbekrm)
  • Cainjector now only reconciles annotated objects of injectable kind. (#5764, @irbekrm)
  • Upgrade to go 1.19.5 (#5712, @yanggangtony)
  • certificate.spec.secretName Secrets will now be labelled with controller.cert-manager.io/fao label (#5660, @irbekrm)

Uncategorized

  • Container images are have an OCI source label (#5722, @james-callahan)
  • Disable automountServiceAccountToken in the ACME HTTP01 solver Pod (#5754, @wallrj)
cert-manager - v1.11.0

Published by jetstack-release-bot almost 2 years ago

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

v1.11.0 includes a drastic reduction in cert-manager's runtime memory usage, a slew of improvements to AKS integrations and various other tweaks, fixes and improvements, all towards cert-manager's goal of being the best way to handle certificates in modern Cloud Native applications.

Community

Thanks again to all open-source contributors with commits in this release, including:

  • @cmcga1125
  • @karlschriek
  • @lvyanru8200
  • @mmontes11
  • @pinkfloydx33
  • @sathyanarays
  • @weisdd
  • @yann-soubeyrand
  • @joycebrum
  • @Git-Jiro
  • @thib-mary
  • @yk
  • @RomanenkoDenys
  • @lucacome
  • @yanggangtony

Thanks also to the following cert-manager maintainers for their contributions during this release:

  • @wallrj
  • @irbekrm
  • @maelvls
  • @SgtCoDFish
  • @inteon
  • @jakexks
  • @JoshVanL

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 Jetstack (by Venafi) for contributing developer time and resources towards the continued maintenance of cert-manager projects.

Changes since cert-manager v1.10

For an overview of new features, see the v1.11 release notes!

Feature

  • Helm: allow configuring the image used by ACME HTTP-01 solver (#5554, @yann-soubeyrand)
  • Add the --max-concurrent-challenges controller flag to the helm chart (#5638, @lvyanru8200)
  • Adds the ability to specify a custom CA bundle in Issuers when connecting to an ACME server (#5644, @SgtCoDFish)
  • Enable testing against Kubernetes 1.26 and test with Kubernetes 1.26 by default (#5646, @SgtCoDFish)
  • Experimental make targets for pushing images to an OCI registry using ko and redeploying cert-manager to the cluster referenced by your current KUBECONFIG context. (#5655, @wallrj)
  • Add ability to run acmesolver pods as root if desired. The default is still to run as non-root. (#5546, @cmcga1125)
  • Add support for DC and UID in LiteralSubject field, all mandatory OIDs are now supported for LDAP certificates (rfc4514). (#5587, @SpectralHiss)
  • Add support for Workload Identity to AzureDNS resolver (#5570, @weisdd)
  • Breaking: updates the gateway API integration to use the more stable v1beta1 API version. Any users of the cert-manager ExperimentalGatewayAPISupport alpha feature must ensure that v1beta of Gateway API is installed in cluster. (#5583, @lvyanru8200)
  • Certificate secrets get refreshed if the keystore format change (#5597, @sathyanarays)
  • Introducing UseCertificateRequestBasicConstraints feature flag to enable Basic Constraints in the Certificate Signing Request (#5552, @sathyanarays)
  • Return error when Gateway has a cross-namespace secret ref (#5613, @mmontes11)
  • Signers fire an event on CertificateRequests which have not been approved yet. Used for informational purposes so users understand why a request is not progressing. (#5535, @JoshVanL)

Bug or Regression

  • Don't log errors relating to self-signed issuer checks for external issuers (#5681, @SgtCoDFish)
  • Fixed a bug in AzureDNS resolver that led to early reconciliations in misconfigured Workload Identity-enabled setups (when Federated Identity Credential is not linked with a controller's k8s service account) (#5663, @weisdd)
  • Use manually specified temporary directory template when verifying CRDs (#5680, @SgtCoDFish)
  • vcert was upgraded to v4.23.0, fixing two bugs in cert-manager. The first bug was preventing the Venafi issuer from renewing certificates when using TPP has been fixed. You should no longer see your certificates getting stuck with WebSDK CertRequest Module Requested Certificate or This certificate cannot be processed while it is in an error state. Fix any errors, and then click Retry.. The second bug that was fixed prevented the use of algorithm: Ed25519 in Certificate resources with VaaS. (#5674, @maelvls)
  • Upgrade golang/x/net to fix CVE-2022-41717 (#5632, @SgtCoDFish)
  • Bug fix: When using feature gates with the helm chart, enable feature gate flags on webhook as well as controller (#5584, @lvyanru8200)
  • Fix golang.org/x/text vulnerability (#5562, @SgtCoDFish)
  • Fixes a bug that caused the Vault issuer to omit the Vault namespace in requests to the Vault API. (#5591, @wallrj)
  • The Venafi Issuer now supports TLS 1.2 renegotiation, so that it can connect to TPP servers where the vedauth API endpoints are configured to accept client certificates. (Note: This does not mean that the Venafi Issuer supports client certificate authentication). (#5568, @wallrj)
  • Upgrade to go 1.19.4 to fix CVE-2022-41717 (#5619, @SgtCoDFish)
  • Upgrade to latest go minor release (#5559, @SgtCoDFish)
  • Ensure extraArgs in Helm takes precedence over the new acmesolver image options (#5702, @SgtCoDFish)
  • Fix cainjector's --namespace flag. Users who want to prevent cainjector from reading all Secrets and Certificates in all namespaces (i.e to prevent excessive memory consumption) can now scope it to a single namespace using the --namespace flag. A cainjector that is only used as part of cert-manager installation only needs access to the cert-manager installation namespace. (#5694, @irbekrm)
  • Fixes a bug where cert-manager controller was caching all Secrets twice (#5691, @irbekrm)

Other

  • certificate.spec.secretName Secrets will now be labelled with the controller.cert-manager.io/fao label (#5703, @irbekrm)
  • Upgrade to go 1.19.5 (#5714, @yanggangtony)

Known issues

cert-manager - v1.10.2

Published by jetstack-release-bot almost 2 years ago

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

v1.10.2 is primarily a performance enhancement release which might reduce memory consumption by up to 50% in some cases thanks to some brilliant work by @irbekrm! 🎉

It also patches several vulnerabilities reported by scanners and updates the base images used for cert-manager containers. In addition, it removes a potentially confusing log line which had been introduced in v1.10.0 which implied that an error had occurred when using external issuers even though there'd been no error.

Changes since v1.10.1

Feature

  • Enable support for Kubernetes 1.26 in tests (#5647, @SgtCoDFish)

Bug or Regression

  • Fixes a bug where the cert-manager controller was caching all Secrets twice (#5704, @irbekrm)
  • Bump helm version to fix CVE-2022-23525 (#5676, @SgtCoDFish)
  • Don't log errors relating to selfsigned issuer checks for external issuers (#5687, @SgtCoDFish)
  • Fix golang.org/x/text vulnerability (#5592, @SgtCoDfish)
  • Upgrade golang/x/net to fix CVE-2022-41717 (#5635, @SgtCoDFish)
  • Upgrade to go 1.19.4 to fix CVE-2022-41717 (#5620, @SgtCoDfish)
  • Use manually specified tmpdir template when verifying CRDs (#5682, @SgtCoDFish)

Other (Cleanup or Flake)

  • Bump distroless base images to latest versions (#5677, @SgtCoDFish)
cert-manager - v1.11.0-beta.1

Published by jetstack-release-bot almost 2 years ago

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

⚠️ cert-manager v1.11.0-beta.1 is a pre-release beta version intended for testing. It might not be suitable for production uses.

Thanks also to @wallrj, @lucacome and @inteon for their help/contributions to this release!

Changes since v1.11.0-beta.0

Bug or Regression

  • Ensure extraArgs in Helm takes precedence over the new acmesolver image options (#5702, @SgtCoDFish)
  • Fix cainjector's --namespace flag. Users who want to prevent cainjector from reading all Secrets and Certificates in all namespaces (i.e to prevent excessive memory consumption) can now scope it to a single namespace using the --namespace flag. A cainjector that is only used as part of cert-manager installation only needs access to the cert-manager installation namespace. (#5694, @irbekrm)
  • Fixes a bug where cert-manager controller was caching all Secrets twice (#5691, @irbekrm)

Other

  • certificate.spec.secretName Secrets will now be labelled with controller.cert-manager.io/fao label (#5703, @irbekrm)
cert-manager - v1.11.0-beta.0

Published by jetstack-release-bot almost 2 years ago

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

⚠️ cert-manager v1.11.0-beta.0 is a pre-release beta version intended for testing. It might not be suitable for production uses.

Changes since v1.11.0-alpha.2

Feature

  • Helm: allow configuring the image used by ACME HTTP-01 solver (#5554, @yann-soubeyrand)

Bug or Regression

  • Don't log errors relating to selfsigned issuer checks for external issuers (#5681, @SgtCoDFish)
  • Fixed a bug in AzureDNS resolver that led to early reconciliations in misconfigured Workload Identity-enabled setups (when Federated Identity Credential is not linked with a controller's k8s service account) (#5663, @weisdd)
  • Use manually specified tmpdir template when verifying CRDs (#5680, @SgtCoDFish)
  • VCert was upgraded to v4.23.0, fixing two bugs in cert-manager. The first bug was preventing the Venafi issuer from renewing certificates when using TPP has been fixed. You should no longer see your certificates getting stuck with "WebSDK CertRequest Module Requested Certificate" or "This certificate cannot be processed while it is in an error state. Fix any errors, and then click Retry.". The second bug that was fixed prevented the use of algorithm: Ed25519 in Certificate resources with VaaS. (#5674, @maelvls)
cert-manager - v1.11.0-alpha.2

Published by jetstack-release-bot almost 2 years ago

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

⚠️ cert-manager v1.11.0-alpha.2 is a pre-release alpha version intended for testing. It might not be suitable for production uses.

Changes since v1.11.0-alpha.1

Feature

  • Add the --max-concurrent-challenges controller flag to the helm chart (#5638, @lvyanru8200)
  • Adds the ability to specify a custom CA bundle in Issuers when connecting to an ACME server (#5644, @SgtCoDFish)
  • Enable testing against Kubernetes 1.26 and test with Kubernetes 1.26 by default (#5646, @SgtCoDFish)
  • Experimental make targets for pushing images to an OCI registry using ko and redeploying cert-manager to the cluster referenced by your current KUBECONFIG context. (#5655, @wallrj)

Bug or Regression

  • Upgrade golang/x/net to fix CVE-2022-41717 (#5632, @SgtCoDFish)

Other (Cleanup or Flake)

  • Updates Kubernetes libraries to v0.26.0. (#5629, @lucacome)
cert-manager - v1.11.0-alpha.1

Published by jetstack-release-bot almost 2 years ago

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

⚠️ cert-manager v1.11.0-alpha.1 is a pre-release alpha version intended for testing. It might not be suitable for production uses.

Changes since v1.11.0-alpha.0

Feature

  • Add ability to run acmesolver pods as root if desired. The default is still to run as non-root. (#5546, @cmcga1125)
  • Add support for DC and UID in LiteralSubject field; all mandatory OIDs are now supported for LDAP certificates (rfc4514). (#5587, @SpectralHiss)
  • Add support for Workload Identity to AzureDNS resolver (#5570, @weisdd)
  • Breaking: updates the gateway API integration to use the more stable v1beta1 API version. Any users of the cert-manager ExperimentalGatewayAPISupport alpha feature must ensure that v1beta of Gateway API is installed in cluster. (#5583, @lvyanru8200)
  • Refresh certificate secrets if the keystore format changes (#5597, @sathyanarays)
  • Return error when Gateway has a cross-namespace secret ref (#5613, @mmontes11)

Bug or Regression

  • Bug fix: When using feature gates with the helm chart, enable feature gate flags on webhook as well as controller (#5584, @lvyanru8200)
  • Fixes a bug that caused the Vault issuer to omit the Vault namespace in requests to the Vault API. (#5591, @wallrj)
  • Upgrade to go 1.19.4 to fix CVE-2022-41717 (#5619, @SgtCoDFish)
cert-manager - v1.10.1

Published by jetstack-release-bot almost 2 years ago

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

cert-manager v1.10.1 is a bug fix release which fixes a problem which prevented the Venafi Issuer from connecting to TPP servers where the vedauth API endpoints were configured to accept client certificates.
It is also compiled with a newer version of Go 1.19 (v1.19.3) which fixes some vulnerabilities in the Go standard library.

Changes since v1.10.0

Bug or Regression

  • The Venafi Issuer now supports TLS 1.2 renegotiation, so that it can connect to TPP servers where the vedauth API endpoints are configured to accept client certificates.
    (Note: This does not mean that the Venafi Issuer supports client certificate authentication).
    (#5576, @wallrj)
  • Upgrade to latest go patch release
    (#5560, @SgtCoDFish )