renovate/lib/modules/manager/kustomize
2022-03-17 05:47:52 +01:00
..
__fixtures__ refactor: lib/modules (#14488) 2022-03-04 09:04:02 +01:00
__snapshots__ refactor: rename lookupName -> packageName (#14494) 2022-03-04 09:04:02 +01:00
extract.spec.ts fix(kustomize): accept kustomization files without header (#14651) 2022-03-17 05:47:52 +01:00
extract.ts fix(kustomize): accept kustomization files without header (#14651) 2022-03-17 05:47:52 +01:00
index.ts refactor: lib/modules (#14488) 2022-03-04 09:04:02 +01:00
readme.md fix(kustomize): accept kustomization files without header (#14651) 2022-03-17 05:47:52 +01:00
types.ts fix(kustomize): accept kustomization files without header (#14651) 2022-03-17 05:47:52 +01:00

This package will manage the following parts of the kustomization.yaml file:

  1. remote resources
  2. image tags
  3. components
  4. helm charts
  5. remote bases (deprecated since kustomize v2.1.0)

How It Works

  1. Renovate will search each repository for any kustomization.yaml files.
  2. Existing dependencies will be extracted from remote bases, image tags & Helm charts
  3. Renovate will resolve the dependency's source repository and check for SemVer tags if found.
  4. If an update was found, Renovate will update kustomization.yaml

This manager uses three depTypes to allow a fine-grained control of which dependencies are upgraded:

  • Component
  • Kustomization
  • HelmChart

Limitations

  • Currently this hasn't been tested using HTTPS to fetch the repos
  • The keys for the image tags can be in any order
- name: image/name
  newTag: v0.0.1
# or
- newTag: v0.0.1
  name: image/name
  • Digests can be pinned in newTag or digest:
- name: image/name
  newTag: v0.0.1@sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f
# without a version, digests are tracked as :latest
- name: image/name
  digest: sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f
  • The image's repository can be changed with newName:
- name: image/name
  newName: custom-image/name:v0.0.1
- name: image/name
  newName: custom-image/name:v0.0.1@sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f
- name: image/name
  newName: custom-image/name@sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f
- name: image/name
  newName: custom-image/name
  newTag: v0.0.1@sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f
- name: image/name
  newName: custom-image/name
  digest: sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f
  • Images with values ignored by Kustomize will be skipped to avoid ambiguity:
# bad: skipped because newTag: is ignored when digest: is set
- name: image/name
  newTag: v0.0.1
  digest: sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f
# good:
- name: image/name
  newTag: v0.0.1@sha256:3eeba3e2caa30d2aba0fd78a34c1bbeebaa1b96c7aa3c95ec9bac44163c5ca4f