Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(deps): update helm release cert-manager to v1.16.2 #2146

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 17, 2022

This PR contains the following updates:

Package Update Change
cert-manager (source) minor v1.9.1 -> v1.16.2

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

cert-manager/cert-manager (cert-manager)

v1.16.2

Compare Source

v1.16.1

Compare Source

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

The cert-manager 1.16 release includes: new Helm chart features, more Prometheus metrics, memory optimizations, and various improvements and bug fixes for the ACME issuer and Venafi Issuer.

📖 Read the complete 1.16 release notes before upgrading.

📜Changes since v1.16.0

Bug or Regression
  • BUGFIX: Helm schema validation: the new schema validation was too strict for the "global" section. Since the global section is shared across all charts and sub-charts, we must also allow unknown fields. (#​7348, @inteon)
  • BUGFIX: Helm will now accept percentages for the podDisruptionBudget.minAvailable and podDisruptionBudget.maxAvailable values. (#​7345, @inteon)
  • Helm: allow enabled to be set as a value to toggle cert-manager as a dependency. (#​7356, @inteon)
  • BUGFIX: A change in v1.16.0 caused cert-manager's ACME ClusterIssuer to look in the wrong namespace for resources required for the issuance (e.g. credential Secrets). This is now fixed in v1.16.1. (#​7342, @inteon)

v1.16.0

Compare Source

v1.15.4

Compare Source

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

This patch release of cert-manager 1.15 makes several changes to how PEM input is validated, adding maximum sizes appropriate to the type of PEM data which is being parsed.

This is to prevent an unacceptable slow-down in parsing specially crafted PEM data. The issue was found by Google's OSS-Fuzz project.

The issue is low severity; to exploit the PEM issue would require privileged access which would likely allow Denial-of-Service through other methods.

In addition, since most PEM data parsed by cert-manager comes from ConfigMap or Secret resources which have
a max size limit of approximately 1MB, it's difficult to force cert-manager to parse large amounts of PEM data.

Further information will be published in a security advisory when all supported cert-manager releases have been patched.

In addition, the version of Go used to build cert-manager 1.15 was updated along with the base images, and a Route53 bug fix was backported.

Changes by Kind

Bug or Regression
  • Bugfix: Prevent aggressive Route53 retries caused by STS authentication failures by removing the Amazon Request ID from STS errors. (#​7261, @​cert-manager-bot)
  • Set a maximum size for PEM inputs which cert-manager will accept to remove possibility of taking a long time to process an input (#​7402, @​SgtCoDFish)
Other (Cleanup or Flake)

v1.15.3

Compare Source

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

🔗 See v1.15.0 for more information about cert-manager 1.15 and read-before-upgrade info.

📜 Changes since v1.15.2
Bug or Regression
  • BUGFIX: the dynamic certificate source used by the webhook TLS server failed to detect a root CA approaching expiration, due to a calculation error. This will cause the webhook TLS server to fail renewing its CA certificate. Please upgrade before the expiration of this CA certificate is reached. (#​7232, @​cert-manager-bot)

v1.15.2

Compare Source

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

🔗 See v1.15.0 for more information about cert-manager 1.15 and read-before-upgrade info.

📜 Changes since v1.15.1
Bug or Regression

v1.15.1

Compare Source

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

🔗 See v1.15.0 for more information about cert-manager 1.15 and read-before-upgrade info.

📜 Changes since v1.15.0

Bug or Regression
  • BUGFIX: fix issue that caused Vault issuer to not retry signing when an error was encountered. (#​7111, @​inteon)
Other (Cleanup or Flake)

v1.15.0

Compare Source

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)

v1.14.7

Compare Source

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

📜 Changes since v1.14.6
Bugfixes
Other (Cleanup or Flake)

v1.14.6

Compare Source

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

📜 Changes since v1.14.5
Other (Cleanup or Flake)

v1.14.5

Compare Source

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.

📜 Changes since v1.14.4

  • 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.14.4

Compare Source

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
Other (Cleanup or Flake)

v1.14.3

Compare Source

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
ℹ️ Documentation

Release notes
Upgrade notes
Installation instructions

🔧 Breaking changes

See Breaking changes in v1.14.0 release notes

📜 Changes since v1.14.2
Bug or Regression
  • BUGFIX: Fixes issue with JSON-logging, where only a subset of the log messages were output as JSON. (#​6781, @​jetstack-bot)
  • BUGFIX: LiteralSubjects with a #= value can result in memory issues due to faulty BER parser (github.com/go-asn1-ber/asn1-ber). (#​6774, @​jetstack-bot)

v1.14.2

Compare Source

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
ℹ️ Documentation

Release notes
Upgrade notes
Installation instructions

🔧 Breaking changes

See Breaking changes in v1.14.0 release notes

📜 Changes since v1.14.1
Bug or Regression
  • BUGFIX: cert-manager CA and SelfSigned issuers incorrectly copied the critical flag from the CSR instead of re-calculating that field themselves. (#​6727, @​jetstack-bot)
  • Helm: Fix a bug in the logic that differentiates between 0 and an empty value. (#​6729, @​jetstack-bot)
Other (Cleanup or Flake)

v1.14.1

Compare Source

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.

⚠️ This version has known issues. Please install v1.14.2 instead.

⚠️ Known Issues (please install v1.14.2)
  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see release docs for more info and mitigations
  • In cert-manager v1.14.0 and v1.14.1, the CA and SelfSigned issuers issue certificates with SANs set to non-critical even when the subject is empty. It incorrectly copies the critical field from the CSR.
🔧 Breaking changes

See Breaking changes in v1.14.0 release notes

ℹ️ Documentation
📜 Changes since v1.14.0
Bug or Regression
  • Fix broken cainjector image value in Helm chart (#​6693, @​SgtCoDFish)
  • Fix bug in cmctl namespace detection which prevented it being used as a startupapicheck image in namespaces other than cert-manager. (#​6706, @​inteon)
  • Fix bug in cmctl which caused cmctl experimental install to panic. (#​6706, @​inteon)

v1.14.0

Compare Source

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.

⚠️ This version has known issues. Please install v1.14.2 instead.

⚠️ Known Issues (please install v1.14.2)
  • ACME Issuer (Let's Encrypt): wrong certificate chain may be used if preferredChain is configured: see release docs for more info and mitigations
  • In cert-manager v1.14.0 and v1.14.1, the CA and SelfSigned issuers issue certificates with SANs set to non-critical even when the subject is empty. It incorrectly copies the critical field from the CSR.
  • During the release of v1.14.0, the Helm chart for this version was found to use the wrong OCI image for the cainjector Deployment,
    which caused the Helm installation to fail.
    In order to complete the release, the cert-manager team have manually updated the Helm chart for this version,
    which contains all the Helm chart fixes which are in v1.14.1.
  • A bug in cmctl namespace detection prevents it being used as a startupapicheck image in namespaces other than cert-manager.
  • A bug in cmctl causes cmctl experimental install to panic.
🔧 Breaking Changes

The startupapicheck job uses a new OCI image called "startupapicheck", instead of the ctl image.
If you run in an environment in which images cannot be pulled, be sure to include the new image.

The KeyUsage and BasicConstraints extensions will now be encoded as critical in the CertificateRequest's CSR blob.

🗺️ Major Themes
New X.509 Features

The cert-manager Certificate resource now allows you to configure a subset of "Other Name" SANs,
which are described in the Subject Alternative Name section of RFC 5280 (on page 37).

We specifically support any otherName type with a UTF-8 value, such as the User Principal Name or sAMAccountName.
These are useful when issuing unique certificates for authenticating with LDAP systems such as Microsoft Active Directory.
For example you can create certificates with this block in the spec:

  otherNames:
    - oid: 1.3.6.1.4.1.311.20.2.3 # UPN OID
      utf8Value: [email protected]

The feature is still in alpha stage and requires you to enable the OtherName feature flag in the controller and webhook components.

New CA certificate Features

You can now specify the X.509 v3 Authority Information Accessors extension,
with URLs for certificates issued by the CA issuer.

Users can now use name constraints in CA certificates.
To know more details on name constraints check out RFC section https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.10

Security

An ongoing security audit of the cert-manager code revealed some weaknesses which we have addressed in this release,
such as using more secure default settings in the HTTP servers that serve metrics, healthz and pprof endpoints.
This will help mitigate denial-of-service attacks against those important services.

All the cert-manager containers are now configured with read only root file system by default,
to prevent unexpected changes to the file system of the OCI image.

And it is now possible to configure the metrics server to use HTTPS rather than HTTP,
so that clients can verify the identity of the metrics server.

Other

The liveness probe of the cert-manager controller Pod is now enabled by default.

There is a new option .spec.keystores.pkcs12.algorithms to specify encryption and MAC algorithms for PKCS.

🤝 Community

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

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

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
Feature
  • ACME challenge solver Pod for HTTP01 will get a default annotation of "cluster-autoscaler.kubernetes.io/safe-to-evict": "true". You can provide an annotation of "cluster-autoscaler.kubernetes.io/safe-to-evict": "false" in your podTemplate if you don't like this. (#​6349, @​jsoref)
  • Added a clock skew detector liveness probe that will force a restart in case we detect a skew between the internal monotonic clock and the system clock of more than 5 minutes.
    Also, the controller's liveness probe is now enabled by default. (#​6328, @​inteon)
  • Added a new flag (--dynamic-serving-leaf-duration) that can adjust the lifetime of the dynamic leaf certificates (#​6552, @​allenmunC1)
  • Added support for otherName SANS in Certificates (#​6404, @​SpectralHiss)
  • Added the option to specify the X.509 v3 Authority Information Accessors extension CA Issuers URLs for certificates issued by the CA issuer. (#​6486, @​jeremycampbell)
  • Adds cert-manager's new core infrastructure initiative badge! See more details on https://www.bestpractices.dev/projects/8079 (#​6497, @​SgtCoDFish)
  • All Pods are now configured with readOnlyRootFilesystem by default. (#​6453, @​wallrj)
  • MAYBE BREAKING: The startupapicheck job is now handled by an entirely new container called "startupapicheck". This replaces the previous ctl container. If you run in an environment in which images cannot be pulled, be sure to include the new container. (#​6549, @​SgtCoDFish)
  • New option .spec.keystores.pkcs12.algorithms to specify encryption and MAC algorithms for PKCS#​12 keystores. Fixes issues #​5957 and #​6523. (#​6548, @​snorwin)
  • The ACME HTTP01 solver Pod is now configured with readOnlyRootFilesystem: true (#​6462, @​wallrj)
  • Updates the AWS SDK for Go to 1.48.7 to support Amazon EKS Pod Identity (#​6519, @​JoeNorth)
  • Users can now use name constraints in CA certificates. To know more details on name constraints check out RFC section https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.10 (#​6500, @​tanujd11)
  • ⚠️ potentially breaking ⚠️: The KeyUsage and BasicConstraints extensions will now be encoded as critical in the CertificateRequest's CSR blob. (#​6053, @​inteon)
  • Add TLS support to the metrics endpoint through either a certificate file or through dynamically issued certificates (#​6574, @​ThatsMrTalbot)
  • Helm Chart: allow changing the default Deployment revisionHistoryLimit (#​6248, @​tberreis)
  • Security: Limit the size of the response body read from HTTP requests by cert-manager. (#​6619, @​ThatsMrTalbot)
  • Support custom spec.namespaceSelector for webhooks (#​6638, @​jkroepke)
Bug or Regression
  • BUGFIX[helm]: Fix issue where webhook feature gates were only set if controller feature gates are set. (#​6380, @​asapekia)
  • Controller ConfigMap is now created only if .Values.config is set. (#​6357, @​ABWassim)
  • Fix runaway bug caused by multiple Certificate resources that point to the same Secret resource. (#​6406, @​inteon)
  • Fix(helm): templating of required value in controller and webhook ConfigMap resources (#​6435, @​ABWassim)
  • Fixed a webhook validation error message when the key algorithm was invalid. (#​6571, @​pevidex)
  • Fixed error messaging when setting up vault issuer (#​6433, @​vinny)
  • GHSA-vgf6-pvf4-34rq: The webhook server now returns HTTP error 413 (Content Too Large) for requests with body size >= 3MiB. This is to mitigate DoS attacks that attempt to crash the webhook process by sending large requests that exceed the available memory.
    The webhook server now returns HTTP error 400 (Bad Request) if the request contains an empty body.
    The webhook server now returns HTTP error 500 (Internal Server Error) rather than crashing, if the code panics while handling a request. (#​6498, @​inteon)
  • Increase the default webhook timeout to its maximum value of 30 seconds, so that the underlying timeout error message has more chance of being returned to the end user. (#​6488, @​wallrj)
  • Listeners that do not support TLS on Gateway resources will now not raise BadConfig warnings anymore (#​6347, @​lauraseidler)
  • Mitigate potential Slowloris attacks by setting ReadHeaderTimeout in all http.Server instances (#​6534, @​wallrj)
  • The Venafi issuer now properly resets the certificate and should no longer get 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.. (#​6398, @​maelvls)
  • Update experimental install and uninstall commands to have flag parity with the rest of the CLI (#​6562, @​ThatsMrTalbot)
  • Webhook ConfigMap if now created only if .Values.webhook.config is set. (#​6360, @​ABWassim)
  • BUGFIX: Ensure otherName SAN changes in Certificate resources trigger re-issuance. (#​6620, @​SpectralHiss)
  • Bugfix: Publish the startupapicheck image to quay.io (#​6609, @​wallrj)
Other (Cleanup or Flake)
  • Cert-manager is now built with Go 1.21.5 (#​6545, @​wallrj)
  • Bump Go to 1.21.3 to address CVE-2023-39325. Also bumps base images. (#​6410, @​SgtCoDFish)
  • Bump golang.org/x/net v0.15.0 => v0.17.0 as part of addressing CVE-2023-44487 / CVE-2023-39325 (#​6427, @​SgtCoDFish)
  • Check code for unintended use of crypto/md5, a weak cryptographic primitive; using golangci-lint / gosec (G501). (#​6581, @​wallrj)
  • Check code for unintended use of crypto/sha1, a weak cryptographic primitive; using golangci-lint / gosec (G505). (#​6579, @​wallrj)
  • Check code for unintended use of weak random number generator (math/rand instead of crypto/rand); using golangci-lint / gosec (G404). (#​6582, @​wallrj)
  • Cleanup: Restrict MutatingWebhookConfiguration to only CertificateRequest resources (#​6311, @​hawksight)
  • Deprecated pkg/util.RandStringRunes and pkg/controller/test.RandStringBytes. Use k8s.io/apimachinery/pkg/util/rand.String instead. (#​6585, @​wallrj)
  • Enabled verbose logging in startupapicheck by default, so that if it fails, users can know exactly what caused the failure. (#​6495, @​wallrj)
  • Fix gosec G601: Implicit memory aliasing of items from a range statement (#​6551, @​wallrj)
  • Fix handling of serial numbers in literal certificate subjects. Previously a serial number could be specified in subject.serialNumber while using a literal certificate subject. This was a mistake and has been fixed. (#​6533, @​inteon)
  • The end-to-end tests can now test the cert-manager Vault Issuer on an OpenShift cluster. (#​6391, @​wallrj)
  • Update cert-manager's distroless base images from Debian 11 to Debian 12. This should have no practical effects on users. (#​6583, @​inteon)
  • Updated all code using GatewayAPI to use the now GA v1 APIs (#​6559, @​ThatsMrTalbot)
  • Upgrade Go from 1.20.7 to 1.20.8. (#​6369, @​inteon)
  • Upgrade github.com/emicklei/go-restful/v3 to v3.11.0 because v3.10.2 is labeled as "DO NOT USE". (#​6366, @​inteon)
  • Use the new generic sets.Set type in place of the deprecated sets.String. (#​6586, @​wallrj)
  • cert-manager is now built with Go v1.21.6 (#​6628, @​SgtCoDFish)
  • Update the Azure SDK and remove deprecated autorest dependency (#​5452, @​phillebaba)
  • The cert-manager E2E tests can now be run on Kubernetes 1.29 (#​6641, @​wallrj)

v1.13.6

Compare Source

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.13.5

Compare Source

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

⚠️ Known Issues
  • ACM

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot requested a review from dfroberg as a code owner October 17, 2022 15:37
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.10.0

@@ -836,9 +836,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.10.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +852,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,9 +893,11 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.10.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -904,6 +911,9 @@
               protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +966,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.10.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1009,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1207,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.10.0"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1219,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.10.0 feat(deps): update helm release cert-manager to v1.10.1 Nov 21, 2022
@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 4a5d44e to 108c986 Compare November 21, 2022 16:18
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.10.1

@@ -836,9 +836,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.10.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +852,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,9 +893,11 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.10.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -904,6 +911,9 @@
               protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +966,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.10.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1009,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1207,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.10.1"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1219,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 108c986 to f3b8e06 Compare January 10, 2023 19:47
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.10.1 feat(deps): update helm release cert-manager to v1.10.2 Jan 10, 2023
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.10.2

@@ -836,9 +836,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.10.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +852,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,9 +893,11 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.10.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -904,6 +911,9 @@
               protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +966,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.10.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1009,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1207,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.10.2"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1219,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from f3b8e06 to 6397f39 Compare January 11, 2023 20:10
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.10.2 feat(deps): update helm release cert-manager to v1.11.0 Jan 11, 2023
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.11.0

@@ -51,6 +51,7 @@
     app.kubernetes.io/name: webhook
     app.kubernetes.io/instance: cert-manager
     app.kubernetes.io/component: "webhook"
+    app.kubernetes.io/managed-by: Helm
 data:
 ---
 # Source: cert-manager/templates/cainjector-rbac.yaml
@@ -836,9 +837,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.11.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +853,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,22 +894,29 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.11.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.11.0
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +969,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.11.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1012,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1210,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.11.0"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1222,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 6397f39 to 70aedbe Compare May 27, 2023 19:14
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.11.0 feat(deps): update helm release cert-manager to v1.12.1 May 27, 2023
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.12.1

@@ -51,6 +51,7 @@
     app.kubernetes.io/name: webhook
     app.kubernetes.io/instance: cert-manager
     app.kubernetes.io/component: "webhook"
+    app.kubernetes.io/managed-by: Helm
 data:
 ---
 # Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -836,9 +837,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.12.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +853,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,22 +894,32 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.12.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.1
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +972,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.12.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1015,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1213,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.12.1"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1225,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 70aedbe to 60ed80d Compare June 16, 2023 14:18
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.12.1 feat(deps): update helm release cert-manager to v1.12.2 Jun 16, 2023
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.12.2

@@ -51,6 +51,7 @@
     app.kubernetes.io/name: webhook
     app.kubernetes.io/instance: cert-manager
     app.kubernetes.io/component: "webhook"
+    app.kubernetes.io/managed-by: Helm
 data:
 ---
 # Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -836,9 +837,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.12.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +853,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,22 +894,32 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.12.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.2
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +972,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.12.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1015,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1213,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.12.2"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1225,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.12.2 feat(deps): update helm release cert-manager to v1.12.3 Jul 26, 2023
@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 60ed80d to 80d9522 Compare July 26, 2023 15:23
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.12.3

@@ -51,6 +51,7 @@
     app.kubernetes.io/name: webhook
     app.kubernetes.io/instance: cert-manager
     app.kubernetes.io/component: "webhook"
+    app.kubernetes.io/managed-by: Helm
 data:
 ---
 # Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -836,9 +837,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.12.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +853,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,22 +894,32 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.12.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.3
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +972,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.12.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1015,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1213,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.12.3"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1225,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.12.3 feat(deps): update helm release cert-manager to v1.12.4 Sep 1, 2023
@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 80d9522 to 903d3b2 Compare September 1, 2023 18:07
@github-actions
Copy link

github-actions bot commented Sep 1, 2023

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.12.4

@@ -51,6 +51,7 @@
     app.kubernetes.io/name: webhook
     app.kubernetes.io/instance: cert-manager
     app.kubernetes.io/component: "webhook"
+    app.kubernetes.io/managed-by: Helm
 data:
 ---
 # Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -836,9 +837,11 @@
       serviceAccountName: cert-manager-cainjector
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.12.4"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +853,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -888,22 +894,32 @@
       serviceAccountName: cert-manager
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.12.4"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.4
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -956,20 +972,27 @@
       serviceAccountName: cert-manager-webhook
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.12.4"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1015,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1187,9 +1213,11 @@
       serviceAccountName: cert-manager-startupapicheck
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.12.4"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1225,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.12.4 feat(deps): update helm release cert-manager to v1.13.0 Sep 12, 2023
@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 903d3b2 to d42181c Compare September 12, 2023 17:23
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.13.0

@@ -40,6 +40,20 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
+# Source: cert-manager/templates/controller-config.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: cert-manager
+  namespace: default
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+data:
+---
 # Source: cert-manager/templates/webhook-config.yaml
 apiVersion: v1
 kind: ConfigMap
@@ -51,6 +65,7 @@
     app.kubernetes.io/name: webhook
     app.kubernetes.io/instance: cert-manager
     app.kubernetes.io/component: "webhook"
+    app.kubernetes.io/managed-by: Helm
 data:
 ---
 # Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +91,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +326,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +353,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +867,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.13.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +886,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +925,35 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.13.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.13.0
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -954,22 +1004,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.13.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1050,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1062,10 +1123,6 @@
           operator: "NotIn"
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1185,11 +1242,14 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.13.0"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1257,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from d42181c to 90aebfe Compare September 27, 2023 10:07
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.13.0 feat(deps): update helm release cert-manager to v1.13.1 Sep 27, 2023
@github-actions
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.13.1

@@ -40,6 +40,20 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
+# Source: cert-manager/templates/controller-config.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: cert-manager
+  namespace: default
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+data:
+---
 # Source: cert-manager/templates/webhook-config.yaml
 apiVersion: v1
 kind: ConfigMap
@@ -51,6 +65,7 @@
     app.kubernetes.io/name: webhook
     app.kubernetes.io/instance: cert-manager
     app.kubernetes.io/component: "webhook"
+    app.kubernetes.io/managed-by: Helm
 data:
 ---
 # Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +91,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +326,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +353,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +867,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.13.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +886,9 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +925,35 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.13.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.13.1
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -954,22 +1004,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.13.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1050,9 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1062,10 +1123,6 @@
           operator: "NotIn"
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1185,11 +1242,14 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-ctl:v1.13.1"
           imagePullPolicy: IfNotPresent
           args:
             - check
@@ -1197,5 +1257,8 @@
             - --wait=1m
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 3bab1e7 to 5c5f8d8 Compare February 23, 2024 12:04
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.14.2 feat(deps): update helm release cert-manager to v1.14.3 Feb 23, 2024
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.14.3

@@ -40,19 +40,6 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: cert-manager-webhook
-  namespace: default
-  labels:
-    app: webhook
-    app.kubernetes.io/name: webhook
-    app.kubernetes.io/instance: cert-manager
-    app.kubernetes.io/component: "webhook"
-data:
----
 # Source: cert-manager/templates/cainjector-rbac.yaml
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
@@ -76,13 +63,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +298,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +325,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +839,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.14.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +858,10 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +898,36 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.14.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.3
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -916,6 +940,19 @@
             requests:
               cpu: 25m
               memory: 263M
+          # LivenessProbe settings are based on those used for the Kubernetes
+          # controller-manager. See:
+          # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+          livenessProbe:
+            httpGet:
+              port: http-healthz
+              path: /livez
+              scheme: HTTP
+            initialDelaySeconds: 10
+            periodSeconds: 10
+            timeoutSeconds: 15
+            successThreshold: 1
+            failureThreshold: 8
       nodeSelector:
         kubernetes.io/os: linux
         worker: true
@@ -954,22 +991,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.14.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1037,10 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1018,20 +1067,18 @@
     rules:
       - apiGroups:
           - "cert-manager.io"
-          - "acme.cert-manager.io"
         apiVersions:
           - "v1"
         operations:
           - CREATE
-          - UPDATE
         resources:
-          - "*/*"
+          - "certificaterequests"
     admissionReviewVersions: ["v1"]
     # This webhook only accepts v1 cert-manager resources.
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     # Only include 'sideEffects' field in Kubernetes 1.12+
     sideEffects: None
@@ -1058,14 +1105,10 @@
   - name: webhook.cert-manager.io
     namespaceSelector:
       matchExpressions:
-        - key: "cert-manager.io/disable-validation"
-          operator: "NotIn"
+        - key: cert-manager.io/disable-validation
+          operator: NotIn
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1082,7 +1125,7 @@
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     sideEffects: None
     clientConfig:
@@ -1185,17 +1228,25 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-startupapicheck:v1.14.3"
           imagePullPolicy: IfNotPresent
           args:
             - check
             - api
             - --wait=1m
+            - -v
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 5c5f8d8 to 1f58f2b Compare March 8, 2024 13:36
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.14.3 feat(deps): update helm release cert-manager to v1.14.4 Mar 8, 2024
Copy link

github-actions bot commented Mar 8, 2024

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.14.4

@@ -40,19 +40,6 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: cert-manager-webhook
-  namespace: default
-  labels:
-    app: webhook
-    app.kubernetes.io/name: webhook
-    app.kubernetes.io/instance: cert-manager
-    app.kubernetes.io/component: "webhook"
-data:
----
 # Source: cert-manager/templates/cainjector-rbac.yaml
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
@@ -76,13 +63,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +298,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +325,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +839,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.14.4"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +858,10 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +898,36 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.14.4"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.4
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -916,6 +940,19 @@
             requests:
               cpu: 25m
               memory: 263M
+          # LivenessProbe settings are based on those used for the Kubernetes
+          # controller-manager. See:
+          # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+          livenessProbe:
+            httpGet:
+              port: http-healthz
+              path: /livez
+              scheme: HTTP
+            initialDelaySeconds: 10
+            periodSeconds: 10
+            timeoutSeconds: 15
+            successThreshold: 1
+            failureThreshold: 8
       nodeSelector:
         kubernetes.io/os: linux
         worker: true
@@ -954,22 +991,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.14.4"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1037,10 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1018,20 +1067,18 @@
     rules:
       - apiGroups:
           - "cert-manager.io"
-          - "acme.cert-manager.io"
         apiVersions:
           - "v1"
         operations:
           - CREATE
-          - UPDATE
         resources:
-          - "*/*"
+          - "certificaterequests"
     admissionReviewVersions: ["v1"]
     # This webhook only accepts v1 cert-manager resources.
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     # Only include 'sideEffects' field in Kubernetes 1.12+
     sideEffects: None
@@ -1058,14 +1105,10 @@
   - name: webhook.cert-manager.io
     namespaceSelector:
       matchExpressions:
-        - key: "cert-manager.io/disable-validation"
-          operator: "NotIn"
+        - key: cert-manager.io/disable-validation
+          operator: NotIn
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1082,7 +1125,7 @@
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     sideEffects: None
     clientConfig:
@@ -1185,17 +1228,25 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-startupapicheck:v1.14.4"
           imagePullPolicy: IfNotPresent
           args:
             - check
             - api
             - --wait=1m
+            - -v
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 1f58f2b to 2780c12 Compare April 25, 2024 14:39
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.14.4 feat(deps): update helm release cert-manager to v1.14.5 Apr 25, 2024
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.14.5

@@ -40,19 +40,6 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: cert-manager-webhook
-  namespace: default
-  labels:
-    app: webhook
-    app.kubernetes.io/name: webhook
-    app.kubernetes.io/instance: cert-manager
-    app.kubernetes.io/component: "webhook"
-data:
----
 # Source: cert-manager/templates/cainjector-rbac.yaml
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
@@ -76,13 +63,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +298,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +325,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +839,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.14.5"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +858,10 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +898,36 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.14.5"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.5
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -916,6 +940,19 @@
             requests:
               cpu: 25m
               memory: 263M
+          # LivenessProbe settings are based on those used for the Kubernetes
+          # controller-manager. See:
+          # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+          livenessProbe:
+            httpGet:
+              port: http-healthz
+              path: /livez
+              scheme: HTTP
+            initialDelaySeconds: 10
+            periodSeconds: 10
+            timeoutSeconds: 15
+            successThreshold: 1
+            failureThreshold: 8
       nodeSelector:
         kubernetes.io/os: linux
         worker: true
@@ -954,22 +991,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.14.5"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1037,10 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1018,20 +1067,18 @@
     rules:
       - apiGroups:
           - "cert-manager.io"
-          - "acme.cert-manager.io"
         apiVersions:
           - "v1"
         operations:
           - CREATE
-          - UPDATE
         resources:
-          - "*/*"
+          - "certificaterequests"
     admissionReviewVersions: ["v1"]
     # This webhook only accepts v1 cert-manager resources.
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     # Only include 'sideEffects' field in Kubernetes 1.12+
     sideEffects: None
@@ -1058,14 +1105,10 @@
   - name: webhook.cert-manager.io
     namespaceSelector:
       matchExpressions:
-        - key: "cert-manager.io/disable-validation"
-          operator: "NotIn"
+        - key: cert-manager.io/disable-validation
+          operator: NotIn
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1082,7 +1125,7 @@
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     sideEffects: None
     clientConfig:
@@ -1185,17 +1228,25 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-startupapicheck:v1.14.5"
           imagePullPolicy: IfNotPresent
           args:
             - check
             - api
             - --wait=1m
+            - -v
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 2780c12 to bb62426 Compare June 5, 2024 19:40
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.14.5 feat(deps): update helm release cert-manager to v1.15.0 Jun 5, 2024
Copy link

github-actions bot commented Jun 5, 2024

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.15.0

@@ -40,19 +40,6 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: cert-manager-webhook
-  namespace: default
-  labels:
-    app: webhook
-    app.kubernetes.io/name: webhook
-    app.kubernetes.io/instance: cert-manager
-    app.kubernetes.io/component: "webhook"
-data:
----
 # Source: cert-manager/templates/cainjector-rbac.yaml
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
@@ -76,13 +63,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +298,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +325,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
   - apiGroups: ["cert-manager.io"]
     resources: ["signers"]
     verbs: ["approve"]
-    resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+    resourceNames:
+      - "issuers.cert-manager.io/*"
+      - "clusterissuers.cert-manager.io/*"
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Permission to:
@@ -834,11 +841,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.15.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +860,10 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +900,36 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.15.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.0
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -916,6 +942,19 @@
             requests:
               cpu: 25m
               memory: 263M
+          # LivenessProbe settings are based on those used for the Kubernetes
+          # controller-manager. See:
+          # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+          livenessProbe:
+            httpGet:
+              port: http-healthz
+              path: /livez
+              scheme: HTTP
+            initialDelaySeconds: 10
+            periodSeconds: 10
+            timeoutSeconds: 15
+            successThreshold: 1
+            failureThreshold: 8
       nodeSelector:
         kubernetes.io/os: linux
         worker: true
@@ -954,22 +993,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.15.0"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1039,10 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1000,6 +1051,37 @@
       nodeSelector:
         kubernetes.io/os: linux
 ---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
 # Source: cert-manager/templates/webhook-mutating-webhook.yaml
 apiVersion: admissionregistration.k8s.io/v1
 kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
     rules:
       - apiGroups:
           - "cert-manager.io"
-          - "acme.cert-manager.io"
         apiVersions:
           - "v1"
         operations:
           - CREATE
-          - UPDATE
         resources:
-          - "*/*"
+          - "certificaterequests"
     admissionReviewVersions: ["v1"]
     # This webhook only accepts v1 cert-manager resources.
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     # Only include 'sideEffects' field in Kubernetes 1.12+
     sideEffects: None
@@ -1058,14 +1138,10 @@
   - name: webhook.cert-manager.io
     namespaceSelector:
       matchExpressions:
-        - key: "cert-manager.io/disable-validation"
-          operator: "NotIn"
+        - key: cert-manager.io/disable-validation
+          operator: NotIn
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1082,7 +1158,7 @@
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     sideEffects: None
     clientConfig:
@@ -1185,17 +1261,25 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.0"
           imagePullPolicy: IfNotPresent
           args:
             - check
             - api
             - --wait=1m
+            - -v
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from bb62426 to d4b0cfa Compare June 26, 2024 19:40
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.15.0 feat(deps): update helm release cert-manager to v1.15.1 Jun 26, 2024
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.15.1

@@ -40,19 +40,6 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: cert-manager-webhook
-  namespace: default
-  labels:
-    app: webhook
-    app.kubernetes.io/name: webhook
-    app.kubernetes.io/instance: cert-manager
-    app.kubernetes.io/component: "webhook"
-data:
----
 # Source: cert-manager/templates/cainjector-rbac.yaml
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
@@ -76,13 +63,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +298,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +325,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
   - apiGroups: ["cert-manager.io"]
     resources: ["signers"]
     verbs: ["approve"]
-    resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+    resourceNames:
+      - "issuers.cert-manager.io/*"
+      - "clusterissuers.cert-manager.io/*"
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Permission to:
@@ -834,11 +841,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.15.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +860,10 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +900,36 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.15.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.1
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -916,6 +942,19 @@
             requests:
               cpu: 25m
               memory: 263M
+          # LivenessProbe settings are based on those used for the Kubernetes
+          # controller-manager. See:
+          # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+          livenessProbe:
+            httpGet:
+              port: http-healthz
+              path: /livez
+              scheme: HTTP
+            initialDelaySeconds: 10
+            periodSeconds: 10
+            timeoutSeconds: 15
+            successThreshold: 1
+            failureThreshold: 8
       nodeSelector:
         kubernetes.io/os: linux
         worker: true
@@ -954,22 +993,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.15.1"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1039,10 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1000,6 +1051,37 @@
       nodeSelector:
         kubernetes.io/os: linux
 ---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
 # Source: cert-manager/templates/webhook-mutating-webhook.yaml
 apiVersion: admissionregistration.k8s.io/v1
 kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
     rules:
       - apiGroups:
           - "cert-manager.io"
-          - "acme.cert-manager.io"
         apiVersions:
           - "v1"
         operations:
           - CREATE
-          - UPDATE
         resources:
-          - "*/*"
+          - "certificaterequests"
     admissionReviewVersions: ["v1"]
     # This webhook only accepts v1 cert-manager resources.
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     # Only include 'sideEffects' field in Kubernetes 1.12+
     sideEffects: None
@@ -1058,14 +1138,10 @@
   - name: webhook.cert-manager.io
     namespaceSelector:
       matchExpressions:
-        - key: "cert-manager.io/disable-validation"
-          operator: "NotIn"
+        - key: cert-manager.io/disable-validation
+          operator: NotIn
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1082,7 +1158,7 @@
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     sideEffects: None
     clientConfig:
@@ -1185,17 +1261,25 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.1"
           imagePullPolicy: IfNotPresent
           args:
             - check
             - api
             - --wait=1m
+            - -v
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from d4b0cfa to 950a18e Compare July 30, 2024 15:30
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.15.1 feat(deps): update helm release cert-manager to v1.15.2 Jul 30, 2024
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.15.2

@@ -40,19 +40,6 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: cert-manager-webhook
-  namespace: default
-  labels:
-    app: webhook
-    app.kubernetes.io/name: webhook
-    app.kubernetes.io/instance: cert-manager
-    app.kubernetes.io/component: "webhook"
-data:
----
 # Source: cert-manager/templates/cainjector-rbac.yaml
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
@@ -76,13 +63,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +298,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +325,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
   - apiGroups: ["cert-manager.io"]
     resources: ["signers"]
     verbs: ["approve"]
-    resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+    resourceNames:
+      - "issuers.cert-manager.io/*"
+      - "clusterissuers.cert-manager.io/*"
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Permission to:
@@ -834,11 +841,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.15.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +860,10 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +900,36 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.15.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.2
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -916,6 +942,19 @@
             requests:
               cpu: 25m
               memory: 263M
+          # LivenessProbe settings are based on those used for the Kubernetes
+          # controller-manager. See:
+          # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+          livenessProbe:
+            httpGet:
+              port: http-healthz
+              path: /livez
+              scheme: HTTP
+            initialDelaySeconds: 10
+            periodSeconds: 10
+            timeoutSeconds: 15
+            successThreshold: 1
+            failureThreshold: 8
       nodeSelector:
         kubernetes.io/os: linux
         worker: true
@@ -954,22 +993,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.15.2"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1039,10 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1000,6 +1051,37 @@
       nodeSelector:
         kubernetes.io/os: linux
 ---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
 # Source: cert-manager/templates/webhook-mutating-webhook.yaml
 apiVersion: admissionregistration.k8s.io/v1
 kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
     rules:
       - apiGroups:
           - "cert-manager.io"
-          - "acme.cert-manager.io"
         apiVersions:
           - "v1"
         operations:
           - CREATE
-          - UPDATE
         resources:
-          - "*/*"
+          - "certificaterequests"
     admissionReviewVersions: ["v1"]
     # This webhook only accepts v1 cert-manager resources.
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     # Only include 'sideEffects' field in Kubernetes 1.12+
     sideEffects: None
@@ -1058,14 +1138,10 @@
   - name: webhook.cert-manager.io
     namespaceSelector:
       matchExpressions:
-        - key: "cert-manager.io/disable-validation"
-          operator: "NotIn"
+        - key: cert-manager.io/disable-validation
+          operator: NotIn
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1082,7 +1158,7 @@
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     sideEffects: None
     clientConfig:
@@ -1185,17 +1261,25 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.2"
           imagePullPolicy: IfNotPresent
           args:
             - check
             - api
             - --wait=1m
+            - -v
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 950a18e to 1477af7 Compare August 16, 2024 11:28
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.15.2 feat(deps): update helm release cert-manager to v1.15.3 Aug 16, 2024
Copy link

Path: cluster/core/networking/cert-manager/helm-release.yaml
Version: v1.9.1 -> v1.15.3

@@ -40,19 +40,6 @@
     app.kubernetes.io/component: "webhook"
     app.kubernetes.io/managed-by: Helm
 ---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: cert-manager-webhook
-  namespace: default
-  labels:
-    app: webhook
-    app.kubernetes.io/name: webhook
-    app.kubernetes.io/instance: cert-manager
-    app.kubernetes.io/component: "webhook"
-data:
----
 # Source: cert-manager/templates/cainjector-rbac.yaml
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
@@ -76,13 +63,13 @@
     verbs: ["get", "create", "update", "patch"]
   - apiGroups: ["admissionregistration.k8s.io"]
     resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiregistration.k8s.io"]
     resources: ["apiservices"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
   - apiGroups: ["apiextensions.k8s.io"]
     resources: ["customresourcedefinitions"]
-    verbs: ["get", "list", "watch", "update"]
+    verbs: ["get", "list", "watch", "update", "patch"]
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Issuer controller role
@@ -311,6 +298,23 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
+  name: cert-manager-cluster-view
+  labels:
+    app: cert-manager
+    app.kubernetes.io/name: cert-manager
+    app.kubernetes.io/instance: cert-manager
+    app.kubernetes.io/component: "controller"
+    app.kubernetes.io/managed-by: Helm
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+  - apiGroups: ["cert-manager.io"]
+    resources: ["clusterissuers"]
+    verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
   name: cert-manager-view
   labels:
     app: cert-manager
@@ -321,6 +325,7 @@
     rbac.authorization.k8s.io/aggregate-to-view: "true"
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
+    rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
 rules:
   - apiGroups: ["cert-manager.io"]
     resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
   - apiGroups: ["cert-manager.io"]
     resources: ["signers"]
     verbs: ["approve"]
-    resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+    resourceNames:
+      - "issuers.cert-manager.io/*"
+      - "clusterissuers.cert-manager.io/*"
 ---
 # Source: cert-manager/templates/rbac.yaml
 # Permission to:
@@ -834,11 +841,14 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-cainjector
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+        - name: cert-manager-cainjector
+          image: "quay.io/jetstack/cert-manager-cainjector:v1.15.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
@@ -850,6 +860,10 @@
                   fieldPath: metadata.namespace
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux
 ---
@@ -886,24 +900,36 @@
         prometheus.io/port: '9402'
     spec:
       serviceAccountName: cert-manager
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+        - name: cert-manager-controller
+          image: "quay.io/jetstack/cert-manager-controller:v1.15.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --cluster-resource-namespace=$(POD_NAMESPACE)
             - --leader-election-namespace=kube-system
+            - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.3
             - --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
             - --dns01-recursive-nameservers-only
+            - --max-concurrent-challenges=60
           ports:
             - containerPort: 9402
               name: http-metrics
               protocol: TCP
+            - containerPort: 9403
+              name: http-healthz
+              protocol: TCP
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -916,6 +942,19 @@
             requests:
               cpu: 25m
               memory: 263M
+          # LivenessProbe settings are based on those used for the Kubernetes
+          # controller-manager. See:
+          # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+          livenessProbe:
+            httpGet:
+              port: http-healthz
+              path: /livez
+              scheme: HTTP
+            initialDelaySeconds: 10
+            periodSeconds: 10
+            timeoutSeconds: 15
+            successThreshold: 1
+            failureThreshold: 8
       nodeSelector:
         kubernetes.io/os: linux
         worker: true
@@ -954,22 +993,30 @@
         app.kubernetes.io/managed-by: Helm
     spec:
       serviceAccountName: cert-manager-webhook
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+        - name: cert-manager-webhook
+          image: "quay.io/jetstack/cert-manager-webhook:v1.15.3"
           imagePullPolicy: IfNotPresent
           args:
             - --v=2
             - --secure-port=10250
             - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
             - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
-            - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+            - --dynamic-serving-dns-names=cert-manager-webhook
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+            - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
           ports:
             - name: https
               protocol: TCP
               containerPort: 10250
+            - name: healthcheck
+              protocol: TCP
+              containerPort: 6080
           livenessProbe:
             httpGet:
               path: /livez
@@ -992,6 +1039,10 @@
             failureThreshold: 3
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
           env:
             - name: POD_NAMESPACE
               valueFrom:
@@ -1000,6 +1051,37 @@
       nodeSelector:
         kubernetes.io/os: linux
 ---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
 # Source: cert-manager/templates/webhook-mutating-webhook.yaml
 apiVersion: admissionregistration.k8s.io/v1
 kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
     rules:
       - apiGroups:
           - "cert-manager.io"
-          - "acme.cert-manager.io"
         apiVersions:
           - "v1"
         operations:
           - CREATE
-          - UPDATE
         resources:
-          - "*/*"
+          - "certificaterequests"
     admissionReviewVersions: ["v1"]
     # This webhook only accepts v1 cert-manager resources.
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     # Only include 'sideEffects' field in Kubernetes 1.12+
     sideEffects: None
@@ -1058,14 +1138,10 @@
   - name: webhook.cert-manager.io
     namespaceSelector:
       matchExpressions:
-        - key: "cert-manager.io/disable-validation"
-          operator: "NotIn"
+        - key: cert-manager.io/disable-validation
+          operator: NotIn
           values:
             - "true"
-        - key: "name"
-          operator: "NotIn"
-          values:
-            - default
     rules:
       - apiGroups:
           - "cert-manager.io"
@@ -1082,7 +1158,7 @@
     # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
     # this webhook (after the resources have been converted to v1).
     matchPolicy: Equivalent
-    timeoutSeconds: 10
+    timeoutSeconds: 30
     failurePolicy: Fail
     sideEffects: None
     clientConfig:
@@ -1185,17 +1261,25 @@
     spec:
       restartPolicy: OnFailure
       serviceAccountName: cert-manager-startupapicheck
+      enableServiceLinks: false
       securityContext:
         runAsNonRoot: true
+        seccompProfile:
+          type: RuntimeDefault
       containers:
-        - name: cert-manager
-          image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+        - name: cert-manager-startupapicheck
+          image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.3"
           imagePullPolicy: IfNotPresent
           args:
             - check
             - api
             - --wait=1m
+            - -v
           securityContext:
             allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            readOnlyRootFilesystem: true
       nodeSelector:
         kubernetes.io/os: linux

@renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from 1477af7 to ae03bc1 Compare October 3, 2024 16:53
@renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.15.3 feat(deps): update helm release cert-manager to v1.16.0 Oct 3, 2024
Copy link

qodo-merge-pro bot commented Oct 3, 2024

PR-Agent was enabled for this repository. To continue using it, please link your git user with your CodiumAI identity here.

CI Failure Feedback 🧐

Action: Template Helm Releases (cluster/core/networking/cert-manager/helm-release.yaml)

Failed stage: Run hr_live_url=$(sed -nr 's|.*registryUrl=(.+)$|\1|p' live/cluster/core/networking/cert-manager/helm-release.yaml) [❌]

Failed test name: ""

Failure summary:

The action failed because the configuration for the cert-manager chart contains an invalid property:

  • The webhook section has an additional property enabled which is not allowed according to the schema.

  • Relevant error logs:
    1:  ##[group]Operating System
    2:  Ubuntu
    ...
    
    2202:  resources:
    2203:  - "*/*"
    2204:  admissionReviewVersions: ["v1"]
    2205:  # This webhook only accepts v1 cert-manager resources.
    2206:  # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
    2207:  # this webhook (after the resources have been converted to v1).
    2208:  matchPolicy: Equivalent
    2209:  timeoutSeconds: 10
    2210:  failurePolicy: Fail
    ...
    
    2255:  resources:
    2256:  - "*/*"
    2257:  admissionReviewVersions: ["v1"]
    2258:  # This webhook only accepts v1 cert-manager resources.
    2259:  # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
    2260:  # this webhook (after the resources have been converted to v1).
    2261:  matchPolicy: Equivalent
    2262:  timeoutSeconds: 10
    2263:  failurePolicy: Fail
    ...
    
    2382:  - check
    2383:  - api
    2384:  - --wait=1m
    2385:  securityContext:
    2386:  allowPrivilegeEscalation: false
    2387:  nodeSelector:
    2388:  kubernetes.io/os: linux
    2389:  #####################################################
    2390:  Error: values don't meet the specifications of the schema(s) in the following chart(s):
    2391:  cert-manager:
    2392:  - webhook: Additional property enabled is not allowed
    2393:  ##[error]Process completed with exit code 1.
    

    ✨ CI feedback usage guide:

    The CI feedback tool (/checks) automatically triggers when a PR has a failed check.
    The tool analyzes the failed checks and provides several feedbacks:

    • Failed stage
    • Failed test name
    • Failure summary
    • Relevant error logs

    In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:

    /checks "https://github.com/{repo_name}/actions/runs/{run_number}/job/{job_number}"
    

    where {repo_name} is the name of the repository, {run_number} is the run number of the failed check, and {job_number} is the job number of the failed check.

    Configuration options

    • enable_auto_checks_feedback - if set to true, the tool will automatically provide feedback when a check is failed. Default is true.
    • excluded_checks_list - a list of checks to exclude from the feedback, for example: ["check1", "check2"]. Default is an empty list.
    • enable_help_text - if set to true, the tool will provide a help message with the feedback. Default is true.
    • persistent_comment - if set to true, the tool will overwrite a previous checks comment with the new feedback. Default is true.
    • final_update_message - if persistent_comment is true and updating a previous checks message, the tool will also create a new message: "Persistent checks updated to latest commit". Default is true.

    See more information about the checks tool in the docs.

    @renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from ae03bc1 to fec0440 Compare October 9, 2024 14:24
    @renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.16.0 feat(deps): update helm release cert-manager to v1.16.1 Oct 9, 2024
    Copy link

    qodo-merge-pro bot commented Oct 9, 2024

    PR-Agent was enabled for this repository. To continue using it, please link your git user with your CodiumAI identity here.

    CI Failure Feedback 🧐

    Action: Template Helm Releases (cluster/core/networking/cert-manager/helm-release.yaml)

    Failed stage: Run hr_live_url=$(sed -nr 's|.*registryUrl=(.+)$|\1|p' live/cluster/core/networking/cert-manager/helm-release.yaml) [❌]

    Failed test name: ""

    Failure summary:

    The action failed because the configuration for the cert-manager chart contains an invalid property:

  • The webhook section has an additional property enabled which is not allowed according to the schema.

  • Relevant error logs:
    1:  ##[group]Operating System
    2:  Ubuntu
    ...
    
    2202:  resources:
    2203:  - "*/*"
    2204:  admissionReviewVersions: ["v1"]
    2205:  # This webhook only accepts v1 cert-manager resources.
    2206:  # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
    2207:  # this webhook (after the resources have been converted to v1).
    2208:  matchPolicy: Equivalent
    2209:  timeoutSeconds: 10
    2210:  failurePolicy: Fail
    ...
    
    2255:  resources:
    2256:  - "*/*"
    2257:  admissionReviewVersions: ["v1"]
    2258:  # This webhook only accepts v1 cert-manager resources.
    2259:  # Equivalent matchPolicy ensures that non-v1 resource requests are sent to
    2260:  # this webhook (after the resources have been converted to v1).
    2261:  matchPolicy: Equivalent
    2262:  timeoutSeconds: 10
    2263:  failurePolicy: Fail
    ...
    
    2382:  - check
    2383:  - api
    2384:  - --wait=1m
    2385:  securityContext:
    2386:  allowPrivilegeEscalation: false
    2387:  nodeSelector:
    2388:  kubernetes.io/os: linux
    2389:  #####################################################
    2390:  Error: values don't meet the specifications of the schema(s) in the following chart(s):
    2391:  cert-manager:
    2392:  - webhook: Additional property enabled is not allowed
    2393:  ##[error]Process completed with exit code 1.
    

    ✨ CI feedback usage guide:

    The CI feedback tool (/checks) automatically triggers when a PR has a failed check.
    The tool analyzes the failed checks and provides several feedbacks:

    • Failed stage
    • Failed test name
    • Failure summary
    • Relevant error logs

    In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:

    /checks "https://github.com/{repo_name}/actions/runs/{run_number}/job/{job_number}"
    

    where {repo_name} is the name of the repository, {run_number} is the run number of the failed check, and {job_number} is the job number of the failed check.

    Configuration options

    • enable_auto_checks_feedback - if set to true, the tool will automatically provide feedback when a check is failed. Default is true.
    • excluded_checks_list - a list of checks to exclude from the feedback, for example: ["check1", "check2"]. Default is an empty list.
    • enable_help_text - if set to true, the tool will provide a help message with the feedback. Default is true.
    • persistent_comment - if set to true, the tool will overwrite a previous checks comment with the new feedback. Default is true.
    • final_update_message - if persistent_comment is true and updating a previous checks message, the tool will also create a new message: "Persistent checks updated to latest commit". Default is true.

    See more information about the checks tool in the docs.

    @renovate renovate bot force-pushed the renovate/cert-manager-1.x branch from fec0440 to 8521d06 Compare November 20, 2024 21:07
    @renovate renovate bot changed the title feat(deps): update helm release cert-manager to v1.16.1 feat(deps): update helm release cert-manager to v1.16.2 Nov 20, 2024
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    0 participants