renovate 42.4.0 → 42.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/decrypt.js +13 -14
- package/dist/config/decrypt.js.map +1 -1
- package/dist/config/massage.js +6 -7
- package/dist/config/massage.js.map +1 -1
- package/dist/config/migrate-validate.js +3 -3
- package/dist/config/migrate-validate.js.map +1 -1
- package/dist/config/migration.js +19 -20
- package/dist/config/migration.js.map +1 -1
- package/dist/config/migrations/base/abstract-migration.js +5 -6
- package/dist/config/migrations/base/abstract-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-major-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-major-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-migration.js +4 -5
- package/dist/config/migrations/custom/automerge-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-minor-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-minor-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-patch-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-patch-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-type-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-type-migration.js.map +1 -1
- package/dist/config/migrations/custom/base-branch-migration.js +3 -4
- package/dist/config/migrations/custom/base-branch-migration.js.map +1 -1
- package/dist/config/migrations/custom/branch-name-migration.js +2 -3
- package/dist/config/migrations/custom/branch-name-migration.js.map +1 -1
- package/dist/config/migrations/custom/branch-prefix-migration.js +2 -3
- package/dist/config/migrations/custom/branch-prefix-migration.js.map +1 -1
- package/dist/config/migrations/custom/compatibility-migration.js +2 -3
- package/dist/config/migrations/custom/compatibility-migration.js.map +1 -1
- package/dist/config/migrations/custom/composer-ignore-platform-reqs-migration.js +2 -3
- package/dist/config/migrations/custom/composer-ignore-platform-reqs-migration.js.map +1 -1
- package/dist/config/migrations/custom/custom-managers-migration.js +2 -3
- package/dist/config/migrations/custom/custom-managers-migration.js.map +1 -1
- package/dist/config/migrations/custom/datasource-migration.js +2 -3
- package/dist/config/migrations/custom/datasource-migration.js.map +1 -1
- package/dist/config/migrations/custom/dep-types-migration.js +4 -5
- package/dist/config/migrations/custom/dep-types-migration.js.map +1 -1
- package/dist/config/migrations/custom/enabled-managers-migration.js +2 -3
- package/dist/config/migrations/custom/enabled-managers-migration.js.map +1 -1
- package/dist/config/migrations/custom/extends-migration.js +4 -5
- package/dist/config/migrations/custom/extends-migration.js.map +1 -1
- package/dist/config/migrations/custom/fetch-release-notes-migration.js +2 -3
- package/dist/config/migrations/custom/fetch-release-notes-migration.js.map +1 -1
- package/dist/config/migrations/custom/file-match-migration.js +3 -4
- package/dist/config/migrations/custom/file-match-migration.js.map +1 -1
- package/dist/config/migrations/custom/host-rules-migration.js +6 -7
- package/dist/config/migrations/custom/host-rules-migration.js.map +1 -1
- package/dist/config/migrations/custom/ignore-npmrc-file-migration.js +2 -3
- package/dist/config/migrations/custom/ignore-npmrc-file-migration.js.map +1 -1
- package/dist/config/migrations/custom/include-forks-migration.js +2 -3
- package/dist/config/migrations/custom/include-forks-migration.js.map +1 -1
- package/dist/config/migrations/custom/match-datasources-migration.js +2 -3
- package/dist/config/migrations/custom/match-datasources-migration.js.map +1 -1
- package/dist/config/migrations/custom/match-managers-migration.js +2 -3
- package/dist/config/migrations/custom/match-managers-migration.js.map +1 -1
- package/dist/config/migrations/custom/match-strings-migration.js +2 -3
- package/dist/config/migrations/custom/match-strings-migration.js.map +1 -1
- package/dist/config/migrations/custom/package-files-migration.js +6 -7
- package/dist/config/migrations/custom/package-files-migration.js.map +1 -1
- package/dist/config/migrations/custom/package-rules-migration.js +15 -16
- package/dist/config/migrations/custom/package-rules-migration.js.map +1 -1
- package/dist/config/migrations/custom/packages-migration.js +3 -4
- package/dist/config/migrations/custom/packages-migration.js.map +1 -1
- package/dist/config/migrations/custom/path-rules-migration.js +3 -4
- package/dist/config/migrations/custom/path-rules-migration.js.map +1 -1
- package/dist/config/migrations/custom/pin-versions-migration.js +2 -3
- package/dist/config/migrations/custom/pin-versions-migration.js.map +1 -1
- package/dist/config/migrations/custom/platform-commit-migration.js +2 -3
- package/dist/config/migrations/custom/platform-commit-migration.js.map +1 -1
- package/dist/config/migrations/custom/post-update-options-migration.js +2 -3
- package/dist/config/migrations/custom/post-update-options-migration.js.map +1 -1
- package/dist/config/migrations/custom/rebase-stale-prs-migration.js +2 -3
- package/dist/config/migrations/custom/rebase-stale-prs-migration.js.map +1 -1
- package/dist/config/migrations/custom/recreate-closed-migration.js +2 -3
- package/dist/config/migrations/custom/recreate-closed-migration.js.map +1 -1
- package/dist/config/migrations/custom/renovate-fork-migration.js +2 -3
- package/dist/config/migrations/custom/renovate-fork-migration.js.map +1 -1
- package/dist/config/migrations/custom/schedule-migration.js +4 -4
- package/dist/config/migrations/custom/schedule-migration.js.map +1 -1
- package/dist/config/migrations/custom/semantic-commits-migration.js +2 -3
- package/dist/config/migrations/custom/semantic-commits-migration.js.map +1 -1
- package/dist/config/migrations/custom/semantic-prefix-migration.js +2 -3
- package/dist/config/migrations/custom/semantic-prefix-migration.js.map +1 -1
- package/dist/config/migrations/custom/stability-days-migration.js +2 -3
- package/dist/config/migrations/custom/stability-days-migration.js.map +1 -1
- package/dist/config/migrations/custom/suppress-notifications-migration.js +2 -3
- package/dist/config/migrations/custom/suppress-notifications-migration.js.map +1 -1
- package/dist/config/migrations/custom/unpublish-safe-migration.js +2 -3
- package/dist/config/migrations/custom/unpublish-safe-migration.js.map +1 -1
- package/dist/config/migrations/migrations-service.js +2 -3
- package/dist/config/migrations/migrations-service.js.map +1 -1
- package/dist/config/options/index.js +7 -0
- package/dist/config/options/index.js.map +1 -1
- package/dist/config/presets/github/index.js +2 -3
- package/dist/config/presets/github/index.js.map +1 -1
- package/dist/config/presets/gitlab/index.js +2 -3
- package/dist/config/presets/gitlab/index.js.map +1 -1
- package/dist/config/presets/index.js +8 -8
- package/dist/config/presets/index.js.map +1 -1
- package/dist/config/presets/parse.js +2 -3
- package/dist/config/presets/parse.js.map +1 -1
- package/dist/config/secrets.js +3 -4
- package/dist/config/secrets.js.map +1 -1
- package/dist/config/types.d.ts +1 -0
- package/dist/config/types.js.map +1 -1
- package/dist/config/validation-helpers/match-base-branches.js +2 -3
- package/dist/config/validation-helpers/match-base-branches.js.map +1 -1
- package/dist/config/validation-helpers/regex-glob-matchers.js +2 -3
- package/dist/config/validation-helpers/regex-glob-matchers.js.map +1 -1
- package/dist/config/validation-helpers/utils.js +6 -6
- package/dist/config/validation-helpers/utils.js.map +1 -1
- package/dist/config/validation.js +29 -29
- package/dist/config/validation.js.map +1 -1
- package/dist/instrumentation/reporting.js +7 -8
- package/dist/instrumentation/reporting.js.map +1 -1
- package/dist/instrumentation/utils.js +2 -3
- package/dist/instrumentation/utils.js.map +1 -1
- package/dist/logger/err-serializer.js +2 -2
- package/dist/logger/err-serializer.js.map +1 -1
- package/dist/logger/index.js +3 -3
- package/dist/logger/index.js.map +1 -1
- package/dist/logger/renovate-logger.js +4 -5
- package/dist/logger/renovate-logger.js.map +1 -1
- package/dist/logger/utils.js +19 -19
- package/dist/logger/utils.js.map +1 -1
- package/dist/modules/datasource/aws-eks-addon/index.js +2 -2
- package/dist/modules/datasource/aws-eks-addon/index.js.map +1 -1
- package/dist/modules/datasource/bazel/index.js +2 -2
- package/dist/modules/datasource/bazel/index.js.map +1 -1
- package/dist/modules/datasource/bitrise/index.js +2 -2
- package/dist/modules/datasource/bitrise/index.js.map +1 -1
- package/dist/modules/datasource/common.js +4 -4
- package/dist/modules/datasource/common.js.map +1 -1
- package/dist/modules/datasource/conan/index.js +3 -3
- package/dist/modules/datasource/conan/index.js.map +1 -1
- package/dist/modules/datasource/custom/formats/html.js +2 -5
- package/dist/modules/datasource/custom/formats/html.js.map +1 -1
- package/dist/modules/datasource/custom/index.js +2 -3
- package/dist/modules/datasource/custom/index.js.map +1 -1
- package/dist/modules/datasource/custom/utils.js +4 -4
- package/dist/modules/datasource/custom/utils.js.map +1 -1
- package/dist/modules/datasource/dart-version/index.js +2 -3
- package/dist/modules/datasource/dart-version/index.js.map +1 -1
- package/dist/modules/datasource/deno/index.js +2 -2
- package/dist/modules/datasource/deno/index.js.map +1 -1
- package/dist/modules/datasource/docker/common.js +5 -5
- package/dist/modules/datasource/docker/common.js.map +1 -1
- package/dist/modules/datasource/docker/index.js +6 -6
- package/dist/modules/datasource/docker/index.js.map +1 -1
- package/dist/modules/datasource/endoflife-date/index.js +2 -2
- package/dist/modules/datasource/endoflife-date/index.js.map +1 -1
- package/dist/modules/datasource/galaxy/index.js +2 -2
- package/dist/modules/datasource/galaxy/index.js.map +1 -1
- package/dist/modules/datasource/galaxy-collection/index.js +2 -2
- package/dist/modules/datasource/galaxy-collection/index.js.map +1 -1
- package/dist/modules/datasource/git-refs/base.js +2 -2
- package/dist/modules/datasource/git-refs/base.js.map +1 -1
- package/dist/modules/datasource/github-release-attachments/index.js +2 -2
- package/dist/modules/datasource/github-release-attachments/index.js.map +1 -1
- package/dist/modules/datasource/github-releases/index.js +2 -3
- package/dist/modules/datasource/github-releases/index.js.map +1 -1
- package/dist/modules/datasource/github-tags/index.js +2 -3
- package/dist/modules/datasource/github-tags/index.js.map +1 -1
- package/dist/modules/datasource/go/goproxy-parser.js +3 -3
- package/dist/modules/datasource/go/goproxy-parser.js.map +1 -1
- package/dist/modules/datasource/go/index.js +2 -2
- package/dist/modules/datasource/go/index.js.map +1 -1
- package/dist/modules/datasource/go/releases-goproxy.js +3 -3
- package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
- package/dist/modules/datasource/hackage/index.js +2 -2
- package/dist/modules/datasource/hackage/index.js.map +1 -1
- package/dist/modules/datasource/hex/schema.js +2 -3
- package/dist/modules/datasource/hex/schema.js.map +1 -1
- package/dist/modules/datasource/hexpm-bob/index.js +2 -2
- package/dist/modules/datasource/hexpm-bob/index.js.map +1 -1
- package/dist/modules/datasource/index.js +14 -14
- package/dist/modules/datasource/index.js.map +1 -1
- package/dist/modules/datasource/jsr/index.js +2 -2
- package/dist/modules/datasource/jsr/index.js.map +1 -1
- package/dist/modules/datasource/jsr/util.js +3 -4
- package/dist/modules/datasource/jsr/util.js.map +1 -1
- package/dist/modules/datasource/metadata.js +5 -5
- package/dist/modules/datasource/metadata.js.map +1 -1
- package/dist/modules/datasource/npm/get.js +2 -2
- package/dist/modules/datasource/npm/get.js.map +1 -1
- package/dist/modules/datasource/npm/npmrc.js +7 -7
- package/dist/modules/datasource/npm/npmrc.js.map +1 -1
- package/dist/modules/datasource/nuget/v3.js +2 -2
- package/dist/modules/datasource/nuget/v3.js.map +1 -1
- package/dist/modules/datasource/packagist/index.js +2 -2
- package/dist/modules/datasource/packagist/index.js.map +1 -1
- package/dist/modules/datasource/packagist/schema.js +3 -4
- package/dist/modules/datasource/packagist/schema.js.map +1 -1
- package/dist/modules/datasource/pypi/index.js +2 -2
- package/dist/modules/datasource/pypi/index.js.map +1 -1
- package/dist/modules/datasource/repology/index.js +3 -3
- package/dist/modules/datasource/repology/index.js.map +1 -1
- package/dist/modules/datasource/rubygems/schema.js +5 -6
- package/dist/modules/datasource/rubygems/schema.js.map +1 -1
- package/dist/modules/datasource/util.js +2 -3
- package/dist/modules/datasource/util.js.map +1 -1
- package/dist/modules/manager/argocd/extract.js +3 -4
- package/dist/modules/manager/argocd/extract.js.map +1 -1
- package/dist/modules/manager/asdf/extract.js +2 -3
- package/dist/modules/manager/asdf/extract.js.map +1 -1
- package/dist/modules/manager/bazel/artifacts.js +2 -2
- package/dist/modules/manager/bazel/artifacts.js.map +1 -1
- package/dist/modules/manager/bazel/common.js +4 -5
- package/dist/modules/manager/bazel/common.js.map +1 -1
- package/dist/modules/manager/bazel/rules/http.js +3 -4
- package/dist/modules/manager/bazel/rules/http.js.map +1 -1
- package/dist/modules/manager/bazel/rules/maven.js +2 -3
- package/dist/modules/manager/bazel/rules/maven.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/starlark.js +2 -3
- package/dist/modules/manager/bazel-module/parser/starlark.js.map +1 -1
- package/dist/modules/manager/bazel-module/rules.js +3 -3
- package/dist/modules/manager/bazel-module/rules.js.map +1 -1
- package/dist/modules/manager/bitrise/utils.js +3 -4
- package/dist/modules/manager/bitrise/utils.js.map +1 -1
- package/dist/modules/manager/buildpacks/extract.js +2 -3
- package/dist/modules/manager/buildpacks/extract.js.map +1 -1
- package/dist/modules/manager/bun/artifacts.js +2 -2
- package/dist/modules/manager/bun/artifacts.js.map +1 -1
- package/dist/modules/manager/bun/extract.js +2 -3
- package/dist/modules/manager/bun/extract.js.map +1 -1
- package/dist/modules/manager/bundler/artifacts.js +3 -3
- package/dist/modules/manager/bundler/artifacts.js.map +1 -1
- package/dist/modules/manager/bundler/extract.js +5 -6
- package/dist/modules/manager/bundler/extract.js.map +1 -1
- package/dist/modules/manager/cargo/extract.js +3 -4
- package/dist/modules/manager/cargo/extract.js.map +1 -1
- package/dist/modules/manager/composer/artifacts.js +3 -3
- package/dist/modules/manager/composer/artifacts.js.map +1 -1
- package/dist/modules/manager/composer/utils.js +3 -4
- package/dist/modules/manager/composer/utils.js.map +1 -1
- package/dist/modules/manager/conan/extract.js +2 -3
- package/dist/modules/manager/conan/extract.js.map +1 -1
- package/dist/modules/manager/copier/utils.js +3 -4
- package/dist/modules/manager/copier/utils.js.map +1 -1
- package/dist/modules/manager/crow/extract.js +2 -3
- package/dist/modules/manager/crow/extract.js.map +1 -1
- package/dist/modules/manager/custom/jsonata/index.js +2 -3
- package/dist/modules/manager/custom/jsonata/index.js.map +1 -1
- package/dist/modules/manager/custom/jsonata/utils.js +3 -3
- package/dist/modules/manager/custom/jsonata/utils.js.map +1 -1
- package/dist/modules/manager/custom/regex/index.js +2 -3
- package/dist/modules/manager/custom/regex/index.js.map +1 -1
- package/dist/modules/manager/custom/regex/strategies.js +4 -5
- package/dist/modules/manager/custom/regex/strategies.js.map +1 -1
- package/dist/modules/manager/custom/regex/utils.js +2 -2
- package/dist/modules/manager/custom/regex/utils.js.map +1 -1
- package/dist/modules/manager/custom/utils.js +6 -7
- package/dist/modules/manager/custom/utils.js.map +1 -1
- package/dist/modules/manager/deps-edn/extract.js +13 -14
- package/dist/modules/manager/deps-edn/extract.js.map +1 -1
- package/dist/modules/manager/deps-edn/parser.js +2 -2
- package/dist/modules/manager/deps-edn/parser.js.map +1 -1
- package/dist/modules/manager/devbox/artifacts.js +2 -2
- package/dist/modules/manager/devbox/artifacts.js.map +1 -1
- package/dist/modules/manager/docker-compose/extract.js +3 -4
- package/dist/modules/manager/docker-compose/extract.js.map +1 -1
- package/dist/modules/manager/docker-compose/schema.js +2 -3
- package/dist/modules/manager/docker-compose/schema.js.map +1 -1
- package/dist/modules/manager/dockerfile/extract.js +5 -5
- package/dist/modules/manager/dockerfile/extract.js.map +1 -1
- package/dist/modules/manager/fingerprint.generated.js +5 -5
- package/dist/modules/manager/fingerprint.generated.js.map +1 -1
- package/dist/modules/manager/fleet/extract.js +2 -3
- package/dist/modules/manager/fleet/extract.js.map +1 -1
- package/dist/modules/manager/flux/extract.js +2 -3
- package/dist/modules/manager/flux/extract.js.map +1 -1
- package/dist/modules/manager/glasskube/extract.js +2 -3
- package/dist/modules/manager/glasskube/extract.js.map +1 -1
- package/dist/modules/manager/gleam/artifacts.js +3 -4
- package/dist/modules/manager/gleam/artifacts.js.map +1 -1
- package/dist/modules/manager/gomod/artifacts.js +2 -2
- package/dist/modules/manager/gomod/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle/artifacts.js +2 -2
- package/dist/modules/manager/gradle/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle/extract/catalog.js +5 -5
- package/dist/modules/manager/gradle/extract/catalog.js.map +1 -1
- package/dist/modules/manager/gradle-wrapper/artifacts.js +2 -2
- package/dist/modules/manager/gradle-wrapper/artifacts.js.map +1 -1
- package/dist/modules/manager/helm-requirements/extract.js +2 -3
- package/dist/modules/manager/helm-requirements/extract.js.map +1 -1
- package/dist/modules/manager/helmfile/artifacts.js +2 -3
- package/dist/modules/manager/helmfile/artifacts.js.map +1 -1
- package/dist/modules/manager/helmfile/extract.js +4 -5
- package/dist/modules/manager/helmfile/extract.js.map +1 -1
- package/dist/modules/manager/helmsman/extract.js +4 -5
- package/dist/modules/manager/helmsman/extract.js.map +1 -1
- package/dist/modules/manager/helmv3/artifacts.js +4 -4
- package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
- package/dist/modules/manager/helmv3/extract.js +4 -5
- package/dist/modules/manager/helmv3/extract.js.map +1 -1
- package/dist/modules/manager/helmv3/oci.js +3 -4
- package/dist/modules/manager/helmv3/oci.js.map +1 -1
- package/dist/modules/manager/jenkins/extract.js +3 -3
- package/dist/modules/manager/jenkins/extract.js.map +1 -1
- package/dist/modules/manager/kotlin-script/extract.js +3 -4
- package/dist/modules/manager/kotlin-script/extract.js.map +1 -1
- package/dist/modules/manager/kubernetes/extract.js +4 -4
- package/dist/modules/manager/kubernetes/extract.js.map +1 -1
- package/dist/modules/manager/kustomize/artifacts.js +8 -8
- package/dist/modules/manager/kustomize/artifacts.js.map +1 -1
- package/dist/modules/manager/kustomize/extract.js +8 -8
- package/dist/modules/manager/kustomize/extract.js.map +1 -1
- package/dist/modules/manager/maven/extract.js +4 -4
- package/dist/modules/manager/maven/extract.js.map +1 -1
- package/dist/modules/manager/maven/update.js +2 -2
- package/dist/modules/manager/maven/update.js.map +1 -1
- package/dist/modules/manager/maven-wrapper/artifacts.js +2 -2
- package/dist/modules/manager/maven-wrapper/artifacts.js.map +1 -1
- package/dist/modules/manager/mise/backends.js +9 -10
- package/dist/modules/manager/mise/backends.js.map +1 -1
- package/dist/modules/manager/mise/extract.js +7 -8
- package/dist/modules/manager/mise/extract.js.map +1 -1
- package/dist/modules/manager/mix/artifacts.js +3 -3
- package/dist/modules/manager/mix/artifacts.js.map +1 -1
- package/dist/modules/manager/nix/artifacts.js +2 -2
- package/dist/modules/manager/nix/artifacts.js.map +1 -1
- package/dist/modules/manager/npm/detect.js +2 -2
- package/dist/modules/manager/npm/detect.js.map +1 -1
- package/dist/modules/manager/npm/extract/common/dependency.js +2 -2
- package/dist/modules/manager/npm/extract/common/dependency.js.map +1 -1
- package/dist/modules/manager/npm/extract/common/overrides.js +3 -4
- package/dist/modules/manager/npm/extract/common/overrides.js.map +1 -1
- package/dist/modules/manager/npm/extract/common/package-file.js +8 -9
- package/dist/modules/manager/npm/extract/common/package-file.js.map +1 -1
- package/dist/modules/manager/npm/extract/index.js +10 -10
- package/dist/modules/manager/npm/extract/index.js.map +1 -1
- package/dist/modules/manager/npm/extract/pnpm.js +7 -7
- package/dist/modules/manager/npm/extract/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/extract/post/locked-versions.js +3 -3
- package/dist/modules/manager/npm/extract/post/locked-versions.js.map +1 -1
- package/dist/modules/manager/npm/extract/post/monorepo.js +3 -4
- package/dist/modules/manager/npm/extract/post/monorepo.js.map +1 -1
- package/dist/modules/manager/npm/extract/yarn.js +2 -3
- package/dist/modules/manager/npm/extract/yarn.js.map +1 -1
- package/dist/modules/manager/npm/extract/yarnrc.js +2 -3
- package/dist/modules/manager/npm/extract/yarnrc.js.map +1 -1
- package/dist/modules/manager/npm/post-update/index.js +6 -6
- package/dist/modules/manager/npm/post-update/index.js.map +1 -1
- package/dist/modules/manager/npm/post-update/npm.js +4 -4
- package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/pnpm.js +3 -3
- package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/rules.js +2 -2
- package/dist/modules/manager/npm/post-update/rules.js.map +1 -1
- package/dist/modules/manager/npm/post-update/utils.js +2 -2
- package/dist/modules/manager/npm/post-update/utils.js.map +1 -1
- package/dist/modules/manager/npm/post-update/yarn.js +3 -3
- package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/index.js +2 -3
- package/dist/modules/manager/npm/update/dependency/index.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/pnpm.js +2 -3
- package/dist/modules/manager/npm/update/dependency/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/yarn.js +3 -4
- package/dist/modules/manager/npm/update/dependency/yarn.js.map +1 -1
- package/dist/modules/manager/nuget/config-formatter.js +2 -2
- package/dist/modules/manager/nuget/config-formatter.js.map +1 -1
- package/dist/modules/manager/nuget/extract.js +4 -4
- package/dist/modules/manager/nuget/extract.js.map +1 -1
- package/dist/modules/manager/nuget/package-tree.js +2 -2
- package/dist/modules/manager/nuget/package-tree.js.map +1 -1
- package/dist/modules/manager/ocb/extract.js +2 -3
- package/dist/modules/manager/ocb/extract.js.map +1 -1
- package/dist/modules/manager/osgi/extract.js +4 -4
- package/dist/modules/manager/osgi/extract.js.map +1 -1
- package/dist/modules/manager/pep621/artifacts.js +3 -4
- package/dist/modules/manager/pep621/artifacts.js.map +1 -1
- package/dist/modules/manager/pep621/processors/uv.js +2 -3
- package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
- package/dist/modules/manager/pep621/utils.js +8 -10
- package/dist/modules/manager/pep621/utils.js.map +1 -1
- package/dist/modules/manager/pep723/schema.js +2 -3
- package/dist/modules/manager/pep723/schema.js.map +1 -1
- package/dist/modules/manager/pip-compile/common.js +3 -3
- package/dist/modules/manager/pip-compile/common.js.map +1 -1
- package/dist/modules/manager/pip_requirements/artifacts.js +2 -3
- package/dist/modules/manager/pip_requirements/artifacts.js.map +1 -1
- package/dist/modules/manager/pip_requirements/extract.js +2 -3
- package/dist/modules/manager/pip_requirements/extract.js.map +1 -1
- package/dist/modules/manager/pipenv/artifacts.js +3 -4
- package/dist/modules/manager/pipenv/artifacts.js.map +1 -1
- package/dist/modules/manager/pipenv/extract.js +6 -7
- package/dist/modules/manager/pipenv/extract.js.map +1 -1
- package/dist/modules/manager/pixi/artifacts.js +2 -3
- package/dist/modules/manager/pixi/artifacts.js.map +1 -1
- package/dist/modules/manager/pixi/extract.js +2 -3
- package/dist/modules/manager/pixi/extract.js.map +1 -1
- package/dist/modules/manager/poetry/artifacts.js +4 -5
- package/dist/modules/manager/poetry/artifacts.js.map +1 -1
- package/dist/modules/manager/poetry/extract.js +2 -3
- package/dist/modules/manager/poetry/extract.js.map +1 -1
- package/dist/modules/manager/pre-commit/extract.js +4 -5
- package/dist/modules/manager/pre-commit/extract.js.map +1 -1
- package/dist/modules/manager/pub/artifacts.js +3 -4
- package/dist/modules/manager/pub/artifacts.js.map +1 -1
- package/dist/modules/manager/pub/extract.js +8 -11
- package/dist/modules/manager/pub/extract.js.map +1 -1
- package/dist/modules/manager/renovate-config-presets/extract.js +4 -5
- package/dist/modules/manager/renovate-config-presets/extract.js.map +1 -1
- package/dist/modules/manager/tekton/extract.js +9 -10
- package/dist/modules/manager/tekton/extract.js.map +1 -1
- package/dist/modules/manager/terraform/base.js +2 -3
- package/dist/modules/manager/terraform/base.js.map +1 -1
- package/dist/modules/manager/terraform/extract.js +2 -2
- package/dist/modules/manager/terraform/extract.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/others/modules.js +3 -4
- package/dist/modules/manager/terraform/extractors/others/modules.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/others/providers.js +3 -4
- package/dist/modules/manager/terraform/extractors/others/providers.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js +7 -8
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/helm-release.js +5 -6
- package/dist/modules/manager/terraform/extractors/resources/helm-release.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/terraform-workspace.js +3 -4
- package/dist/modules/manager/terraform/extractors/resources/terraform-workspace.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/terraform-block/required-provider.js +4 -5
- package/dist/modules/manager/terraform/extractors/terraform-block/required-provider.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/terraform-block/terraform-version.js +3 -3
- package/dist/modules/manager/terraform/extractors/terraform-block/terraform-version.js.map +1 -1
- package/dist/modules/manager/terraform/lockfile/index.js +2 -2
- package/dist/modules/manager/terraform/lockfile/index.js.map +1 -1
- package/dist/modules/manager/terraform/lockfile/util.js +2 -3
- package/dist/modules/manager/terraform/lockfile/util.js.map +1 -1
- package/dist/modules/manager/terraform/util.js +2 -3
- package/dist/modules/manager/terraform/util.js.map +1 -1
- package/dist/modules/manager/tflint-plugin/plugins.js +2 -3
- package/dist/modules/manager/tflint-plugin/plugins.js.map +1 -1
- package/dist/modules/manager/travis/extract.js +5 -6
- package/dist/modules/manager/travis/extract.js.map +1 -1
- package/dist/modules/manager/woodpecker/extract.js +2 -3
- package/dist/modules/manager/woodpecker/extract.js.map +1 -1
- package/dist/modules/platform/azure/index.js +2 -2
- package/dist/modules/platform/azure/index.js.map +1 -1
- package/dist/modules/platform/bitbucket/index.js +5 -5
- package/dist/modules/platform/bitbucket/index.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/pr-cache.js +2 -2
- package/dist/modules/platform/bitbucket-server/pr-cache.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/utils.js +2 -2
- package/dist/modules/platform/bitbucket-server/utils.js.map +1 -1
- package/dist/modules/platform/codecommit/codecommit-client.js +2 -2
- package/dist/modules/platform/codecommit/codecommit-client.js.map +1 -1
- package/dist/modules/platform/forgejo/index.js +5 -5
- package/dist/modules/platform/forgejo/index.js.map +1 -1
- package/dist/modules/platform/forgejo/utils.js +2 -2
- package/dist/modules/platform/forgejo/utils.js.map +1 -1
- package/dist/modules/platform/gitea/index.js +5 -5
- package/dist/modules/platform/gitea/index.js.map +1 -1
- package/dist/modules/platform/gitea/utils.js +2 -2
- package/dist/modules/platform/gitea/utils.js.map +1 -1
- package/dist/modules/platform/github/common.js +4 -5
- package/dist/modules/platform/github/common.js.map +1 -1
- package/dist/modules/platform/github/index.js +5 -5
- package/dist/modules/platform/github/index.js.map +1 -1
- package/dist/modules/platform/github/pr.js +2 -3
- package/dist/modules/platform/github/pr.js.map +1 -1
- package/dist/modules/platform/gitlab/http.js +2 -3
- package/dist/modules/platform/gitlab/http.js.map +1 -1
- package/dist/modules/platform/gitlab/index.js +3 -3
- package/dist/modules/platform/gitlab/index.js.map +1 -1
- package/dist/modules/platform/gitlab/utils.js +3 -3
- package/dist/modules/platform/gitlab/utils.js.map +1 -1
- package/dist/modules/platform/pr-body.js +2 -3
- package/dist/modules/platform/pr-body.js.map +1 -1
- package/dist/modules/versioning/composer/index.js +2 -3
- package/dist/modules/versioning/composer/index.js.map +1 -1
- package/dist/modules/versioning/generic.js +5 -6
- package/dist/modules/versioning/generic.js.map +1 -1
- package/dist/modules/versioning/gradle/compare.js +3 -4
- package/dist/modules/versioning/gradle/compare.js.map +1 -1
- package/dist/modules/versioning/nixpkgs/index.js +6 -7
- package/dist/modules/versioning/nixpkgs/index.js.map +1 -1
- package/dist/modules/versioning/npm/range.js +2 -2
- package/dist/modules/versioning/npm/range.js.map +1 -1
- package/dist/modules/versioning/rpm/index.js +4 -5
- package/dist/modules/versioning/rpm/index.js.map +1 -1
- package/dist/modules/versioning/schema.js +2 -2
- package/dist/modules/versioning/schema.js.map +1 -1
- package/dist/modules/versioning/semver-coerced/index.js +3 -3
- package/dist/modules/versioning/semver-coerced/index.js.map +1 -1
- package/dist/modules/versioning/semver-partial/index.js +4 -4
- package/dist/modules/versioning/semver-partial/index.js.map +1 -1
- package/dist/proxy.js +3 -4
- package/dist/proxy.js.map +1 -1
- package/dist/util/array.js +4 -5
- package/dist/util/array.js.map +1 -1
- package/dist/util/assign-keys.js +2 -3
- package/dist/util/assign-keys.js.map +1 -1
- package/dist/util/cache/package/decorator.js +6 -6
- package/dist/util/cache/package/decorator.js.map +1 -1
- package/dist/util/cache/package/ttl.js +4 -5
- package/dist/util/cache/package/ttl.js.map +1 -1
- package/dist/util/cache/repository/impl/base.js +3 -4
- package/dist/util/cache/repository/impl/base.js.map +1 -1
- package/dist/util/cache/repository/impl/s3.js +2 -3
- package/dist/util/cache/repository/impl/s3.js.map +1 -1
- package/dist/util/exec/common.js +2 -3
- package/dist/util/exec/common.js.map +1 -1
- package/dist/util/exec/containerbase.js +2 -2
- package/dist/util/exec/containerbase.js.map +1 -1
- package/dist/util/exec/docker/index.js +5 -5
- package/dist/util/exec/docker/index.js.map +1 -1
- package/dist/util/exec/index.js +2 -2
- package/dist/util/exec/index.js.map +1 -1
- package/dist/util/exec/utils.js +3 -4
- package/dist/util/exec/utils.js.map +1 -1
- package/dist/util/filter-map.js +2 -3
- package/dist/util/filter-map.js.map +1 -1
- package/dist/util/fs/index.js +3 -3
- package/dist/util/fs/index.js.map +1 -1
- package/dist/util/git/auth.js +2 -3
- package/dist/util/git/auth.js.map +1 -1
- package/dist/util/git/config.js +3 -4
- package/dist/util/git/config.js.map +1 -1
- package/dist/util/git/index.js +4 -4
- package/dist/util/git/index.js.map +1 -1
- package/dist/util/git/private-key.js +2 -2
- package/dist/util/git/private-key.js.map +1 -1
- package/dist/util/host-rules.js +6 -6
- package/dist/util/host-rules.js.map +1 -1
- package/dist/util/http/auth.js +3 -4
- package/dist/util/http/auth.js.map +1 -1
- package/dist/util/http/bitbucket-server.js +2 -3
- package/dist/util/http/bitbucket-server.js.map +1 -1
- package/dist/util/http/bitbucket.js +3 -4
- package/dist/util/http/bitbucket.js.map +1 -1
- package/dist/util/http/cache/package-http-cache-provider.js +2 -2
- package/dist/util/http/cache/package-http-cache-provider.js.map +1 -1
- package/dist/util/http/forgejo.js +3 -4
- package/dist/util/http/forgejo.js.map +1 -1
- package/dist/util/http/gitea.js +3 -4
- package/dist/util/http/gitea.js.map +1 -1
- package/dist/util/http/github.js +10 -10
- package/dist/util/http/github.js.map +1 -1
- package/dist/util/http/gitlab.js +4 -5
- package/dist/util/http/gitlab.js.map +1 -1
- package/dist/util/http/host-rules.js +10 -10
- package/dist/util/http/host-rules.js.map +1 -1
- package/dist/util/http/http.js +5 -5
- package/dist/util/http/http.js.map +1 -1
- package/dist/util/http/rate-limits.js +3 -3
- package/dist/util/http/rate-limits.js.map +1 -1
- package/dist/util/interpolator.js +8 -9
- package/dist/util/interpolator.js.map +1 -1
- package/dist/util/merge-confidence/index.js +5 -5
- package/dist/util/merge-confidence/index.js.map +1 -1
- package/dist/util/number.js +2 -3
- package/dist/util/number.js.map +1 -1
- package/dist/util/package-rules/base-branches.js +3 -4
- package/dist/util/package-rules/base-branches.js.map +1 -1
- package/dist/util/package-rules/categories.js +3 -4
- package/dist/util/package-rules/categories.js.map +1 -1
- package/dist/util/package-rules/current-age.js +3 -4
- package/dist/util/package-rules/current-age.js.map +1 -1
- package/dist/util/package-rules/current-value.js +2 -3
- package/dist/util/package-rules/current-value.js.map +1 -1
- package/dist/util/package-rules/current-version.js +5 -5
- package/dist/util/package-rules/current-version.js.map +1 -1
- package/dist/util/package-rules/datasources.js +3 -4
- package/dist/util/package-rules/datasources.js.map +1 -1
- package/dist/util/package-rules/dep-names.js +3 -4
- package/dist/util/package-rules/dep-names.js.map +1 -1
- package/dist/util/package-rules/dep-types.js +2 -3
- package/dist/util/package-rules/dep-types.js.map +1 -1
- package/dist/util/package-rules/files.js +4 -5
- package/dist/util/package-rules/files.js.map +1 -1
- package/dist/util/package-rules/index.js +6 -6
- package/dist/util/package-rules/index.js.map +1 -1
- package/dist/util/package-rules/managers.js +3 -4
- package/dist/util/package-rules/managers.js.map +1 -1
- package/dist/util/package-rules/merge-confidence.js +5 -6
- package/dist/util/package-rules/merge-confidence.js.map +1 -1
- package/dist/util/package-rules/new-value.js +2 -3
- package/dist/util/package-rules/new-value.js.map +1 -1
- package/dist/util/package-rules/package-names.js +2 -3
- package/dist/util/package-rules/package-names.js.map +1 -1
- package/dist/util/package-rules/repositories.js +3 -4
- package/dist/util/package-rules/repositories.js.map +1 -1
- package/dist/util/package-rules/sourceurls.js +2 -3
- package/dist/util/package-rules/sourceurls.js.map +1 -1
- package/dist/util/package-rules/update-types.js +2 -3
- package/dist/util/package-rules/update-types.js.map +1 -1
- package/dist/util/pretty-time.js +4 -4
- package/dist/util/pretty-time.js.map +1 -1
- package/dist/util/regex.js +2 -3
- package/dist/util/regex.js.map +1 -1
- package/dist/util/s3.js +2 -3
- package/dist/util/s3.js.map +1 -1
- package/dist/util/sanitize.js +2 -3
- package/dist/util/sanitize.js.map +1 -1
- package/dist/util/string-match.js +2 -3
- package/dist/util/string-match.js.map +1 -1
- package/dist/util/template/index.js +6 -6
- package/dist/util/template/index.js.map +1 -1
- package/dist/util/url.js +5 -5
- package/dist/util/url.js.map +1 -1
- package/dist/workers/global/autodiscover.js +3 -4
- package/dist/workers/global/autodiscover.js.map +1 -1
- package/dist/workers/global/config/parse/additional-config-file.js +4 -4
- package/dist/workers/global/config/parse/additional-config-file.js.map +1 -1
- package/dist/workers/global/config/parse/coersions.js +2 -2
- package/dist/workers/global/config/parse/coersions.js.map +1 -1
- package/dist/workers/global/config/parse/env.js +2 -2
- package/dist/workers/global/config/parse/env.js.map +1 -1
- package/dist/workers/global/config/parse/file.js +5 -5
- package/dist/workers/global/config/parse/file.js.map +1 -1
- package/dist/workers/global/config/parse/index.js +6 -7
- package/dist/workers/global/config/parse/index.js.map +1 -1
- package/dist/workers/global/config/parse/util.js +2 -2
- package/dist/workers/global/config/parse/util.js.map +1 -1
- package/dist/workers/global/index.js +5 -5
- package/dist/workers/global/index.js.map +1 -1
- package/dist/workers/global/limits.js +6 -7
- package/dist/workers/global/limits.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/index.js +2 -3
- package/dist/workers/repository/config-migration/branch/index.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/migrated-data.js +2 -2
- package/dist/workers/repository/config-migration/branch/migrated-data.js.map +1 -1
- package/dist/workers/repository/config-migration/pr/index.js +3 -3
- package/dist/workers/repository/config-migration/pr/index.js.map +1 -1
- package/dist/workers/repository/dependency-dashboard.js +10 -10
- package/dist/workers/repository/dependency-dashboard.js.map +1 -1
- package/dist/workers/repository/error.js +6 -1
- package/dist/workers/repository/error.js.map +1 -1
- package/dist/workers/repository/extract/index.js +2 -3
- package/dist/workers/repository/extract/index.js.map +1 -1
- package/dist/workers/repository/extract/manager-files.js +2 -3
- package/dist/workers/repository/extract/manager-files.js.map +1 -1
- package/dist/workers/repository/extract/supersedes.js +4 -5
- package/dist/workers/repository/extract/supersedes.js.map +1 -1
- package/dist/workers/repository/finalize/prune.js +2 -3
- package/dist/workers/repository/finalize/prune.js.map +1 -1
- package/dist/workers/repository/init/inherited.js +5 -5
- package/dist/workers/repository/init/inherited.js.map +1 -1
- package/dist/workers/repository/init/merge.js +13 -13
- package/dist/workers/repository/init/merge.js.map +1 -1
- package/dist/workers/repository/model/commit-message.js +2 -3
- package/dist/workers/repository/model/commit-message.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/index.js +2 -3
- package/dist/workers/repository/onboarding/branch/index.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js +5 -6
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js.map +1 -1
- package/dist/workers/repository/onboarding/pr/config-description.js +2 -5
- package/dist/workers/repository/onboarding/pr/config-description.js.map +1 -1
- package/dist/workers/repository/onboarding/pr/index.js +3 -3
- package/dist/workers/repository/onboarding/pr/index.js.map +1 -1
- package/dist/workers/repository/package-files.js +8 -9
- package/dist/workers/repository/package-files.js.map +1 -1
- package/dist/workers/repository/process/extract-update.js +2 -2
- package/dist/workers/repository/process/extract-update.js.map +1 -1
- package/dist/workers/repository/process/fetch.js +3 -3
- package/dist/workers/repository/process/fetch.js.map +1 -1
- package/dist/workers/repository/process/lookup/current.js +2 -3
- package/dist/workers/repository/process/lookup/current.js.map +1 -1
- package/dist/workers/repository/process/lookup/filter-checks.js +4 -5
- package/dist/workers/repository/process/lookup/filter-checks.js.map +1 -1
- package/dist/workers/repository/process/lookup/generate.js +2 -3
- package/dist/workers/repository/process/lookup/generate.js.map +1 -1
- package/dist/workers/repository/process/lookup/index.js +15 -16
- package/dist/workers/repository/process/lookup/index.js.map +1 -1
- package/dist/workers/repository/process/lookup/utils.js +7 -7
- package/dist/workers/repository/process/lookup/utils.js.map +1 -1
- package/dist/workers/repository/process/vulnerabilities.js +11 -11
- package/dist/workers/repository/process/vulnerabilities.js.map +1 -1
- package/dist/workers/repository/process/write.js +2 -3
- package/dist/workers/repository/process/write.js.map +1 -1
- package/dist/workers/repository/reconfigure/comment.js +2 -5
- package/dist/workers/repository/reconfigure/comment.js.map +1 -1
- package/dist/workers/repository/reconfigure/utils.js +2 -3
- package/dist/workers/repository/reconfigure/utils.js.map +1 -1
- package/dist/workers/repository/reconfigure/validate.js +2 -3
- package/dist/workers/repository/reconfigure/validate.js.map +1 -1
- package/dist/workers/repository/update/branch/auto-replace.js +4 -5
- package/dist/workers/repository/update/branch/auto-replace.js.map +1 -1
- package/dist/workers/repository/update/branch/commit.js +3 -4
- package/dist/workers/repository/update/branch/commit.js.map +1 -1
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +12 -5
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
- package/dist/workers/repository/update/branch/get-updated.js +8 -9
- package/dist/workers/repository/update/branch/get-updated.js.map +1 -1
- package/dist/workers/repository/update/branch/index.js +3 -3
- package/dist/workers/repository/update/branch/index.js.map +1 -1
- package/dist/workers/repository/update/branch/schedule.js +2 -2
- package/dist/workers/repository/update/branch/schedule.js.map +1 -1
- package/dist/workers/repository/update/pr/body/notes.js +2 -2
- package/dist/workers/repository/update/pr/body/notes.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/bitbucket/index.js +2 -2
- package/dist/workers/repository/update/pr/changelog/bitbucket/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/index.js +3 -3
- package/dist/workers/repository/update/pr/changelog/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/release-notes.js +4 -4
- package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/source.js +8 -8
- package/dist/workers/repository/update/pr/changelog/source.js.map +1 -1
- package/dist/workers/repository/update/pr/code-owners.js +2 -2
- package/dist/workers/repository/update/pr/code-owners.js.map +1 -1
- package/dist/workers/repository/update/pr/index.js +7 -8
- package/dist/workers/repository/update/pr/index.js.map +1 -1
- package/dist/workers/repository/update/pr/labels.js +4 -4
- package/dist/workers/repository/update/pr/labels.js.map +1 -1
- package/dist/workers/repository/update/pr/participants.js +4 -5
- package/dist/workers/repository/update/pr/participants.js.map +1 -1
- package/dist/workers/repository/updates/generate.js +4 -4
- package/dist/workers/repository/updates/generate.js.map +1 -1
- package/package.json +3 -3
- package/renovate-schema.json +7 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmfile/extract.ts"],"names":[],"mappings":";;AAkCA,gDAkIC
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmfile/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import { isEmptyArray, isString } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { coerceArray } from '../../../util/array';\nimport { regEx } from '../../../util/regex';\nimport { parseYaml } from '../../../util/yaml';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { HelmDatasource } from '../../datasource/helm';\nimport { isOCIRegistry, removeOCIPrefix } from '../helmv3/oci';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport type { Doc, HelmRepository } from './schema';\nimport { Doc as Document } from './schema';\nimport {\n kustomizationsKeysUsed,\n localChartHasKustomizationsYaml,\n} from './utils';\n\nfunction isValidChartName(name: string | undefined, oci: boolean): boolean {\n if (oci) {\n return !!name && !regEx(/[!@#$%^&*(),.?\":{}|<>A-Z]/).test(name);\n } else {\n return !!name && !regEx(/[!@#$%^&*(),.?\":{}/|<>A-Z]/).test(name);\n }\n}\n\nfunction isLocalPath(possiblePath: string): boolean {\n return ['./', '../', '/'].some((localPrefix) =>\n possiblePath.startsWith(localPrefix),\n );\n}\n\nexport async function extractPackageFile(\n content: string,\n packageFile: string,\n config: ExtractConfig,\n): Promise<PackageFileContent | null> {\n const deps: PackageDependency[] = [];\n let registryData: Record<string, HelmRepository> = {};\n // Record kustomization usage for all deps, since updating artifacts is run on the helmfile.yaml as a whole.\n let needKustomize = false;\n const docs: Doc[] = parseYaml(content, {\n customSchema: Document,\n failureBehaviour: 'filter',\n removeTemplates: true,\n });\n\n for (const doc of docs) {\n // Always check for repositories in the current document and override the existing ones if any (as YAML does)\n if (doc.repositories) {\n registryData = {};\n for (const repo of doc.repositories) {\n if (repo.url?.startsWith('git+')) {\n logger.debug(\n { repo, packageFile },\n `Skipping unsupported helm-git repository.`,\n );\n continue;\n }\n registryData[repo.name] = repo;\n }\n logger.debug(\n { registryAliases: registryData, packageFile },\n `repositories discovered.`,\n );\n }\n\n for (const dep of coerceArray(doc.releases)) {\n let depName = dep.chart;\n let packageName: string | null = null;\n let repoName: string | null = null;\n\n // If it starts with ./ ../ or / then it's a local path\n if (isLocalPath(dep.chart)) {\n if (\n kustomizationsKeysUsed(dep) ||\n (await localChartHasKustomizationsYaml(dep, packageFile))\n ) {\n needKustomize = true;\n }\n deps.push({\n depName: dep.name,\n skipReason: 'local-chart',\n });\n continue;\n }\n\n if (isOCIRegistry(dep.chart)) {\n packageName = depName = removeOCIPrefix(dep.chart);\n } else {\n if (dep.chart.includes('/')) {\n const v = dep.chart.split('/');\n repoName = v.shift()!;\n depName = v.join('/');\n } else {\n repoName = dep.chart;\n }\n if (registryData[repoName]?.oci) {\n const alias = registryData[repoName]?.url;\n if (alias) {\n packageName = `${alias}/${depName}`;\n }\n repoName = null;\n }\n }\n\n if (!isString(dep.version)) {\n deps.push({\n depName,\n skipReason: 'invalid-version',\n });\n continue;\n }\n\n const res: PackageDependency = {\n depName,\n currentValue: dep.version,\n };\n if (kustomizationsKeysUsed(dep)) {\n needKustomize = true;\n }\n if (packageName) {\n res.datasource = DockerDatasource.id;\n res.packageName = packageName;\n } else if (repoName) {\n res.registryUrls = [registryData[repoName]?.url]\n .concat([config.registryAliases?.[repoName]] as string[])\n .filter(isString);\n }\n\n // By definition on helm the chart name should be lowercase letter + number + -\n // However helmfile support templating of that field\n if (\n !isValidChartName(\n isOCIRegistry(dep.chart)\n ? depName.slice(depName.lastIndexOf('/') + 1)\n : depName,\n !!packageName,\n )\n ) {\n res.skipReason = 'unsupported-chart-type';\n }\n\n // Skip in case we cannot locate the registry\n if (\n res.datasource !== DockerDatasource.id &&\n isEmptyArray(res.registryUrls)\n ) {\n res.skipReason = 'unknown-registry';\n }\n\n deps.push(res);\n }\n }\n\n return deps.length\n ? {\n deps,\n datasource: HelmDatasource.id,\n ...(needKustomize && { managerData: { needKustomize } }),\n }\n : null;\n}\n"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.extractPackageFile = extractPackageFile;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const logger_1 = require("../../../logger");
|
|
7
6
|
const regex_1 = require("../../../util/regex");
|
|
8
7
|
const yaml_1 = require("../../../util/yaml");
|
|
@@ -35,13 +34,13 @@ function createDep(key, doc) {
|
|
|
35
34
|
dep.skipReason = 'invalid-url';
|
|
36
35
|
return dep;
|
|
37
36
|
}
|
|
38
|
-
if (!is_1.
|
|
37
|
+
if (!(0, is_1.isNonEmptyString)(regexResult.groups.packageName)) {
|
|
39
38
|
dep.skipReason = 'invalid-name';
|
|
40
39
|
return dep;
|
|
41
40
|
}
|
|
42
41
|
dep.packageName = regexResult.groups.packageName;
|
|
43
42
|
const registryUrl = doc.helmRepos[regexResult.groups.registryRef];
|
|
44
|
-
if (!is_1.
|
|
43
|
+
if (!(0, is_1.isNonEmptyString)(registryUrl)) {
|
|
45
44
|
dep.skipReason = 'no-repository';
|
|
46
45
|
return dep;
|
|
47
46
|
}
|
|
@@ -58,7 +57,7 @@ function extractPackageFile(content, packageFile, _config) {
|
|
|
58
57
|
}
|
|
59
58
|
const deps = Object.keys(doc.apps)
|
|
60
59
|
.map((key) => createDep(key, doc))
|
|
61
|
-
.filter(is_1.
|
|
60
|
+
.filter(is_1.isTruthy); // filter null values
|
|
62
61
|
if (deps.length === 0) {
|
|
63
62
|
return null;
|
|
64
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmsman/extract.ts"],"names":[],"mappings":";;AAgEA,gDA8BC
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmsman/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyString, isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { regEx } from '../../../util/regex';\nimport { parseSingleYaml } from '../../../util/yaml';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { HelmDatasource } from '../../datasource/helm';\nimport { isOCIRegistry, removeOCIPrefix } from '../helmv3/oci';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport type { HelmsmanDocument } from './types';\n\nconst chartRegex = regEx('^(?<registryRef>[^/]*)/(?<packageName>[^/]*)$');\n\nfunction createDep(\n key: string,\n doc: HelmsmanDocument,\n): PackageDependency | null {\n const dep: PackageDependency = {\n depName: key,\n datasource: HelmDatasource.id,\n };\n const anApp = doc.apps[key];\n if (!anApp) {\n return null;\n }\n\n if (!anApp.version) {\n dep.skipReason = 'unspecified-version';\n return dep;\n }\n dep.currentValue = anApp.version;\n\n // in case of OCI repository, we need a PackageDependency with a DockerDatasource and a packageName\n if (isOCIRegistry(anApp.chart)) {\n dep.datasource = DockerDatasource.id;\n dep.packageName = removeOCIPrefix(anApp.chart!);\n return dep;\n }\n\n const regexResult = anApp.chart ? chartRegex.exec(anApp.chart) : null;\n if (!regexResult?.groups) {\n dep.skipReason = 'invalid-url';\n return dep;\n }\n\n if (!isNonEmptyString(regexResult.groups.packageName)) {\n dep.skipReason = 'invalid-name';\n return dep;\n }\n dep.packageName = regexResult.groups.packageName;\n\n const registryUrl = doc.helmRepos[regexResult.groups.registryRef];\n if (!isNonEmptyString(registryUrl)) {\n dep.skipReason = 'no-repository';\n return dep;\n }\n dep.registryUrls = [registryUrl];\n\n return dep;\n}\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n _config: ExtractConfig,\n): PackageFileContent | null {\n try {\n // TODO: use schema (#9610)\n const doc = parseSingleYaml<HelmsmanDocument>(content);\n if (!doc.apps) {\n logger.debug({ packageFile }, `Missing apps keys`);\n return null;\n }\n\n const deps = Object.keys(doc.apps)\n .map((key) => createDep(key, doc))\n .filter(isTruthy); // filter null values\n\n if (deps.length === 0) {\n return null;\n }\n\n return { deps };\n } catch (err) /* istanbul ignore next */ {\n if (err.stack?.startsWith('YAMLException:')) {\n logger.debug({ err, packageFile }, 'YAML exception extracting');\n } else {\n logger.debug({ err, packageFile }, 'Error extracting');\n }\n return null;\n }\n}\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.updateArtifacts = updateArtifacts;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const is_1 =
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
6
|
const p_map_1 = tslib_1.__importDefault(require("p-map"));
|
|
7
7
|
const shlex_1 = require("shlex");
|
|
8
8
|
const error_messages_1 = require("../../../constants/error-messages");
|
|
@@ -111,9 +111,9 @@ async function updateArtifacts({ packageFileName, updatedDeps, newPackageFileCon
|
|
|
111
111
|
await helmCommands(execOptions, packageFileName, repositories);
|
|
112
112
|
logger_1.logger.debug('Returning updated Helm artifacts');
|
|
113
113
|
const fileChanges = [];
|
|
114
|
-
if (is_1.
|
|
114
|
+
if ((0, is_1.isTruthy)(existingLockFileContent)) {
|
|
115
115
|
const newHelmLockContent = await (0, fs_1.readLocalFile)(lockFileName, 'utf8');
|
|
116
|
-
const isLockFileChanged = !is_1.
|
|
116
|
+
const isLockFileChanged = !(0, is_1.isString)(newHelmLockContent) ||
|
|
117
117
|
isHelmLockChanged(existingLockFileContent, newHelmLockContent);
|
|
118
118
|
if (isLockFileChanged) {
|
|
119
119
|
fileChanges.push({
|
|
@@ -129,7 +129,7 @@ async function updateArtifacts({ packageFileName, updatedDeps, newPackageFileCon
|
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
131
|
// add modified helm chart archives to artifacts
|
|
132
|
-
if (is_1.
|
|
132
|
+
if ((0, is_1.isTruthy)(isUpdateOptionAddChartArchives)) {
|
|
133
133
|
const chartsPath = (0, fs_1.getSiblingFileName)(packageFileName, 'charts');
|
|
134
134
|
const status = await (0, git_1.getRepoStatus)();
|
|
135
135
|
const chartsAddition = status.not_added ?? [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmv3/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport pMap from 'p-map';\nimport { quote } from 'shlex';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions, ToolConstraint } from '../../../util/exec/types';\nimport {\n getParentDir,\n getSiblingFileName,\n readLocalFile,\n writeLocalFile,\n} from '../../../util/fs';\nimport { getRepoStatus } from '../../../util/git';\nimport * as hostRules from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\nimport * as yaml from '../../../util/yaml';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { HelmDatasource } from '../../datasource/helm';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\nimport { generateHelmEnvs, generateLoginCmd } from './common';\nimport { isOCIRegistry, removeOCIPrefix } from './oci';\nimport type { ChartDefinition, Repository, RepositoryRule } from './types';\nimport {\n aliasRecordToRepositories,\n getRepositories,\n isFileInDir,\n} from './utils';\n\nasync function helmCommands(\n execOptions: ExecOptions,\n manifestPath: string,\n repositories: Repository[],\n): Promise<void> {\n const cmd: string[] = [];\n // get OCI registries and detect host rules\n const registries: RepositoryRule[] = repositories\n .filter(isOCIRegistry)\n .map((value) => {\n return {\n ...value,\n repository: removeOCIPrefix(value.repository),\n hostRule: hostRules.find({\n url: value.repository.replace('oci://', 'https://'), //TODO we need to replace this, as oci:// will not be accepted as protocol\n hostType: DockerDatasource.id,\n }),\n };\n });\n\n // if credentials for the registry have been found, log into it\n await pMap(registries, async (value) => {\n const loginCmd = await generateLoginCmd(value);\n if (loginCmd) {\n cmd.push(loginCmd);\n }\n });\n\n // find classic Chart repositories and fitting host rules\n const classicRepositories: RepositoryRule[] = repositories\n .filter((repository) => !isOCIRegistry(repository))\n .map((value) => {\n return {\n ...value,\n hostRule: hostRules.find({\n url: value.repository,\n hostType: HelmDatasource.id,\n }),\n };\n });\n\n // add helm repos if an alias or credentials for the url are defined\n classicRepositories.forEach((value) => {\n const { username, password } = value.hostRule;\n const parameters = [`${quote(value.repository)}`, `--force-update`];\n const isPrivateRepo = username && password;\n if (isPrivateRepo) {\n parameters.push(`--username ${quote(username)}`);\n parameters.push(`--password ${quote(password)}`);\n }\n\n cmd.push(`helm repo add ${quote(value.name)} ${parameters.join(' ')}`);\n });\n\n cmd.push(`helm dependency update ${quote(getParentDir(manifestPath))}`);\n\n await exec(cmd, execOptions);\n}\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`helmv3.updateArtifacts(${packageFileName})`);\n\n const { isLockFileMaintenance } = config;\n const isUpdateOptionAddChartArchives = config.postUpdateOptions?.includes(\n 'helmUpdateSubChartArchives',\n );\n\n if (\n !isLockFileMaintenance &&\n (updatedDeps === undefined || updatedDeps.length < 1)\n ) {\n logger.debug('No updated helmv3 deps - returning null');\n return null;\n }\n\n const lockFileName = getSiblingFileName(packageFileName, 'Chart.lock');\n const existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent && !isUpdateOptionAddChartArchives) {\n logger.debug('No Chart.lock found');\n return null;\n }\n try {\n // get repositories and registries defined in the package file\n // TODO: use schema (#9610)\n const packages = yaml.parseSingleYaml<ChartDefinition>(\n newPackageFileContent,\n );\n const locks = existingLockFileContent\n ? yaml.parseSingleYaml<ChartDefinition>(existingLockFileContent)\n : { dependencies: [] };\n\n const chartDefinitions: ChartDefinition[] = [];\n // prioritize registryAlias naming for Helm repositories\n if (config.registryAliases) {\n chartDefinitions.push({\n dependencies: aliasRecordToRepositories(config.registryAliases),\n });\n }\n chartDefinitions.push(packages, locks);\n\n const repositories = getRepositories(chartDefinitions);\n\n await writeLocalFile(packageFileName, newPackageFileContent);\n logger.debug('Updating Helm artifacts');\n const helmToolConstraint: ToolConstraint = {\n toolName: 'helm',\n constraint: config.constraints?.helm,\n };\n\n const execOptions: ExecOptions = {\n docker: {},\n extraEnv: generateHelmEnvs(),\n toolConstraints: [helmToolConstraint],\n };\n await helmCommands(execOptions, packageFileName, repositories);\n logger.debug('Returning updated Helm artifacts');\n\n const fileChanges: UpdateArtifactsResult[] = [];\n\n if (is.truthy(existingLockFileContent)) {\n const newHelmLockContent = await readLocalFile(lockFileName, 'utf8');\n const isLockFileChanged =\n !is.string(newHelmLockContent) ||\n isHelmLockChanged(existingLockFileContent, newHelmLockContent);\n if (isLockFileChanged) {\n fileChanges.push({\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newHelmLockContent,\n },\n });\n } else {\n logger.debug('Chart.lock is unchanged');\n }\n }\n\n // add modified helm chart archives to artifacts\n if (is.truthy(isUpdateOptionAddChartArchives)) {\n const chartsPath = getSiblingFileName(packageFileName, 'charts');\n const status = await getRepoStatus();\n const chartsAddition = status.not_added ?? [];\n const chartsDeletion = status.deleted ?? [];\n\n for (const file of chartsAddition) {\n // only add artifacts in the chart sub path\n if (!isFileInDir(chartsPath, file)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'addition',\n path: file,\n contents: await readLocalFile(file),\n },\n });\n }\n\n for (const file of chartsDeletion) {\n // only add artifacts in the chart sub path\n if (!isFileInDir(chartsPath, file)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'deletion',\n path: file,\n },\n });\n }\n }\n\n return fileChanges.length > 0 ? fileChanges : null;\n } catch (err) {\n // istanbul ignore if\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n logger.debug({ err }, 'Failed to update Helm lock file');\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n}\n\nfunction isHelmLockChanged(oldContent: string, newContent: string): boolean {\n const regex = regEx(/^generated: \".+\"$/m);\n return newContent.replace(regex, '') !== oldContent.replace(regex, '');\n}\n"]}
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmv3/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import { isString, isTruthy } from '@sindresorhus/is';\nimport pMap from 'p-map';\nimport { quote } from 'shlex';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions, ToolConstraint } from '../../../util/exec/types';\nimport {\n getParentDir,\n getSiblingFileName,\n readLocalFile,\n writeLocalFile,\n} from '../../../util/fs';\nimport { getRepoStatus } from '../../../util/git';\nimport * as hostRules from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\nimport * as yaml from '../../../util/yaml';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { HelmDatasource } from '../../datasource/helm';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\nimport { generateHelmEnvs, generateLoginCmd } from './common';\nimport { isOCIRegistry, removeOCIPrefix } from './oci';\nimport type { ChartDefinition, Repository, RepositoryRule } from './types';\nimport {\n aliasRecordToRepositories,\n getRepositories,\n isFileInDir,\n} from './utils';\n\nasync function helmCommands(\n execOptions: ExecOptions,\n manifestPath: string,\n repositories: Repository[],\n): Promise<void> {\n const cmd: string[] = [];\n // get OCI registries and detect host rules\n const registries: RepositoryRule[] = repositories\n .filter(isOCIRegistry)\n .map((value) => {\n return {\n ...value,\n repository: removeOCIPrefix(value.repository),\n hostRule: hostRules.find({\n url: value.repository.replace('oci://', 'https://'), //TODO we need to replace this, as oci:// will not be accepted as protocol\n hostType: DockerDatasource.id,\n }),\n };\n });\n\n // if credentials for the registry have been found, log into it\n await pMap(registries, async (value) => {\n const loginCmd = await generateLoginCmd(value);\n if (loginCmd) {\n cmd.push(loginCmd);\n }\n });\n\n // find classic Chart repositories and fitting host rules\n const classicRepositories: RepositoryRule[] = repositories\n .filter((repository) => !isOCIRegistry(repository))\n .map((value) => {\n return {\n ...value,\n hostRule: hostRules.find({\n url: value.repository,\n hostType: HelmDatasource.id,\n }),\n };\n });\n\n // add helm repos if an alias or credentials for the url are defined\n classicRepositories.forEach((value) => {\n const { username, password } = value.hostRule;\n const parameters = [`${quote(value.repository)}`, `--force-update`];\n const isPrivateRepo = username && password;\n if (isPrivateRepo) {\n parameters.push(`--username ${quote(username)}`);\n parameters.push(`--password ${quote(password)}`);\n }\n\n cmd.push(`helm repo add ${quote(value.name)} ${parameters.join(' ')}`);\n });\n\n cmd.push(`helm dependency update ${quote(getParentDir(manifestPath))}`);\n\n await exec(cmd, execOptions);\n}\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`helmv3.updateArtifacts(${packageFileName})`);\n\n const { isLockFileMaintenance } = config;\n const isUpdateOptionAddChartArchives = config.postUpdateOptions?.includes(\n 'helmUpdateSubChartArchives',\n );\n\n if (\n !isLockFileMaintenance &&\n (updatedDeps === undefined || updatedDeps.length < 1)\n ) {\n logger.debug('No updated helmv3 deps - returning null');\n return null;\n }\n\n const lockFileName = getSiblingFileName(packageFileName, 'Chart.lock');\n const existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent && !isUpdateOptionAddChartArchives) {\n logger.debug('No Chart.lock found');\n return null;\n }\n try {\n // get repositories and registries defined in the package file\n // TODO: use schema (#9610)\n const packages = yaml.parseSingleYaml<ChartDefinition>(\n newPackageFileContent,\n );\n const locks = existingLockFileContent\n ? yaml.parseSingleYaml<ChartDefinition>(existingLockFileContent)\n : { dependencies: [] };\n\n const chartDefinitions: ChartDefinition[] = [];\n // prioritize registryAlias naming for Helm repositories\n if (config.registryAliases) {\n chartDefinitions.push({\n dependencies: aliasRecordToRepositories(config.registryAliases),\n });\n }\n chartDefinitions.push(packages, locks);\n\n const repositories = getRepositories(chartDefinitions);\n\n await writeLocalFile(packageFileName, newPackageFileContent);\n logger.debug('Updating Helm artifacts');\n const helmToolConstraint: ToolConstraint = {\n toolName: 'helm',\n constraint: config.constraints?.helm,\n };\n\n const execOptions: ExecOptions = {\n docker: {},\n extraEnv: generateHelmEnvs(),\n toolConstraints: [helmToolConstraint],\n };\n await helmCommands(execOptions, packageFileName, repositories);\n logger.debug('Returning updated Helm artifacts');\n\n const fileChanges: UpdateArtifactsResult[] = [];\n\n if (isTruthy(existingLockFileContent)) {\n const newHelmLockContent = await readLocalFile(lockFileName, 'utf8');\n const isLockFileChanged =\n !isString(newHelmLockContent) ||\n isHelmLockChanged(existingLockFileContent, newHelmLockContent);\n if (isLockFileChanged) {\n fileChanges.push({\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newHelmLockContent,\n },\n });\n } else {\n logger.debug('Chart.lock is unchanged');\n }\n }\n\n // add modified helm chart archives to artifacts\n if (isTruthy(isUpdateOptionAddChartArchives)) {\n const chartsPath = getSiblingFileName(packageFileName, 'charts');\n const status = await getRepoStatus();\n const chartsAddition = status.not_added ?? [];\n const chartsDeletion = status.deleted ?? [];\n\n for (const file of chartsAddition) {\n // only add artifacts in the chart sub path\n if (!isFileInDir(chartsPath, file)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'addition',\n path: file,\n contents: await readLocalFile(file),\n },\n });\n }\n\n for (const file of chartsDeletion) {\n // only add artifacts in the chart sub path\n if (!isFileInDir(chartsPath, file)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'deletion',\n path: file,\n },\n });\n }\n }\n\n return fileChanges.length > 0 ? fileChanges : null;\n } catch (err) {\n // istanbul ignore if\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n logger.debug({ err }, 'Failed to update Helm lock file');\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n}\n\nfunction isHelmLockChanged(oldContent: string, newContent: string): boolean {\n const regex = regEx(/^generated: \".+\"$/m);\n return newContent.replace(regex, '') !== oldContent.replace(regex, '');\n}\n"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.extractPackageFile = extractPackageFile;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const logger_1 = require("../../../logger");
|
|
7
6
|
const fs_1 = require("../../../util/fs");
|
|
8
7
|
const yaml_1 = require("../../../util/yaml");
|
|
@@ -28,12 +27,12 @@ async function extractPackageFile(content, packageFile, config) {
|
|
|
28
27
|
}
|
|
29
28
|
const packageFileVersion = chart.version;
|
|
30
29
|
let deps = [];
|
|
31
|
-
if (!is_1.
|
|
30
|
+
if (!(0, is_1.isNonEmptyArray)(chart?.dependencies)) {
|
|
32
31
|
logger_1.logger.debug(`Chart has no dependencies in ${packageFile}`);
|
|
33
32
|
return null;
|
|
34
33
|
}
|
|
35
|
-
const validDependencies = chart.dependencies.filter((dep) => is_1.
|
|
36
|
-
if (!is_1.
|
|
34
|
+
const validDependencies = chart.dependencies.filter((dep) => (0, is_1.isNonEmptyString)(dep.name) && (0, is_1.isNonEmptyString)(dep.version));
|
|
35
|
+
if (!(0, is_1.isNonEmptyArray)(validDependencies)) {
|
|
37
36
|
logger_1.logger.debug('Name and/or version missing for all dependencies');
|
|
38
37
|
return null;
|
|
39
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmv3/extract.ts"],"names":[],"mappings":";;AAYA,gDA8EC
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmv3/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyArray, isNonEmptyString } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { getSiblingFileName, localPathExists } from '../../../util/fs';\nimport { parseSingleYaml } from '../../../util/yaml';\nimport { HelmDatasource } from '../../datasource/helm';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport { parseRepository, resolveAlias } from './utils';\n\nexport async function extractPackageFile(\n content: string,\n packageFile: string,\n config: ExtractConfig,\n): Promise<PackageFileContent | null> {\n let chart: {\n apiVersion: string;\n name: string;\n version: string;\n dependencies: { name: string; version: string; repository: string }[];\n };\n try {\n // TODO: use schema (#9610)\n chart = parseSingleYaml(content);\n if (!(chart?.apiVersion && chart.name && chart.version)) {\n logger.debug(\n { packageFile },\n 'Failed to find required fields in Chart.yaml',\n );\n return null;\n }\n if (chart.apiVersion !== 'v2') {\n logger.debug(\n { packageFile },\n 'Unsupported Chart apiVersion. Only v2 is supported.',\n );\n return null;\n }\n } catch {\n logger.debug({ packageFile }, `Failed to parse helm Chart.yaml`);\n return null;\n }\n const packageFileVersion = chart.version;\n let deps: PackageDependency[] = [];\n if (!isNonEmptyArray(chart?.dependencies)) {\n logger.debug(`Chart has no dependencies in ${packageFile}`);\n return null;\n }\n const validDependencies = chart.dependencies.filter(\n (dep) => isNonEmptyString(dep.name) && isNonEmptyString(dep.version),\n );\n if (!isNonEmptyArray(validDependencies)) {\n logger.debug('Name and/or version missing for all dependencies');\n return null;\n }\n deps = validDependencies.map((dep) => {\n const res: PackageDependency = {\n depName: dep.name,\n currentValue: dep.version,\n };\n if (!dep.repository) {\n res.skipReason = 'no-repository';\n return res;\n }\n\n const repository = resolveAlias(dep.repository, config.registryAliases!);\n if (!repository) {\n res.skipReason = 'placeholder-url';\n return res;\n }\n\n const result: PackageDependency = {\n ...res,\n ...parseRepository(dep.name, repository),\n };\n return result;\n });\n const res: PackageFileContent = {\n deps,\n datasource: HelmDatasource.id,\n packageFileVersion,\n };\n const lockFileName = getSiblingFileName(packageFile, 'Chart.lock');\n // istanbul ignore if\n if (await localPathExists(lockFileName)) {\n res.lockFiles = [lockFileName];\n }\n return res;\n}\n"]}
|
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isOCIRegistry = isOCIRegistry;
|
|
4
4
|
exports.removeOCIPrefix = removeOCIPrefix;
|
|
5
|
-
const
|
|
6
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
7
6
|
function isOCIRegistry(repository) {
|
|
8
|
-
if (is_1.
|
|
7
|
+
if ((0, is_1.isNullOrUndefined)(repository)) {
|
|
9
8
|
return false;
|
|
10
9
|
}
|
|
11
|
-
const repo = is_1.
|
|
10
|
+
const repo = (0, is_1.isString)(repository) ? repository : repository.repository;
|
|
12
11
|
return repo.startsWith('oci://');
|
|
13
12
|
}
|
|
14
13
|
function removeOCIPrefix(repository) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oci.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmv3/oci.ts"],"names":[],"mappings":";;AAGA,sCAQC;AAED,0CAKC
|
|
1
|
+
{"version":3,"file":"oci.js","sourceRoot":"","sources":["../../../../lib/modules/manager/helmv3/oci.ts"],"names":[],"mappings":";;AAGA,sCAQC;AAED,0CAKC;AAlBD,yCAA+D;AAG/D,SAAgB,aAAa,CAC3B,UAAkD;IAElD,IAAI,IAAA,sBAAiB,EAAC,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,IAAA,aAAQ,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;IACvE,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED,SAAgB,eAAe,CAAC,UAAkB;IAChD,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC","sourcesContent":["import { isNullOrUndefined, isString } from '@sindresorhus/is';\nimport type { Repository } from './types';\n\nexport function isOCIRegistry(\n repository: Repository | string | null | undefined,\n): boolean {\n if (isNullOrUndefined(repository)) {\n return false;\n }\n const repo = isString(repository) ? repository : repository.repository;\n return repo.startsWith('oci://');\n}\n\nexport function removeOCIPrefix(repository: string): string {\n if (isOCIRegistry(repository)) {\n return repository.replace('oci://', '');\n }\n return repository;\n}\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.extractPackageFile = extractPackageFile;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const is_1 =
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
6
|
const logger_1 = require("../../../logger");
|
|
7
7
|
const ignore_1 = require("../../../util/ignore");
|
|
8
8
|
const regex_1 = require("../../../util/regex");
|
|
@@ -18,7 +18,7 @@ function getDependency(plugin) {
|
|
|
18
18
|
};
|
|
19
19
|
if (plugin.source?.version) {
|
|
20
20
|
dep.currentValue = plugin.source.version.toString();
|
|
21
|
-
if (!is_1.
|
|
21
|
+
if (!(0, is_1.isString)(plugin.source.version)) {
|
|
22
22
|
dep.skipReason = 'invalid-version';
|
|
23
23
|
logger_1.logger.warn({ dep }, 'Jenkins plugin dependency version is not a string and will be ignored');
|
|
24
24
|
}
|
|
@@ -45,7 +45,7 @@ function extractYaml(content, packageFile) {
|
|
|
45
45
|
try {
|
|
46
46
|
// TODO: use schema (#9610)
|
|
47
47
|
const doc = (0, yaml_1.parseSingleYaml)(content);
|
|
48
|
-
if (is_1.
|
|
48
|
+
if ((0, is_1.isNonEmptyArray)(doc?.plugins)) {
|
|
49
49
|
for (const plugin of doc.plugins) {
|
|
50
50
|
if (plugin.artifactId) {
|
|
51
51
|
const dep = getDependency(plugin);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/jenkins/extract.ts"],"names":[],"mappings":";;AAqGA,gDAiBC;;AAtHD,
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/jenkins/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyArray, isString } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { isSkipComment } from '../../../util/ignore';\nimport { newlineRegex, regEx } from '../../../util/regex';\nimport { parseSingleYaml } from '../../../util/yaml';\nimport { JenkinsPluginsDatasource } from '../../datasource/jenkins-plugins';\nimport * as mavenVersioning from '../../versioning/maven';\nimport type { PackageDependency, PackageFileContent } from '../types';\nimport type { JenkinsPlugin, JenkinsPlugins } from './types';\n\nconst YamlExtension = regEx(/\\.ya?ml$/);\n\nfunction getDependency(plugin: JenkinsPlugin): PackageDependency {\n const dep: PackageDependency = {\n datasource: JenkinsPluginsDatasource.id,\n versioning: mavenVersioning.id,\n depName: plugin.artifactId,\n };\n\n if (plugin.source?.version) {\n dep.currentValue = plugin.source.version.toString();\n if (!isString(plugin.source.version)) {\n dep.skipReason = 'invalid-version';\n logger.warn(\n { dep },\n 'Jenkins plugin dependency version is not a string and will be ignored',\n );\n }\n } else {\n dep.skipReason = 'unspecified-version';\n }\n\n if (\n plugin.source?.version === 'latest' ||\n plugin.source?.version === 'experimental' ||\n plugin.groupId\n ) {\n dep.skipReason = 'unsupported-version';\n }\n\n if (plugin.source?.url) {\n dep.skipReason = 'internal-package';\n }\n\n if (!dep.skipReason && plugin.renovate?.ignore) {\n dep.skipReason = 'ignored';\n }\n\n logger.debug({ dep }, 'Jenkins plugin dependency');\n return dep;\n}\n\nfunction extractYaml(\n content: string,\n packageFile: string,\n): PackageDependency[] {\n const deps: PackageDependency[] = [];\n\n try {\n // TODO: use schema (#9610)\n const doc = parseSingleYaml<JenkinsPlugins>(content);\n if (isNonEmptyArray(doc?.plugins)) {\n for (const plugin of doc.plugins) {\n if (plugin.artifactId) {\n const dep = getDependency(plugin);\n deps.push(dep);\n }\n }\n }\n } catch (err) /* istanbul ignore next */ {\n logger.debug({ err, packageFile }, 'Error parsing Jenkins plugins');\n }\n return deps;\n}\n\nfunction extractText(content: string): PackageDependency[] {\n const deps: PackageDependency[] = [];\n const regex = regEx(\n /^\\s*(?<depName>[\\d\\w-]+):(?<currentValue>[^#\\s]+)[#\\s]*(?<comment>.*)$/,\n );\n\n for (const line of content.split(newlineRegex)) {\n const match = regex.exec(line);\n if (match?.groups) {\n const { depName, currentValue, comment } = match.groups;\n const plugin: JenkinsPlugin = {\n artifactId: depName,\n source: {\n version: currentValue,\n },\n renovate: {\n ignore: isSkipComment(comment),\n },\n };\n const dep = getDependency(plugin);\n deps.push(dep);\n }\n }\n return deps;\n}\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n): PackageFileContent | null {\n logger.trace(`jenkins.extractPackageFile(${packageFile})`);\n const deps: PackageDependency[] = [];\n\n if (YamlExtension.test(packageFile)) {\n deps.push(...extractYaml(content, packageFile));\n } else {\n deps.push(...extractText(content));\n }\n\n if (deps.length === 0) {\n return null;\n }\n return { deps };\n}\n"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.extractPackageFile = extractPackageFile;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const regex_1 = require("../../../util/regex");
|
|
7
6
|
const maven_1 = require("../../datasource/maven");
|
|
8
7
|
const dependsOnRegex = (0, regex_1.regEx)(/@file\s*:\s*DependsOn\s*\(\s*(?<replaceString>"(?<groupId>.+):(?<artifactId>.+):(?<version>.+)")\s*\)/g);
|
|
@@ -10,10 +9,10 @@ const repositoryRegex = (0, regex_1.regEx)(/@file\s*:\s*Repository\s*\(\s*"(?<re
|
|
|
10
9
|
function extractPackageFile(fileContent) {
|
|
11
10
|
const registryUrls = [...fileContent.matchAll(repositoryRegex)]
|
|
12
11
|
.map((match) => match.groups?.repositoryName)
|
|
13
|
-
.filter(is_1.
|
|
12
|
+
.filter(is_1.isString);
|
|
14
13
|
const matches = [...fileContent.matchAll(dependsOnRegex)]
|
|
15
14
|
.map((m) => m.groups)
|
|
16
|
-
.filter(is_1.
|
|
15
|
+
.filter(is_1.isTruthy);
|
|
17
16
|
const deps = [];
|
|
18
17
|
for (const match of matches) {
|
|
19
18
|
const dep = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/kotlin-script/extract.ts"],"names":[],"mappings":";;AAYA,gDA6BC
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/kotlin-script/extract.ts"],"names":[],"mappings":";;AAYA,gDA6BC;AAzCD,yCAAsD;AACtD,+CAA4C;AAC5C,kDAAyD;AAGzD,MAAM,cAAc,GAAG,IAAA,aAAK,EAC1B,wGAAwG,CACzG,CAAC;AACF,MAAM,eAAe,GAAG,IAAA,aAAK,EAC3B,6DAA6D,CAC9D,CAAC;AAEF,SAAgB,kBAAkB,CAChC,WAAmB;IAEnB,MAAM,YAAY,GAAa,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;SACtE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC;SAC5C,MAAM,CAAC,aAAQ,CAAC,CAAC;IAEpB,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;SACtD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;SACpB,MAAM,CAAC,aAAQ,CAAC,CAAC;IACpB,MAAM,IAAI,GAAwB,EAAE,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAsB;YAC7B,YAAY,EAAE,KAAK,CAAC,OAAO;YAC3B,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,UAAU,EAAE;YAC/C,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,UAAU,EAAE,uBAAe,CAAC,EAAE;SAC/B,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI;QACJ,GAAG,CAAC,YAAY,CAAC,MAAM,IAAI,EAAE,YAAY,EAAE,CAAC;KAC7C,CAAC;AACJ,CAAC","sourcesContent":["import { isString, isTruthy } from '@sindresorhus/is';\nimport { regEx } from '../../../util/regex';\nimport { MavenDatasource } from '../../datasource/maven';\nimport type { PackageDependency, PackageFileContent } from '../types';\n\nconst dependsOnRegex = regEx(\n /@file\\s*:\\s*DependsOn\\s*\\(\\s*(?<replaceString>\"(?<groupId>.+):(?<artifactId>.+):(?<version>.+)\")\\s*\\)/g,\n);\nconst repositoryRegex = regEx(\n /@file\\s*:\\s*Repository\\s*\\(\\s*\"(?<repositoryName>.+)\"\\s*\\)/g,\n);\n\nexport function extractPackageFile(\n fileContent: string,\n): PackageFileContent | null {\n const registryUrls: string[] = [...fileContent.matchAll(repositoryRegex)]\n .map((match) => match.groups?.repositoryName)\n .filter(isString);\n\n const matches = [...fileContent.matchAll(dependsOnRegex)]\n .map((m) => m.groups)\n .filter(isTruthy);\n const deps: PackageDependency[] = [];\n for (const match of matches) {\n const dep: PackageDependency = {\n currentValue: match.version,\n depName: `${match.groupId}:${match.artifactId}`,\n replaceString: match.replaceString,\n datasource: MavenDatasource.id,\n };\n deps.push(dep);\n }\n\n if (deps.length === 0) {\n return null;\n }\n\n return {\n deps,\n ...(registryUrls.length && { registryUrls }),\n };\n}\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.extractPackageFile = extractPackageFile;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const is_1 =
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
6
|
const logger_1 = require("../../../logger");
|
|
7
7
|
const regex_1 = require("../../../util/regex");
|
|
8
8
|
const yaml_1 = require("../../../util/yaml");
|
|
@@ -56,9 +56,9 @@ function extractApis(content, packageFile) {
|
|
|
56
56
|
return [];
|
|
57
57
|
}
|
|
58
58
|
return doc
|
|
59
|
-
.filter(is_1.
|
|
60
|
-
.filter((m) => is_1.
|
|
61
|
-
is_1.
|
|
59
|
+
.filter(is_1.isTruthy)
|
|
60
|
+
.filter((m) => (0, is_1.isNonEmptyStringAndNotWhitespace)(m.kind) &&
|
|
61
|
+
(0, is_1.isNonEmptyStringAndNotWhitespace)(m.apiVersion))
|
|
62
62
|
.filter((m) => kubernetes_api_1.supportedApis.has(m.kind))
|
|
63
63
|
.map((configuration) => ({
|
|
64
64
|
depName: configuration.kind,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/kubernetes/extract.ts"],"names":[],"mappings":";;AAiBA,gDAoBC;;AArCD,
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/kubernetes/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyStringAndNotWhitespace, isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { newlineRegex, regEx } from '../../../util/regex';\nimport { parseYaml } from '../../../util/yaml';\nimport {\n KubernetesApiDatasource,\n supportedApis,\n} from '../../datasource/kubernetes-api';\nimport * as kubernetesApiVersioning from '../../versioning/kubernetes-api';\nimport { getDep } from '../dockerfile/extract';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport type { KubernetesConfiguration } from './types';\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n config: ExtractConfig,\n): PackageFileContent | null {\n logger.trace('kubernetes.extractPackageFile()');\n\n const isKubernetesManifest =\n regEx(/\\s*apiVersion\\s*:/).test(content) &&\n regEx(/\\s*kind\\s*:/).test(content);\n if (!isKubernetesManifest) {\n return null;\n }\n\n const deps: PackageDependency[] = [\n ...extractImages(content, config),\n ...extractApis(content, packageFile),\n ];\n\n return deps.length ? { deps } : null;\n}\n\n// Comes from https://github.com/distribution/reference/blob/v0.6.0/regexp.go\n// Extracted & converted with https://go.dev/play/p/KQQAONGp__2\nconst dockerImageRegexPattern = `((?:(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\\\\.(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*|\\\\[(?:[a-fA-F0-9:]+)\\\\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]|__|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]|__|[-]+)[a-z0-9]+)*)*)(?::([A-Za-z0-9_][A-Za-z0-9_.-]{0,127}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][0-9a-fA-F]{32,}))?`;\n\nconst k8sImageRegex = regEx(\n `^\\\\s*-?\\\\s*image:\\\\s*['\"]?(${dockerImageRegexPattern})['\"]?\\\\s*`,\n);\n\nfunction extractImages(\n content: string,\n config: ExtractConfig,\n): PackageDependency[] {\n const deps: PackageDependency[] = [];\n\n for (const line of content.split(newlineRegex)) {\n const match = k8sImageRegex.exec(line);\n if (match) {\n const currentFrom = match[1];\n const dep = getDep(currentFrom, true, config.registryAliases);\n logger.debug(\n {\n depName: dep.depName,\n currentValue: dep.currentValue,\n currentDigest: dep.currentDigest,\n },\n 'Kubernetes image',\n );\n deps.push(dep);\n }\n }\n\n return deps;\n}\n\nfunction extractApis(\n content: string,\n packageFile: string,\n): PackageDependency[] {\n let doc: KubernetesConfiguration[];\n\n try {\n // TODO: use schema (#9610)\n doc = parseYaml(content, {\n removeTemplates: true,\n });\n } catch (err) {\n logger.debug({ err, packageFile }, 'Failed to parse Kubernetes manifest.');\n return [];\n }\n\n return doc\n .filter(isTruthy)\n .filter(\n (m) =>\n isNonEmptyStringAndNotWhitespace(m.kind) &&\n isNonEmptyStringAndNotWhitespace(m.apiVersion),\n )\n .filter((m) => supportedApis.has(m.kind))\n .map((configuration) => ({\n depName: configuration.kind,\n currentValue: configuration.apiVersion,\n datasource: KubernetesApiDatasource.id,\n versioning: kubernetesApiVersioning.id,\n }));\n}\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.updateArtifacts = updateArtifacts;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const is_1 =
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
6
|
const shlex_1 = require("shlex");
|
|
7
7
|
const upath_1 = tslib_1.__importDefault(require("upath"));
|
|
8
8
|
const error_messages_1 = require("../../../constants/error-messages");
|
|
@@ -33,18 +33,18 @@ function helmRepositoryArgs(repository, depName, datasource) {
|
|
|
33
33
|
}
|
|
34
34
|
async function inflateHelmChart(flagEnabled, execOptions, chartHome, depName, repository, currentVersion, newVersion, datasource) {
|
|
35
35
|
const currentChartExistingPath = await localExistingChartPath(chartHome, depName, currentVersion);
|
|
36
|
-
if (!flagEnabled && is_1.
|
|
36
|
+
if (!flagEnabled && (0, is_1.isNullOrUndefined)(currentChartExistingPath)) {
|
|
37
37
|
logger_1.logger.debug(`Not inflating Helm chart for ${depName} as kustomizeInflateHelmCharts is not enabled and the current version isn't inflated`);
|
|
38
38
|
return;
|
|
39
39
|
}
|
|
40
|
-
if (is_1.
|
|
41
|
-
is_1.
|
|
40
|
+
if ((0, is_1.isNonEmptyString)(currentChartExistingPath) &&
|
|
41
|
+
(0, is_1.isNonEmptyString)(newVersion)) {
|
|
42
42
|
logger_1.logger.debug(`Deleting previous helm chart: ${currentChartExistingPath}`);
|
|
43
43
|
await (0, fs_1.deleteLocalFile)(currentChartExistingPath);
|
|
44
44
|
}
|
|
45
45
|
const versionToPull = newVersion ?? currentVersion;
|
|
46
46
|
const versionToPullExistingPath = await localExistingChartPath(chartHome, depName, versionToPull);
|
|
47
|
-
if (is_1.
|
|
47
|
+
if ((0, is_1.isNonEmptyString)(versionToPullExistingPath)) {
|
|
48
48
|
logger_1.logger.debug(`Helm chart ${depName} version ${versionToPull} already exists at ${versionToPullExistingPath}`);
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
@@ -59,7 +59,7 @@ async function updateArtifacts({ packageFileName, updatedDeps, newPackageFileCon
|
|
|
59
59
|
logger_1.logger.debug(`kustomize.updateArtifacts(${packageFileName})`);
|
|
60
60
|
const project = (0, extract_1.parseKustomize)(newPackageFileContent);
|
|
61
61
|
const isUpdateOptionInflateChartArchives = config.postUpdateOptions?.includes('kustomizeInflateHelmCharts') === true;
|
|
62
|
-
if (is_1.
|
|
62
|
+
if ((0, is_1.isNullOrUndefined)(project)) {
|
|
63
63
|
return [
|
|
64
64
|
{
|
|
65
65
|
artifactError: {
|
|
@@ -86,7 +86,7 @@ async function updateArtifacts({ packageFileName, updatedDeps, newPackageFileCon
|
|
|
86
86
|
if (dependency.newVersion === dependency.currentVersion) {
|
|
87
87
|
continue;
|
|
88
88
|
}
|
|
89
|
-
if (!is_1.
|
|
89
|
+
if (!(0, is_1.isNonEmptyString)(dependency.depName)) {
|
|
90
90
|
continue;
|
|
91
91
|
}
|
|
92
92
|
if (dependency.depType !== 'HelmChart') {
|
|
@@ -101,7 +101,7 @@ async function updateArtifacts({ packageFileName, updatedDeps, newPackageFileCon
|
|
|
101
101
|
repository = dependency.packageName;
|
|
102
102
|
break;
|
|
103
103
|
}
|
|
104
|
-
if (is_1.
|
|
104
|
+
if ((0, is_1.isNullOrUndefined)(repository)) {
|
|
105
105
|
continue;
|
|
106
106
|
}
|
|
107
107
|
await inflateHelmChart(isUpdateOptionInflateChartArchives, execOptions, chartHome, dependency.depName, repository, dependency.currentVersion, dependency.newVersion, dependency.datasource);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/kustomize/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { quote } from 'shlex';\nimport upath from 'upath';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions, ToolConstraint } from '../../../util/exec/types';\nimport {\n deleteLocalFile,\n getSiblingFileName,\n localPathExists,\n readLocalFile,\n} from '../../../util/fs';\nimport { getRepoStatus } from '../../../util/git';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { HelmDatasource } from '../../datasource/helm';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\nimport { generateHelmEnvs } from './common';\nimport { parseKustomize } from './extract';\n\nasync function localExistingChartPath(\n chartHome: string,\n dependencyName: string,\n version?: string,\n): Promise<string | null> {\n const folderName = `${dependencyName}-${version}`;\n const path = upath.join(chartHome, folderName);\n const pathExists = await localPathExists(path);\n\n return pathExists ? path : null;\n}\n\nfunction helmRepositoryArgs(\n repository: string,\n depName: string,\n datasource?: string,\n): string {\n switch (datasource) {\n case HelmDatasource.id:\n return `--repo ${quote(repository)} ${quote(depName)}`;\n case DockerDatasource.id:\n return quote(`oci://${repository}`);\n /* v8 ignore next 2: should never happen */\n default:\n throw new Error(`Unknown datasource: ${datasource}`);\n }\n}\n\nasync function inflateHelmChart(\n flagEnabled: boolean,\n execOptions: ExecOptions,\n chartHome: string,\n depName: string,\n repository: string,\n currentVersion: string,\n newVersion?: string,\n datasource?: string,\n): Promise<void> {\n const currentChartExistingPath = await localExistingChartPath(\n chartHome,\n depName,\n currentVersion,\n );\n\n if (!flagEnabled && is.nullOrUndefined(currentChartExistingPath)) {\n logger.debug(\n `Not inflating Helm chart for ${depName} as kustomizeInflateHelmCharts is not enabled and the current version isn't inflated`,\n );\n return;\n }\n\n if (\n is.nonEmptyString(currentChartExistingPath) &&\n is.nonEmptyString(newVersion)\n ) {\n logger.debug(`Deleting previous helm chart: ${currentChartExistingPath}`);\n await deleteLocalFile(currentChartExistingPath);\n }\n\n const versionToPull = newVersion ?? currentVersion;\n const versionToPullExistingPath = await localExistingChartPath(\n chartHome,\n depName,\n versionToPull,\n );\n\n if (is.nonEmptyString(versionToPullExistingPath)) {\n logger.debug(\n `Helm chart ${depName} version ${versionToPull} already exists at ${versionToPullExistingPath}`,\n );\n return;\n }\n\n const folderName = `${depName}-${versionToPull}`;\n const untarDir = upath.join(chartHome, folderName);\n logger.debug(\n `Pulling helm chart ${depName} version ${versionToPull} to ${untarDir}`,\n );\n\n const cmd =\n `helm pull --untar --untardir ${quote(untarDir)} ` +\n `--version ${quote(versionToPull)} ${helmRepositoryArgs(repository, depName, datasource)}`;\n\n await exec(cmd, execOptions);\n}\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`kustomize.updateArtifacts(${packageFileName})`);\n const project = parseKustomize(newPackageFileContent);\n const isUpdateOptionInflateChartArchives =\n config.postUpdateOptions?.includes('kustomizeInflateHelmCharts') === true;\n if (is.nullOrUndefined(project)) {\n return [\n {\n artifactError: {\n stderr: 'Failed to parse new package file content',\n },\n },\n ];\n }\n\n const chartHome = getSiblingFileName(\n packageFileName,\n project.helmGlobals?.chartHome ?? 'charts',\n );\n\n try {\n const helmToolConstraint: ToolConstraint = {\n toolName: 'helm',\n constraint: config.constraints?.helm,\n };\n\n const execOptions: ExecOptions = {\n docker: {},\n extraEnv: generateHelmEnvs(config),\n toolConstraints: [helmToolConstraint],\n };\n\n for (const dependency of updatedDeps) {\n if (!dependency.currentVersion) {\n continue;\n }\n\n if (dependency.newVersion === dependency.currentVersion) {\n continue;\n }\n\n if (!is.nonEmptyString(dependency.depName)) {\n continue;\n }\n\n if (dependency.depType !== 'HelmChart') {\n continue;\n }\n\n let repository = null;\n\n switch (dependency.datasource) {\n case HelmDatasource.id:\n repository = dependency.registryUrls?.[0];\n break;\n case DockerDatasource.id:\n repository = dependency.packageName;\n break;\n }\n\n if (is.nullOrUndefined(repository)) {\n continue;\n }\n\n await inflateHelmChart(\n isUpdateOptionInflateChartArchives,\n execOptions,\n chartHome,\n dependency.depName,\n repository,\n dependency.currentVersion,\n dependency.newVersion,\n dependency.datasource,\n );\n }\n\n const status = await getRepoStatus();\n const chartsAddition = status?.not_added ?? [];\n const chartsDeletion = status?.deleted ?? [];\n\n const fileChanges: UpdateArtifactsResult[] = [];\n\n for (const file of chartsAddition) {\n // only add artifacts in the chartHome path\n if (!file.startsWith(chartHome)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'addition',\n path: file,\n contents: await readLocalFile(file),\n },\n });\n }\n\n for (const file of chartsDeletion) {\n // only add artifacts in the chartHome path\n if (!file.startsWith(chartHome)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'deletion',\n path: file,\n },\n });\n }\n\n return fileChanges.length > 0 ? fileChanges : null;\n } catch (err) {\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n logger.debug({ err }, 'Failed to inflate helm chart');\n return [\n {\n artifactError: {\n stderr: err.message,\n },\n },\n ];\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/kustomize/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyString, isNullOrUndefined } from '@sindresorhus/is';\nimport { quote } from 'shlex';\nimport upath from 'upath';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions, ToolConstraint } from '../../../util/exec/types';\nimport {\n deleteLocalFile,\n getSiblingFileName,\n localPathExists,\n readLocalFile,\n} from '../../../util/fs';\nimport { getRepoStatus } from '../../../util/git';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { HelmDatasource } from '../../datasource/helm';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\nimport { generateHelmEnvs } from './common';\nimport { parseKustomize } from './extract';\n\nasync function localExistingChartPath(\n chartHome: string,\n dependencyName: string,\n version?: string,\n): Promise<string | null> {\n const folderName = `${dependencyName}-${version}`;\n const path = upath.join(chartHome, folderName);\n const pathExists = await localPathExists(path);\n\n return pathExists ? path : null;\n}\n\nfunction helmRepositoryArgs(\n repository: string,\n depName: string,\n datasource?: string,\n): string {\n switch (datasource) {\n case HelmDatasource.id:\n return `--repo ${quote(repository)} ${quote(depName)}`;\n case DockerDatasource.id:\n return quote(`oci://${repository}`);\n /* v8 ignore next 2: should never happen */\n default:\n throw new Error(`Unknown datasource: ${datasource}`);\n }\n}\n\nasync function inflateHelmChart(\n flagEnabled: boolean,\n execOptions: ExecOptions,\n chartHome: string,\n depName: string,\n repository: string,\n currentVersion: string,\n newVersion?: string,\n datasource?: string,\n): Promise<void> {\n const currentChartExistingPath = await localExistingChartPath(\n chartHome,\n depName,\n currentVersion,\n );\n\n if (!flagEnabled && isNullOrUndefined(currentChartExistingPath)) {\n logger.debug(\n `Not inflating Helm chart for ${depName} as kustomizeInflateHelmCharts is not enabled and the current version isn't inflated`,\n );\n return;\n }\n\n if (\n isNonEmptyString(currentChartExistingPath) &&\n isNonEmptyString(newVersion)\n ) {\n logger.debug(`Deleting previous helm chart: ${currentChartExistingPath}`);\n await deleteLocalFile(currentChartExistingPath);\n }\n\n const versionToPull = newVersion ?? currentVersion;\n const versionToPullExistingPath = await localExistingChartPath(\n chartHome,\n depName,\n versionToPull,\n );\n\n if (isNonEmptyString(versionToPullExistingPath)) {\n logger.debug(\n `Helm chart ${depName} version ${versionToPull} already exists at ${versionToPullExistingPath}`,\n );\n return;\n }\n\n const folderName = `${depName}-${versionToPull}`;\n const untarDir = upath.join(chartHome, folderName);\n logger.debug(\n `Pulling helm chart ${depName} version ${versionToPull} to ${untarDir}`,\n );\n\n const cmd =\n `helm pull --untar --untardir ${quote(untarDir)} ` +\n `--version ${quote(versionToPull)} ${helmRepositoryArgs(repository, depName, datasource)}`;\n\n await exec(cmd, execOptions);\n}\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`kustomize.updateArtifacts(${packageFileName})`);\n const project = parseKustomize(newPackageFileContent);\n const isUpdateOptionInflateChartArchives =\n config.postUpdateOptions?.includes('kustomizeInflateHelmCharts') === true;\n if (isNullOrUndefined(project)) {\n return [\n {\n artifactError: {\n stderr: 'Failed to parse new package file content',\n },\n },\n ];\n }\n\n const chartHome = getSiblingFileName(\n packageFileName,\n project.helmGlobals?.chartHome ?? 'charts',\n );\n\n try {\n const helmToolConstraint: ToolConstraint = {\n toolName: 'helm',\n constraint: config.constraints?.helm,\n };\n\n const execOptions: ExecOptions = {\n docker: {},\n extraEnv: generateHelmEnvs(config),\n toolConstraints: [helmToolConstraint],\n };\n\n for (const dependency of updatedDeps) {\n if (!dependency.currentVersion) {\n continue;\n }\n\n if (dependency.newVersion === dependency.currentVersion) {\n continue;\n }\n\n if (!isNonEmptyString(dependency.depName)) {\n continue;\n }\n\n if (dependency.depType !== 'HelmChart') {\n continue;\n }\n\n let repository = null;\n\n switch (dependency.datasource) {\n case HelmDatasource.id:\n repository = dependency.registryUrls?.[0];\n break;\n case DockerDatasource.id:\n repository = dependency.packageName;\n break;\n }\n\n if (isNullOrUndefined(repository)) {\n continue;\n }\n\n await inflateHelmChart(\n isUpdateOptionInflateChartArchives,\n execOptions,\n chartHome,\n dependency.depName,\n repository,\n dependency.currentVersion,\n dependency.newVersion,\n dependency.datasource,\n );\n }\n\n const status = await getRepoStatus();\n const chartsAddition = status?.not_added ?? [];\n const chartsDeletion = status?.deleted ?? [];\n\n const fileChanges: UpdateArtifactsResult[] = [];\n\n for (const file of chartsAddition) {\n // only add artifacts in the chartHome path\n if (!file.startsWith(chartHome)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'addition',\n path: file,\n contents: await readLocalFile(file),\n },\n });\n }\n\n for (const file of chartsDeletion) {\n // only add artifacts in the chartHome path\n if (!file.startsWith(chartHome)) {\n continue;\n }\n fileChanges.push({\n file: {\n type: 'deletion',\n path: file,\n },\n });\n }\n\n return fileChanges.length > 0 ? fileChanges : null;\n } catch (err) {\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n logger.debug({ err }, 'Failed to inflate helm chart');\n return [\n {\n artifactError: {\n stderr: err.message,\n },\n },\n ];\n }\n}\n"]}
|