Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: cert-manager/cert-manager
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.10.1
Choose a base ref
...
head repository: cert-manager/cert-manager
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.10.2
Choose a head ref

Commits on Nov 22, 2022

  1. fix x/text vuln and ignore AWS vuln

    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish authored and jetstack-bot committed Nov 22, 2022
    Copy the full SHA
    1e6a6bb View commit details
  2. Merge pull request #5592 from jetstack-bot/cherry-pick-5562-to-releas…

    …e-1.10
    
    [release-1.10] Fix x/text vuln and ignore AWS vuln
    jetstack-bot authored Nov 22, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    4b62a31 View commit details

Commits on Nov 29, 2022

  1. Use distinct manifest dirs for signed / unsigned manifests

    This avoids a race condition with the `release-manifests` and
    `release-manifests-signed` targets.
    
    When running in parallel, one could execute `rm -rf
    $(BINDIR)/scratch/manifests` while the other was running.
    
    This could also conceivably have led to incorrectly packaged
    manifests when both were run in parallel.
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish authored and jetstack-bot committed Nov 29, 2022
    Copy the full SHA
    6125381 View commit details

Commits on Dec 7, 2022

  1. bump go to 1.19.4

    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish authored and jetstack-bot committed Dec 7, 2022
    Copy the full SHA
    3642ed5 View commit details
  2. Merge pull request #5620 from jetstack-bot/cherry-pick-5619-to-releas…

    …e-1.10
    
    [release-1.10] Bump go to 1.19.4
    jetstack-bot authored Dec 7, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    5066755 View commit details
  3. remove verify-licenses from ci-presubmit

    see cert-manager/release#111
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish authored and jetstack-bot committed Dec 7, 2022
    Copy the full SHA
    4ba14a5 View commit details
  4. Merge pull request #5622 from jetstack-bot/cherry-pick-5618-to-releas…

    …e-1.10
    
    [release-1.10] Remove verify-licenses from ci-presubmit
    jetstack-bot authored Dec 7, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    0cd9010 View commit details

Commits on Dec 12, 2022

  1. bump dep versions to fix trivy-reported vulns

    ```text
    {
      "VulnerabilityID": "CVE-2022-41717",
      "PkgName": "golang.org/x/net",
      "InstalledVersion": "v0.0.0-20220921155015-db77216a4ee9",
      "FixedVersion": "0.4.0",
      "Layer": {
        "DiffID": "sha256:629212d4fb1b47585329d1c630cb91f919ddcd6168031a07121953d6c6dbd438"
      },
      "PrimaryURL": "https://avd.aquasec.com/nvd/cve-2022-41717",
      "DataSource": {
        "ID": "go-vulndb",
        "Name": "The Go Vulnerability Database",
        "URL": "https://github.com/golang/vulndb"
      },
      "Title": "An attacker can cause excessive memory growth in a Go server accepting ...",
      "Description": "An attacker can cause excessive memory growth in a Go server accepting HTTP/2 requests. HTTP/2 server connections contain a cache of HTTP header keys sent by the client. While the total number of entries in this cache is capped, an attacker sending very large keys can cause the server to allocate approximately 64 MiB per open connection.",
      "Severity": "UNKNOWN",
      "References": [
        "https://go.dev/cl/455635",
        "https://go.dev/cl/455717",
        "https://go.dev/issue/56350",
        "https://groups.google.com/g/golang-announce/c/L_3rmdT0BMU/m/yZDrXjIiBQAJ",
        "https://pkg.go.dev/vuln/GO-2022-1144"
      ],
      "PublishedDate": "2022-12-08T20:15:00Z",
      "LastModifiedDate": "2022-12-08T22:30:00Z"
    }
    ```
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish authored and jetstack-bot committed Dec 12, 2022
    Copy the full SHA
    eece93c View commit details
  2. Merge pull request #5635 from jetstack-bot/cherry-pick-5632-to-releas…

    …e-1.10
    
    [release-1.10] Bump dep versions to fix trivy-reported vulns
    jetstack-bot authored Dec 12, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    ba3a352 View commit details

Commits on Dec 16, 2022

  1. bump base images to latest versions

    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish committed Dec 16, 2022

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    3552a44 View commit details
  2. enable testing with k8s 1.26 by adding new kind image

    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish committed Dec 16, 2022

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    8d35ba6 View commit details
  3. Merge pull request #5647 from SgtCoDFish/release-1.10-k8s1.26

    [release-1.10] Enable k8s 1.26 tests, bump base images and kind images
    jetstack-bot authored Dec 16, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    0819177 View commit details

Commits on Dec 20, 2022

  1. bump version of contour helm chart to 10.0.1

    This matches the version used on the master branch at the time of this
    commit. This version was chosen because it was tested on master. It
    implies a bump of the underlying version of contour from 1.20 -> 1.23,
    but it seems better to use a tested version of the chart rather than a
    previously untested version.
    
    This update is required because the previous version was removed from
    the bitnami helm chart repo.
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish committed Dec 20, 2022

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    e92d036 View commit details
  2. Merge pull request #5657 from SgtCoDFish/bumpcontour

    Bump contour
    jetstack-bot authored Dec 20, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    6cbdf95 View commit details

Commits on Dec 21, 2022

  1. Merge pull request #5607 from jetstack-bot/cherry-pick-5605-to-releas…

    …e-1.10
    
    [release-1.10] Use distinct manifest dirs for signed / unsigned manifests
    jetstack-bot authored Dec 21, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    cb6fb3b View commit details

Commits on Jan 3, 2023

  1. bump helm version to fix CVE-2022-23525

    Vuln description:
    
    Helm is a tool for managing Charts, pre-configured Kubernetes resources.
    Versions prior to 3.10.3 are subject to NULL Pointer Dereference in the
    _repo_package. The _repo_ package contains a handler that processes the
    index file of a repository. For example, the Helm client adds references
    to chart repositories where charts are managed. The _repo_ package
    parses the index file of the repository and loads it into structures Go
    can work with. Some index files can cause array data structures to be
    created causing a memory violation. Applications that use the _repo_
    package in the Helm SDK to parse an index file can suffer a Denial of
    Service when that input causes a panic that cannot be recovered from.
    The Helm Client will panic with an index file that causes a memory
    violation panic. Helm is not a long running service so the panic will
    not affect future uses of the Helm client. This issue has been patched
    in 3.10.3. SDK users can validate index files that are correctly
    formatted before passing them to the _repo_ functions.
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish committed Jan 3, 2023

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    edabf27 View commit details
  2. bump base images to latest versions

    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish committed Jan 3, 2023

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    73ab9e0 View commit details
  3. Merge pull request #5676 from SgtCoDFish/release-1.10-bumphelm

    [release-1.10] Bump helm version to fix CVE-2022-23525
    jetstack-bot authored Jan 3, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    c18921a View commit details
  4. Merge pull request #5677 from SgtCoDFish/release-1.10-bumpbase

    [release-1.10] Bump distroless base images to latest versions
    jetstack-bot authored Jan 3, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    b7d1ce1 View commit details
  5. use template when generating tempdir in verify-crds

    Due to a bug in controller-gen[1] certain paths are incorrectly split
    and part of these paths can be interpreted as a numeric literal, which
    will cause controller-gen to fail. We observe this as occasional test
    flakes in the "verify-crds" target, when the tmpdir starts with a zero,
    such as in "/tmp/tmp.0PFqFSHBID"
    
    This commit attempts to avoid this bug by specifying a template for the
    tmpdir we generate when verifying CRDs which doesn't include any "."
    characters, which seem to be being split incorrectly.
    
    [1] kubernetes-sigs/controller-tools#734
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish authored and jetstack-bot committed Jan 3, 2023
    Copy the full SHA
    ff8589d View commit details
  6. Merge pull request #5682 from jetstack-bot/cherry-pick-5680-to-releas…

    …e-1.10
    
    [release-1.10] Use template when generating tempdir in verify-crds
    jetstack-bot authored Jan 3, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    15269ca View commit details

Commits on Jan 4, 2023

  1. avoid logging confusing error messages for external issuers

    See #5601
    
    When referring to external issuers whose kind is not "Issuer" or
    "ClusterIssuer" we log an error message thanks to a new check added in
    a previous PR[1] which should only trigger for SelfSigned issuers.
    
    The error previously looked like:
    
    ```text
    "error"="invalid value \"x\" for issuerRef.kind. Must
    be empty, \"Issuer\" or \"ClusterIssuer\""
    ```
    
    After this PR, any CR with an issuer whose group or kind doesn't
    match what's expected for a built-in issuer will be skipped
    
    #5336
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    
    WIP: test other issuer kinds
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish authored and jetstack-bot committed Jan 4, 2023
    Copy the full SHA
    12bf491 View commit details
  2. Merge pull request #5687 from jetstack-bot/cherry-pick-5681-to-releas…

    …e-1.10
    
    [release-1.10] Avoid logging confusing error messages for external issuers
    jetstack-bot authored Jan 4, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    93f72dc View commit details

Commits on Jan 9, 2023

  1. Ensures that only one secrets cache is created for cert-manager contr…

    …oller
    
    Signed-off-by: irbekrm <irbekrm@gmail.com>
    irbekrm authored and SgtCoDFish committed Jan 9, 2023

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    34cd134 View commit details
  2. Fix integration tests

    Signed-off-by: irbekrm <irbekrm@gmail.com>
    irbekrm authored and SgtCoDFish committed Jan 9, 2023

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    14f72ba View commit details
  3. Code review feedback- better comment

    Signed-off-by: irbekrm <irbekrm@gmail.com>
    irbekrm authored and SgtCoDFish committed Jan 9, 2023

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    99fb7ab View commit details
  4. Merge pull request #5704 from SgtCoDFish/release-1.10-remove_redundan…

    …t_secret_cache
    
    [release-1.10] Remove redundant secret cache
    jetstack-bot authored Jan 9, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    b31a36e View commit details
  5. bump base images to latest

    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish committed Jan 9, 2023

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    5f2c459 View commit details
  6. Bump containerd to fix reported vuln

    Note that cert-manager is not actually vulnerable to
    CVE-2022-23471 since the affected code is not used.
    
    We only depend on containerd via Helm, and helm only uses
    containerd's "remotes" library which shouldn't be affected
    by the vuln.
    
    This change is intentionally minimal and doesn't use "go get -u=patch"
    because that command brings in additional changes which wouldn't be
    suitable for a backport
    
    Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
    SgtCoDFish committed Jan 9, 2023

    Verified

    This commit was signed with the committer’s verified signature.
    SgtCoDFish Ashley Davis
    Copy the full SHA
    fe3f251 View commit details

Commits on Jan 10, 2023

  1. Merge pull request #5705 from SgtCoDFish/bumpbase

    [release-1.10] Bump base images + fix containerd vuln
    jetstack-bot authored Jan 10, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    707dcff View commit details
7 changes: 7 additions & 0 deletions .trivyignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# These vulns relate to issues with v1 of the AWS Golang SDK
# These issues relate to S3 encryption issues which cert-manager is unlikely to hit
# Fixing them requires upgrading to v2 of the AWS Golang SDK which is a potentially large task
CVE-2020-8911
CVE-2020-8912
GHSA-7f33-f4f5-xwgw
GHSA-f5pg-7wfw-84q9
14 changes: 7 additions & 7 deletions LICENSES
Original file line number Diff line number Diff line change
@@ -36,7 +36,7 @@ github.com/cert-manager/cert-manager/pkg/issuer/acme/dns/util,https://github.com
github.com/cespare/xxhash/v2,https://github.com/cespare/xxhash/blob/v2.1.2/LICENSE.txt,MIT
github.com/chai2010/gettext-go,https://github.com/chai2010/gettext-go/blob/v1.0.2/LICENSE,BSD-3-Clause
github.com/cloudflare/cloudflare-go,https://github.com/cloudflare/cloudflare-go/blob/v0.50.0/LICENSE,BSD-3-Clause
github.com/containerd/containerd,https://github.com/containerd/containerd/blob/v1.6.6/LICENSE,Apache-2.0
github.com/containerd/containerd,https://github.com/containerd/containerd/blob/v1.6.15/LICENSE,Apache-2.0
github.com/coreos/go-semver/semver,https://github.com/coreos/go-semver/blob/v0.3.0/LICENSE,Apache-2.0
github.com/coreos/go-systemd/v22,https://github.com/coreos/go-systemd/blob/v22.3.2/LICENSE,Apache-2.0
github.com/cpu/goacmedns,https://github.com/cpu/goacmedns/blob/v0.1.1/LICENSE,MIT
@@ -126,7 +126,7 @@ github.com/mailru/easyjson,https://github.com/mailru/easyjson/blob/v0.7.6/LICENS
github.com/mattn/go-colorable,https://github.com/mattn/go-colorable/blob/v0.1.12/LICENSE,MIT
github.com/mattn/go-isatty,https://github.com/mattn/go-isatty/blob/v0.0.14/LICENSE,MIT
github.com/mattn/go-runewidth,https://github.com/mattn/go-runewidth/blob/v0.0.13/LICENSE,MIT
github.com/matttproud/golang_protobuf_extensions/pbutil,https://github.com/matttproud/golang_protobuf_extensions/blob/c182affec369/LICENSE,Apache-2.0
github.com/matttproud/golang_protobuf_extensions/pbutil,https://github.com/matttproud/golang_protobuf_extensions/blob/v1.0.4/LICENSE,Apache-2.0
github.com/miekg/dns,https://github.com/miekg/dns/blob/v1.1.50/LICENSE,BSD-3-Clause
github.com/mitchellh/copystructure,https://github.com/mitchellh/copystructure/blob/v1.2.0/LICENSE,MIT
github.com/mitchellh/go-homedir,https://github.com/mitchellh/go-homedir/blob/v1.1.0/LICENSE,MIT
@@ -195,12 +195,12 @@ go.uber.org/atomic,https://github.com/uber-go/atomic/blob/v1.9.0/LICENSE.txt,MIT
go.uber.org/multierr,https://github.com/uber-go/multierr/blob/v1.6.0/LICENSE.txt,MIT
go.uber.org/zap,https://github.com/uber-go/zap/blob/v1.21.0/LICENSE.txt,MIT
golang.org/x/crypto,https://cs.opensource.google/go/x/crypto/+/4ba4fb4d:LICENSE,BSD-3-Clause
golang.org/x/net,https://cs.opensource.google/go/x/net/+/db77216a:LICENSE,BSD-3-Clause
golang.org/x/net,https://cs.opensource.google/go/x/net/+/v0.4.0:LICENSE,BSD-3-Clause
golang.org/x/oauth2,https://cs.opensource.google/go/x/oauth2/+/f2134210:LICENSE,BSD-3-Clause
golang.org/x/sync,https://cs.opensource.google/go/x/sync/+/7f9b1623:LICENSE,BSD-3-Clause
golang.org/x/sys,https://cs.opensource.google/go/x/sys/+/3c1f3524:LICENSE,BSD-3-Clause
golang.org/x/term,https://cs.opensource.google/go/x/term/+/03fcf44c:LICENSE,BSD-3-Clause
golang.org/x/text,https://cs.opensource.google/go/x/text/+/v0.3.7:LICENSE,BSD-3-Clause
golang.org/x/sys,https://cs.opensource.google/go/x/sys/+/v0.3.0:LICENSE,BSD-3-Clause
golang.org/x/term,https://cs.opensource.google/go/x/term/+/v0.3.0:LICENSE,BSD-3-Clause
golang.org/x/text,https://cs.opensource.google/go/x/text/+/v0.5.0:LICENSE,BSD-3-Clause
golang.org/x/time/rate,https://cs.opensource.google/go/x/time/+/579cf78f:LICENSE,BSD-3-Clause
gomodules.xyz/jsonpatch/v2,https://github.com/gomodules/jsonpatch/blob/v2.2.0/v2/LICENSE,Apache-2.0
google.golang.org/api,https://github.com/googleapis/google-api-go-client/blob/v0.97.0/LICENSE,BSD-3-Clause
@@ -215,7 +215,7 @@ gopkg.in/square/go-jose.v2,https://github.com/square/go-jose/blob/v2.5.1/LICENSE
gopkg.in/square/go-jose.v2/json,https://github.com/square/go-jose/blob/v2.5.1/json/LICENSE,BSD-3-Clause
gopkg.in/yaml.v2,https://github.com/go-yaml/yaml/blob/v2.4.0/LICENSE,Apache-2.0
gopkg.in/yaml.v3,https://github.com/go-yaml/yaml/blob/v3.0.1/LICENSE,MIT
helm.sh/helm/v3,https://github.com/helm/helm/blob/v3.10.0/LICENSE,Apache-2.0
helm.sh/helm/v3,https://github.com/helm/helm/blob/v3.10.3/LICENSE,Apache-2.0
k8s.io/api,https://github.com/kubernetes/api/blob/v0.25.2/LICENSE,Apache-2.0
k8s.io/apiextensions-apiserver/pkg,https://github.com/kubernetes/apiextensions-apiserver/blob/v0.25.2/LICENSE,Apache-2.0
k8s.io/apimachinery/pkg,https://github.com/kubernetes/apimachinery/blob/v0.25.2/LICENSE,Apache-2.0
8 changes: 8 additions & 0 deletions devel/cluster/kind_cluster_node_versions.sh
Original file line number Diff line number Diff line change
@@ -21,6 +21,9 @@ KIND_IMAGE_K8S_123=docker.io/kindest/node@sha256:9402cf1330bbd3a0d097d2033fa489b
KIND_IMAGE_K8S_124=docker.io/kindest/node@sha256:97e8d00bc37a7598a0b32d1fabd155a96355c49fa0d4d4790aab0f161bf31be1
KIND_IMAGE_K8S_125=docker.io/kindest/node@sha256:9be91e9e9cdf116809841fc77ebdb8845443c4c72fe5218f3ae9eb57fdb4bace

# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_K8S_126=docker.io/kindest/node@sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352

# docker.io/kindest/node:v1.20.15
KIND_IMAGE_SHA_K8S_120=sha256:d67de8f84143adebe80a07672f370365ec7d23f93dc86866f0e29fa29ce026fe

@@ -39,6 +42,9 @@ KIND_IMAGE_SHA_K8S_124=sha256:97e8d00bc37a7598a0b32d1fabd155a96355c49fa0d4d4790a
# docker.io/kindest/node:v1.25.2
KIND_IMAGE_SHA_K8S_125=sha256:9be91e9e9cdf116809841fc77ebdb8845443c4c72fe5218f3ae9eb57fdb4bace

# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_SHA_K8S_126=sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352

# note that these 'full' digests should be avoided since not all tools support them
# prefer KIND_IMAGE_K8S_*** instead
KIND_IMAGE_FULL_K8S_120=docker.io/kindest/node:v1.20.15@sha256:d67de8f84143adebe80a07672f370365ec7d23f93dc86866f0e29fa29ce026fe
@@ -48,3 +54,5 @@ KIND_IMAGE_FULL_K8S_123=docker.io/kindest/node:v1.23.12@sha256:9402cf1330bbd3a0d
KIND_IMAGE_FULL_K8S_124=docker.io/kindest/node:v1.24.6@sha256:97e8d00bc37a7598a0b32d1fabd155a96355c49fa0d4d4790aab0f161bf31be1
KIND_IMAGE_FULL_K8S_125=docker.io/kindest/node:v1.25.2@sha256:9be91e9e9cdf116809841fc77ebdb8845443c4c72fe5218f3ae9eb57fdb4bace

# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_FULL_K8S_126=docker.io/kindest/node:v1.26.0@sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352
14 changes: 7 additions & 7 deletions go.mod
Original file line number Diff line number Diff line change
@@ -38,7 +38,7 @@ require (
golang.org/x/sync v0.0.0-20220923202941-7f9b1623fab7
gomodules.xyz/jsonpatch/v2 v2.2.0
google.golang.org/api v0.97.0
helm.sh/helm/v3 v3.10.0
helm.sh/helm/v3 v3.10.3
k8s.io/api v0.25.2
k8s.io/apiextensions-apiserver v0.25.2
k8s.io/apimachinery v0.25.2
@@ -86,7 +86,7 @@ require (
github.com/cenkalti/backoff/v3 v3.0.0 // indirect
github.com/cespare/xxhash/v2 v2.1.2 // indirect
github.com/chai2010/gettext-go v1.0.2 // indirect
github.com/containerd/containerd v1.6.6 // indirect
github.com/containerd/containerd v1.6.15 // indirect
github.com/coreos/go-semver v0.3.0 // indirect
github.com/coreos/go-systemd/v22 v22.3.2 // indirect
github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
@@ -168,7 +168,7 @@ require (
github.com/mattn/go-colorable v0.1.12 // indirect
github.com/mattn/go-isatty v0.0.14 // indirect
github.com/mattn/go-runewidth v0.0.13 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
github.com/mitchellh/copystructure v1.2.0 // indirect
github.com/mitchellh/go-testing-interface v1.0.0 // indirect
github.com/mitchellh/go-wordwrap v1.0.0 // indirect
@@ -228,10 +228,10 @@ require (
go.uber.org/multierr v1.6.0 // indirect
go.uber.org/zap v1.21.0 // indirect
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect
golang.org/x/net v0.0.0-20220921155015-db77216a4ee9 // indirect
golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10 // indirect
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect
golang.org/x/text v0.3.7 // indirect
golang.org/x/net v0.4.0 // indirect
golang.org/x/sys v0.3.0 // indirect
golang.org/x/term v0.3.0 // indirect
golang.org/x/text v0.5.0 // indirect
golang.org/x/time v0.0.0-20220609170525-579cf78fd858 // indirect
golang.org/x/tools v0.1.12 // indirect
google.golang.org/appengine v1.6.7 // indirect
31 changes: 17 additions & 14 deletions go.sum
Original file line number Diff line number Diff line change
@@ -109,8 +109,8 @@ github.com/Masterminds/sprig/v3 v3.2.2 h1:17jRggJu518dr3QaafizSXOjKYp94wKfABxUmy
github.com/Masterminds/sprig/v3 v3.2.2/go.mod h1:UoaO7Yp8KlPnJIYWTFkMaqPUYKTfGFPhxNuwnnxkKlk=
github.com/Masterminds/squirrel v1.5.3 h1:YPpoceAcxuzIljlr5iWpNKaql7hLeG1KLSrhvdHpkZc=
github.com/Masterminds/squirrel v1.5.3/go.mod h1:NNaOrjSoIDfDA40n7sr2tPNZRfjzjA400rg+riTZj10=
github.com/Microsoft/go-winio v0.5.1 h1:aPJp2QD7OOrhO5tQXqQoGSJc+DjDtWTGLOmNyAm6FgY=
github.com/Microsoft/hcsshim v0.9.3 h1:k371PzBuRrz2b+ebGuI2nVgVhgsVX60jMfSw80NECxo=
github.com/Microsoft/go-winio v0.5.2 h1:a9IhgEQBCUEk6QCdml9CiJGhAws+YwffDHEMp1VMrpA=
github.com/Microsoft/hcsshim v0.9.6 h1:VwnDOgLeoi2du6dAznfmspNqTiwczvjv4K7NxuY9jsY=
github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ=
github.com/NYTimes/gziphandler v1.1.1 h1:ZUDjpQae29j0ryrS0u/B8HZfJBtBQHjqw2rQ2cqUQ3I=
github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c=
@@ -195,9 +195,9 @@ github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWH
github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8=
github.com/containerd/cgroups v1.0.3 h1:ADZftAkglvCiD44c77s5YmMqaP2pzVCFZvBmAlBdAP4=
github.com/containerd/containerd v1.6.6 h1:xJNPhbrmz8xAMDNoVjHy9YHtWwEQNS+CDkcIRh7t8Y0=
github.com/containerd/containerd v1.6.6/go.mod h1:ZoP1geJldzCVY3Tonoz7b1IXk8rIX0Nltt5QE4OMNk0=
github.com/containerd/cgroups v1.0.4 h1:jN/mbWBEaz+T1pi5OFtnkQ+8qnmEbAr1Oo1FRm5B0dA=
github.com/containerd/containerd v1.6.15 h1:4wWexxzLNHNE46aIETc6ge4TofO550v+BlLoANrbses=
github.com/containerd/containerd v1.6.15/go.mod h1:U2NnBPIhzJDm59xF7xB2MMHnKtggpZ+phKg8o2TKj2c=
github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk=
github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE=
github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE=
@@ -713,8 +713,8 @@ github.com/mattn/go-sqlite3 v1.11.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsO
github.com/mattn/go-sqlite3 v1.14.6 h1:dNPt6NO46WmLVt2DLNpwczCmdV5boIZ6g/tlDrlRUbg=
github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI=
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo=
github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=
github.com/miekg/dns v1.1.50 h1:DQUfb9uc6smULcREF09Uc+/Gd46YWqJd5DbpPE9xkcA=
github.com/miekg/dns v1.1.50/go.mod h1:e3IlAVfNqAllflbibAZEWOXOQ+Ynzk/dDozDxY7XnME=
@@ -1160,8 +1160,8 @@ golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su
golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220909164309-bea034e7d591/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/net v0.0.0-20220921155015-db77216a4ee9 h1:SdDGdqRuKrF2R4XGcnPzcvZ63c/55GvhoHUus0o+BNI=
golang.org/x/net v0.0.0-20220921155015-db77216a4ee9/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/net v0.4.0 h1:Q5QPcMlvfxFTAPV0+07Xz/MpK9NTXu2VDUuy0FeMfaU=
golang.org/x/net v0.4.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -1289,11 +1289,13 @@ golang.org/x/sys v0.0.0-20220502124256-b6088ccd6cba/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10 h1:WIoqL4EROvwiPdUtaip4VcDdpZ4kha7wBWZrbVKCIZg=
golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.3.0 h1:w8ZOecv6NaNa/zC8944JTU3vz4u6Lagfk4RPQxv92NQ=
golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 h1:JGgROgKl9N8DuW20oFS5gxc+lE67/N3FcwmBPMe7ArY=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.3.0 h1:qoo4akIqOcDME5bhc/NgxUdovd6BSS2uMsVjB56q1xI=
golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA=
golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@@ -1303,8 +1305,9 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.5.0 h1:OLmvp0KP+FVG99Ct/qFiL/Fhk4zp4QQnZ7b2U+5piUM=
golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
@@ -1618,8 +1621,8 @@ gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo=
gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw=
gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk=
gotest.tools/v3 v3.0.3 h1:4AuOwCGf4lLR9u3YOe2awrHygurzhO/HeQ6laiA6Sx0=
helm.sh/helm/v3 v3.10.0 h1:y/MYONZ/bsld9kHwqgBX2uPggnUr5hahpjwt9/jrHlI=
helm.sh/helm/v3 v3.10.0/go.mod h1:paPw0hO5KVfrCMbi1M8+P8xdfBri3IiJiVKATZsFR94=
helm.sh/helm/v3 v3.10.3 h1:wL7IUZ7Zyukm5Kz0OUmIFZgKHuAgByCrUcJBtY0kDyw=
helm.sh/helm/v3 v3.10.3/go.mod h1:CXOcs02AYvrlPMWARNYNRgf2rNP7gLJQsi/Ubd4EDrI=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
2 changes: 1 addition & 1 deletion hack/check-crds.sh
Original file line number Diff line number Diff line change
@@ -41,7 +41,7 @@ fi

echo "+++ verifying that generated CRDs are up-to-date..." >&2

tmpdir="$(mktemp -d)"
tmpdir="$(mktemp -d tmp-CHECKCRD-XXXXXXXXX --tmpdir)"
trap 'rm -r $tmpdir' EXIT

make PATCH_CRD_OUTPUT_DIR=$tmpdir patch-crds
12 changes: 11 additions & 1 deletion hack/latest-kind-images.sh
Original file line number Diff line number Diff line change
@@ -55,14 +55,16 @@ LATEST_123_TAG=$(latest_kind_tag "1\\.23")
LATEST_124_TAG=$(latest_kind_tag "1\\.24")
LATEST_125_TAG=$(latest_kind_tag "1\\.25")


LATEST_120_DIGEST=$(crane digest $KIND_IMAGE_REPO:$LATEST_120_TAG)
LATEST_121_DIGEST=$(crane digest $KIND_IMAGE_REPO:$LATEST_121_TAG)
LATEST_122_DIGEST=$(crane digest $KIND_IMAGE_REPO:$LATEST_122_TAG)
LATEST_123_DIGEST=$(crane digest $KIND_IMAGE_REPO:$LATEST_123_TAG)
LATEST_124_DIGEST=$(crane digest $KIND_IMAGE_REPO:$LATEST_124_TAG)
LATEST_125_DIGEST=$(crane digest $KIND_IMAGE_REPO:$LATEST_125_TAG)

# 1.26 is manually added for now, pending a wider rethink of how we can automate bumping of kind images
# given that kind release notes say there are specific digests which should be used with specific kind releases

cat << EOF | tee ./devel/cluster/kind_cluster_node_versions.sh > ./make/kind_images.sh
# Copyright 2022 The cert-manager Authors.
#
@@ -87,6 +89,9 @@ KIND_IMAGE_K8S_123=$KIND_IMAGE_REPO@$LATEST_123_DIGEST
KIND_IMAGE_K8S_124=$KIND_IMAGE_REPO@$LATEST_124_DIGEST
KIND_IMAGE_K8S_125=$KIND_IMAGE_REPO@$LATEST_125_DIGEST
# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_K8S_126=docker.io/kindest/node@sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352
# $KIND_IMAGE_REPO:$LATEST_120_TAG
KIND_IMAGE_SHA_K8S_120=$LATEST_120_DIGEST
@@ -105,6 +110,9 @@ KIND_IMAGE_SHA_K8S_124=$LATEST_124_DIGEST
# $KIND_IMAGE_REPO:$LATEST_125_TAG
KIND_IMAGE_SHA_K8S_125=$LATEST_125_DIGEST
# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_SHA_K8S_126=sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352
# note that these 'full' digests should be avoided since not all tools support them
# prefer KIND_IMAGE_K8S_*** instead
KIND_IMAGE_FULL_K8S_120=$KIND_IMAGE_REPO:$LATEST_120_TAG@$LATEST_120_DIGEST
@@ -114,6 +122,8 @@ KIND_IMAGE_FULL_K8S_123=$KIND_IMAGE_REPO:$LATEST_123_TAG@$LATEST_123_DIGEST
KIND_IMAGE_FULL_K8S_124=$KIND_IMAGE_REPO:$LATEST_124_TAG@$LATEST_124_DIGEST
KIND_IMAGE_FULL_K8S_125=$KIND_IMAGE_REPO:$LATEST_125_TAG@$LATEST_125_DIGEST
# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_FULL_K8S_126=docker.io/kindest/node:v1.26.0@sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352
EOF

cat << EOF
20 changes: 10 additions & 10 deletions make/base_images.mk
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# autogenerated by hack/latest-base-images.sh
STATIC_BASE_IMAGE_amd64 := gcr.io/distroless/static@sha256:99252947b483b5c14d0004c633964d1a235776a3d70f5ca355e9ef8d24cb8275
STATIC_BASE_IMAGE_arm64 := gcr.io/distroless/static@sha256:9363a36eb72591c3e501d4072406aab2eff3899fe4dfbd131b038e53ed56ba80
STATIC_BASE_IMAGE_s390x := gcr.io/distroless/static@sha256:78e1f66d521df86c93a344ba44dfe99c60671848a33944c955cf178cf6b912cc
STATIC_BASE_IMAGE_arm := gcr.io/distroless/static@sha256:98e098bfea31fa6090f8ee7bb558a573fc1ee2d8b74fa4856c43b97b21f8a75e
STATIC_BASE_IMAGE_ppc64le := gcr.io/distroless/static@sha256:1105995233315eb338996ab515b697c6dec9a08a1f1080911e2f9a25520e58cd
DYNAMIC_BASE_IMAGE_amd64 := gcr.io/distroless/base@sha256:826bce53be26d70d4c7a99d1bdadef47f73134ed47b90b8480a2f4a96b300461
DYNAMIC_BASE_IMAGE_arm64 := gcr.io/distroless/base@sha256:520b5d929d01aa5867b28de37b80b3b8c6479c11072d8398fd1cf6cf66343c17
DYNAMIC_BASE_IMAGE_s390x := gcr.io/distroless/base@sha256:e7fda00b189020c7683e862c087a00832f7293f056e2d70da96cb17dadb233ea
DYNAMIC_BASE_IMAGE_arm := gcr.io/distroless/base@sha256:4f6eff9ee15b0f9a66d989386c53fc2b8edfae4ba46de841505d8f0222d09311
DYNAMIC_BASE_IMAGE_ppc64le := gcr.io/distroless/base@sha256:9f77713a049486c301e75078c4d7c4c726daac6f28fab3dcea9b0ff2828c0401
STATIC_BASE_IMAGE_amd64 := gcr.io/distroless/static@sha256:ea2ed73931ecd5d70f0bf3fdaa481c84f556cc205d6ceec78dff335fc4a313b2
STATIC_BASE_IMAGE_arm64 := gcr.io/distroless/static@sha256:59a12639776ac4711629733e0b84fcf8c790cced9e43a607cfae71ddc52b03a1
STATIC_BASE_IMAGE_s390x := gcr.io/distroless/static@sha256:5dd8516dee7953ce750ad8266f8270fdf83a23db6637b988fb6e5c561596758d
STATIC_BASE_IMAGE_arm := gcr.io/distroless/static@sha256:eb2ff3d43dfd61f1f58c175191017439e6eb1e337d1d4a1e1b50b47ea76485e7
STATIC_BASE_IMAGE_ppc64le := gcr.io/distroless/static@sha256:02b030910780d033776981411311bc73accc2d364c36e0cba7f115b365c6b750
DYNAMIC_BASE_IMAGE_amd64 := gcr.io/distroless/base@sha256:0216d8712854b61db71b95f836caa48f5ace55fa66584f5a0b346765398b2520
DYNAMIC_BASE_IMAGE_arm64 := gcr.io/distroless/base@sha256:31ef0cacc560882180cfdfa23f734652bd1a94d63c65129a1ac37f710accc2c7
DYNAMIC_BASE_IMAGE_s390x := gcr.io/distroless/base@sha256:1a7bbe8de1939308fc8a07dc3e713db9b083044888238f9424c3edb0944872a4
DYNAMIC_BASE_IMAGE_arm := gcr.io/distroless/base@sha256:251a910de5d80be4c9ce52e9448ba3f9b799187395a4c72f0fc1bdb7a614a5a1
DYNAMIC_BASE_IMAGE_ppc64le := gcr.io/distroless/base@sha256:b41cc0e19028f1ac460e8049d4b0214514f36ac5375a692df2d9173338084799
5 changes: 4 additions & 1 deletion make/ci.mk
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@
## request or change is merged.
##
## @category CI
ci-presubmit: verify-imports verify-errexit verify-boilerplate verify-codegen verify-crds verify-licenses
ci-presubmit: verify-imports verify-errexit verify-boilerplate verify-codegen verify-crds

.PHONY: verify-imports
verify-imports: | $(NEEDS_GOIMPORTS)
@@ -25,6 +25,9 @@ verify-boilerplate:
$(__PYTHON) hack/verify_boilerplate.py

.PHONY: verify-licenses
## Check that the LICENSES file is up to date; must pass before a change to go.mod can be merged
##
## @category CI
verify-licenses: $(BINDIR)/scratch/LATEST-LICENSES
@diff $(BINDIR)/scratch/LATEST-LICENSES LICENSES >/dev/null || (echo -e "\033[0;33mLICENSES seem to be out of date; update with 'make update-licenses'\033[0m" && exit 1)

1 change: 1 addition & 0 deletions make/cluster.sh
Original file line number Diff line number Diff line change
@@ -110,6 +110,7 @@ case "$k8s_version" in
1.23*) image=$KIND_IMAGE_FULL_K8S_123 ;;
1.24*) image=$KIND_IMAGE_FULL_K8S_124 ;;
1.25*) image=$KIND_IMAGE_FULL_K8S_125 ;;
1.26*) image=$KIND_IMAGE_FULL_K8S_126 ;;
v*) printf "${red}${redcross}Error${end}: Kubernetes version must be given without the leading 'v'\n" >&2 && exit 1 ;;
*) printf "${red}${redcross}Error${end}: unsupported Kubernetes version ${yel}${k8s_version}${end}\n" >&2 && exit 1 ;;
esac
4 changes: 2 additions & 2 deletions make/e2e-setup.mk
Original file line number Diff line number Diff line change
@@ -10,7 +10,7 @@ CRI_ARCH := $(HOST_ARCH)

# TODO: this version is also defaulted in ./make/cluster.sh. Make it so that it
# is set in one place only.
K8S_VERSION := 1.24
K8S_VERSION := 1.25

IMAGE_ingressnginx_amd64 := k8s.gcr.io/ingress-nginx/controller:v1.1.0@sha256:7464dc90abfaa084204176bcc0728f182b0611849395787143f6854dc6c38c85
IMAGE_kyverno_amd64 := ghcr.io/kyverno/kyverno:v1.7.1@sha256:aec4b029660d47aea025336150fdc2822c991f592d5170d754b6acaf158b513e
@@ -315,7 +315,7 @@ e2e-setup-projectcontour: $(call image-tar,projectcontour) load-$(call image-tar
$(HELM) upgrade \
--install \
--wait \
--version 7.8.1 \
--version 10.0.1 \
--namespace projectcontour \
--create-namespace \
--set contour.ingressClass.create=false \
8 changes: 8 additions & 0 deletions make/kind_images.sh
Original file line number Diff line number Diff line change
@@ -21,6 +21,9 @@ KIND_IMAGE_K8S_123=docker.io/kindest/node@sha256:9402cf1330bbd3a0d097d2033fa489b
KIND_IMAGE_K8S_124=docker.io/kindest/node@sha256:97e8d00bc37a7598a0b32d1fabd155a96355c49fa0d4d4790aab0f161bf31be1
KIND_IMAGE_K8S_125=docker.io/kindest/node@sha256:9be91e9e9cdf116809841fc77ebdb8845443c4c72fe5218f3ae9eb57fdb4bace

# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_K8S_126=docker.io/kindest/node@sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352

# docker.io/kindest/node:v1.20.15
KIND_IMAGE_SHA_K8S_120=sha256:d67de8f84143adebe80a07672f370365ec7d23f93dc86866f0e29fa29ce026fe

@@ -39,6 +42,9 @@ KIND_IMAGE_SHA_K8S_124=sha256:97e8d00bc37a7598a0b32d1fabd155a96355c49fa0d4d4790a
# docker.io/kindest/node:v1.25.2
KIND_IMAGE_SHA_K8S_125=sha256:9be91e9e9cdf116809841fc77ebdb8845443c4c72fe5218f3ae9eb57fdb4bace

# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_SHA_K8S_126=sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352

# note that these 'full' digests should be avoided since not all tools support them
# prefer KIND_IMAGE_K8S_*** instead
KIND_IMAGE_FULL_K8S_120=docker.io/kindest/node:v1.20.15@sha256:d67de8f84143adebe80a07672f370365ec7d23f93dc86866f0e29fa29ce026fe
@@ -48,3 +54,5 @@ KIND_IMAGE_FULL_K8S_123=docker.io/kindest/node:v1.23.12@sha256:9402cf1330bbd3a0d
KIND_IMAGE_FULL_K8S_124=docker.io/kindest/node:v1.24.6@sha256:97e8d00bc37a7598a0b32d1fabd155a96355c49fa0d4d4790aab0f161bf31be1
KIND_IMAGE_FULL_K8S_125=docker.io/kindest/node:v1.25.2@sha256:9be91e9e9cdf116809841fc77ebdb8845443c4c72fe5218f3ae9eb57fdb4bace

# Manually set - see hack/latest-kind-images.sh for details
KIND_IMAGE_FULL_K8S_126=docker.io/kindest/node:v1.26.0@sha256:691e24bd2417609db7e589e1a479b902d2e209892a10ce375fab60a8407c7352
35 changes: 19 additions & 16 deletions make/manifests.mk
Original file line number Diff line number Diff line change
@@ -41,23 +41,23 @@ release-manifests: $(BINDIR)/scratch/cert-manager-manifests-unsigned.tar.gz
## @category Release
release-manifests-signed: $(BINDIR)/release/cert-manager-manifests.tar.gz $(BINDIR)/metadata/cert-manager-manifests.tar.gz.metadata.json

$(BINDIR)/release/cert-manager-manifests.tar.gz: $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz.prov | $(BINDIR)/scratch/manifests $(BINDIR)/release
mkdir -p $(BINDIR)/scratch/manifests/deploy/chart/
mkdir -p $(BINDIR)/scratch/manifests/deploy/manifests/
cp $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz.prov $(BINDIR)/scratch/manifests/deploy/chart/
cp $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml $(BINDIR)/scratch/manifests/deploy/manifests/
$(BINDIR)/release/cert-manager-manifests.tar.gz: $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz.prov | $(BINDIR)/scratch/manifests-signed $(BINDIR)/release
mkdir -p $(BINDIR)/scratch/manifests-signed/deploy/chart/
mkdir -p $(BINDIR)/scratch/manifests-signed/deploy/manifests/
cp $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz.prov $(BINDIR)/scratch/manifests-signed/deploy/chart/
cp $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml $(BINDIR)/scratch/manifests-signed/deploy/manifests/
# removes leading ./ from archived paths
find $(BINDIR)/scratch/manifests -maxdepth 1 -mindepth 1 | sed 's|.*/||' | tar czf $@ -C $(BINDIR)/scratch/manifests -T -
rm -rf $(BINDIR)/scratch/manifests

$(BINDIR)/scratch/cert-manager-manifests-unsigned.tar.gz: $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml | $(BINDIR)/scratch/manifests
mkdir -p $(BINDIR)/scratch/manifests/deploy/chart/
mkdir -p $(BINDIR)/scratch/manifests/deploy/manifests/
cp $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/scratch/manifests/deploy/chart/
cp $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml $(BINDIR)/scratch/manifests/deploy/manifests/
find $(BINDIR)/scratch/manifests-signed -maxdepth 1 -mindepth 1 | sed 's|.*/||' | tar czf $@ -C $(BINDIR)/scratch/manifests-signed -T -
rm -rf $(BINDIR)/scratch/manifests-signed

$(BINDIR)/scratch/cert-manager-manifests-unsigned.tar.gz: $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml | $(BINDIR)/scratch/manifests-unsigned
mkdir -p $(BINDIR)/scratch/manifests-unsigned/deploy/chart/
mkdir -p $(BINDIR)/scratch/manifests-unsigned/deploy/manifests/
cp $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz $(BINDIR)/scratch/manifests-unsigned/deploy/chart/
cp $(BINDIR)/yaml/cert-manager.crds.yaml $(BINDIR)/yaml/cert-manager.yaml $(BINDIR)/scratch/manifests-unsigned/deploy/manifests/
# removes leading ./ from archived paths
find $(BINDIR)/scratch/manifests -maxdepth 1 -mindepth 1 | sed 's|.*/||' | tar czf $@ -C $(BINDIR)/scratch/manifests -T -
rm -rf $(BINDIR)/scratch/manifests
find $(BINDIR)/scratch/manifests-unsigned -maxdepth 1 -mindepth 1 | sed 's|.*/||' | tar czf $@ -C $(BINDIR)/scratch/manifests-unsigned -T -
rm -rf $(BINDIR)/scratch/manifests-unsigned

# This metadata blob is constructed slightly differently and doesn't use hack/artifact-metadata.template.json directly;
# this is because the bazel staged releases didn't include an "os" or "architecture" field for this artifact
@@ -164,7 +164,10 @@ $(BINDIR)/helm/cert-manager/templates:
$(BINDIR)/scratch/yaml:
@mkdir -p $@

$(BINDIR)/scratch/manifests:
$(BINDIR)/scratch/manifests-unsigned:
@mkdir -p $@

$(BINDIR)/scratch/manifests-signed:
@mkdir -p $@

$(BINDIR)/yaml/templated-crds:
2 changes: 1 addition & 1 deletion make/tools.mk
Original file line number Diff line number Diff line change
@@ -36,7 +36,7 @@ KUBEBUILDER_ASSETS_VERSION=1.25.0
TOOLS += etcd=$(KUBEBUILDER_ASSETS_VERSION)
TOOLS += kube-apiserver=$(KUBEBUILDER_ASSETS_VERSION)

VENDORED_GO_VERSION := 1.19.3
VENDORED_GO_VERSION := 1.19.4

# When switching branches which use different versions of the tools, we
# need a way to re-trigger the symlinking from $(BINDIR)/downloaded to $(BINDIR)/tools.
6 changes: 6 additions & 0 deletions pkg/controller/certificaterequests/selfsigned/checks.go
Original file line number Diff line number Diff line change
@@ -26,6 +26,7 @@ import (
"k8s.io/client-go/util/workqueue"

apiutil "github.com/cert-manager/cert-manager/pkg/api/util"
cmdoc "github.com/cert-manager/cert-manager/pkg/apis/certmanager"
cmapi "github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1"
clientv1 "github.com/cert-manager/cert-manager/pkg/client/listers/certmanager/v1"
controllerpkg "github.com/cert-manager/cert-manager/pkg/controller"
@@ -85,6 +86,11 @@ func certificateRequestsForSecret(log logr.Logger,
dbg.Info("checking if self signed certificate requests reference secret")
var affected []*cmapi.CertificateRequest
for _, request := range requests {
if request.Spec.IssuerRef.Group != cmdoc.GroupName {
dbg.Info("skipping SelfSigned secret reference checks since issuer has external group", "group", request.Spec.IssuerRef.Group)
continue
}

issuerObj, err := helper.GetGenericIssuer(request.Spec.IssuerRef, request.Namespace)
if k8sErrors.IsNotFound(err) {
dbg.Info("issuer not found, skipping")
14 changes: 14 additions & 0 deletions pkg/controller/certificaterequests/selfsigned/checks_test.go
Original file line number Diff line number Diff line change
@@ -225,6 +225,20 @@ func Test_certificatesRequestsForSecret(t *testing.T) {
},
expectedAffected: []*cmapi.CertificateRequest{},
},
"if issuer has different group, do nothing": {
existingCRs: []runtime.Object{
gen.CertificateRequest("a",
gen.SetCertificateRequestNamespace("test-namespace"),
gen.SetCertificateRequestAnnotations(map[string]string{
"cert-manager.io/private-key-secret-name": "test-secret",
}), gen.SetCertificateRequestIssuer(cmmeta.ObjectReference{
Name: "a", Kind: "Keith", Group: "not-cert-manager.io",
}),
),
},
existingIssuers: []runtime.Object{},
expectedAffected: []*cmapi.CertificateRequest{},
},
"should not return requests which are in a different namespace": {
existingCRs: []runtime.Object{
gen.CertificateRequest("a",
3 changes: 2 additions & 1 deletion pkg/issuer/acme/dns/dns.go
Original file line number Diff line number Diff line change
@@ -488,9 +488,10 @@ func (s *Solver) dns01SolverForConfig(config *cmacme.ACMEChallengeSolverDNS01) (
// NewSolver creates a Solver which can instantiate the appropriate DNS
// provider.
func NewSolver(ctx *controller.Context) (*Solver, error) {
secretsLister := ctx.KubeSharedInformerFactory.Core().V1().Secrets().Lister()
webhookSolvers := []webhook.Solver{
&webhookslv.Webhook{},
rfc2136.New(rfc2136.WithNamespace(ctx.Namespace)),
rfc2136.New(rfc2136.WithNamespace(ctx.Namespace), rfc2136.WithSecretsLister(secretsLister)),
}

initialized := make(map[string]webhook.Solver)
39 changes: 27 additions & 12 deletions pkg/issuer/acme/dns/rfc2136/provider.go
Original file line number Diff line number Diff line change
@@ -33,6 +33,8 @@ import (
logf "github.com/cert-manager/cert-manager/pkg/logs"
)

const SolverName = "rfc2136"

type Solver struct {
secretLister corelisters.SecretLister

@@ -50,6 +52,12 @@ func WithNamespace(ns string) Option {
}
}

func WithSecretsLister(secretLister corelisters.SecretLister) Option {
return func(s *Solver) {
s.secretLister = secretLister
}
}

func New(opts ...Option) *Solver {
s := &Solver{}
for _, o := range opts {
@@ -59,7 +67,7 @@ func New(opts ...Option) *Solver {
}

func (s *Solver) Name() string {
return "rfc2136"
return SolverName
}

func (s *Solver) Present(ch *whapi.ChallengeRequest) error {
@@ -91,18 +99,25 @@ func (s *Solver) CleanUp(ch *whapi.ChallengeRequest) error {
}

func (s *Solver) Initialize(kubeClientConfig *restclient.Config, stopCh <-chan struct{}) error {
cl, err := kubernetes.NewForConfig(kubeClientConfig)
if err != nil {
return err
// Only start a secrets informerfactory if it is needed (if the solver
// is not already initialized with a secrets lister) This is legacy
// functionality. If you have a secrets watcher already available in the
// caller, you probably want to use that to avoid double caching the
// Secrets
// TODO: refactor and remove this functionality
if s.secretLister == nil {
cl, err := kubernetes.NewForConfig(kubeClientConfig)
if err != nil {
return err
}

// obtain a secret lister and start the informer factory to populate the
// secret cache
factory := informers.NewSharedInformerFactoryWithOptions(cl, time.Minute*5, informers.WithNamespace(s.namespace))
s.secretLister = factory.Core().V1().Secrets().Lister()
factory.Start(stopCh)
factory.WaitForCacheSync(stopCh)
}

// obtain a secret lister and start the informer factory to populate the
// secret cache
factory := informers.NewSharedInformerFactoryWithOptions(cl, time.Minute*5, informers.WithNamespace(s.namespace))
s.secretLister = factory.Core().V1().Secrets().Lister()
factory.Start(stopCh)
factory.WaitForCacheSync(stopCh)

return nil
}

28 changes: 26 additions & 2 deletions test/acme/dns/fixture.go
Original file line number Diff line number Diff line change
@@ -24,10 +24,12 @@ import (
"time"

apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
"k8s.io/client-go/informers"
"k8s.io/client-go/kubernetes"
"sigs.k8s.io/controller-runtime/pkg/envtest"

"github.com/cert-manager/cert-manager/pkg/acme/webhook"
"github.com/cert-manager/cert-manager/pkg/issuer/acme/dns/rfc2136"
"github.com/cert-manager/cert-manager/test/internal/apiserver"
)

@@ -42,7 +44,8 @@ func init() {
type fixture struct {
// testSolver is the actual DNS solver that is under test.
// It is set when calling the NewFixture function.
testSolver webhook.Solver
testSolver webhook.Solver
testSolverType string

resolvedFQDN string
resolvedZone string
@@ -96,7 +99,28 @@ func (f *fixture) setup(t *testing.T) func() {
f.clientset = cl

stopCh := make(chan struct{})
f.testSolver.Initialize(env.Config, stopCh)

var testSolver webhook.Solver
switch f.testSolverType {
case rfc2136.SolverName:
cl, err := kubernetes.NewForConfig(env.Config)
if err != nil {
t.Errorf("error initializing solver: %#+v", err)
}

// obtain a secret lister and start the informer factory to populate the
// secret cache
factory := informers.NewSharedInformerFactoryWithOptions(cl, time.Minute*5)
secretLister := factory.Core().V1().Secrets().Lister()
factory.Start(stopCh)
factory.WaitForCacheSync(stopCh)
testSolver = rfc2136.New(rfc2136.WithSecretsLister(secretLister))
f.testSolver = testSolver
default:
t.Errorf("unknown solver type: %s", f.testSolverType)
}

testSolver.Initialize(env.Config, stopCh)

return func() {
close(stopCh)
6 changes: 2 additions & 4 deletions test/acme/dns/options.go
Original file line number Diff line number Diff line change
@@ -24,18 +24,16 @@ import (
"time"

apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"

"github.com/cert-manager/cert-manager/pkg/acme/webhook"
)

// Option applies a configuration option to the test fixture being built
type Option func(*fixture)

// NewFixture constructs a new *fixture, applying the given Options before
// returning.
func NewFixture(solver webhook.Solver, opts ...Option) *fixture {
func NewFixture(solverType string, opts ...Option) *fixture {
f := &fixture{
testSolver: solver,
testSolverType: solverType,
}
for _, o := range opts {
o(f)
4 changes: 2 additions & 2 deletions test/integration/rfc2136_dns01/provider_test.go
Original file line number Diff line number Diff line change
@@ -59,7 +59,7 @@ func TestRunSuiteWithTSIG(t *testing.T) {
TSIGKeyName: rfc2136TestTsigKeyName,
}

fixture := dns.NewFixture(&rfc2136.Solver{},
fixture := dns.NewFixture(rfc2136.SolverName,
dns.SetResolvedZone(rfc2136TestZone),
dns.SetResolvedFQDN(rfc2136TestFqdn),
dns.SetAllowAmbientCredentials(false),
@@ -91,7 +91,7 @@ func TestRunSuiteNoTSIG(t *testing.T) {
Nameserver: server.ListenAddr(),
}

fixture := dns.NewFixture(&rfc2136.Solver{},
fixture := dns.NewFixture(rfc2136.SolverName,
dns.SetResolvedZone(rfc2136TestZone),
dns.SetResolvedFQDN(rfc2136TestFqdn),
dns.SetAllowAmbientCredentials(false),