renovate 42.3.0 → 42.4.1
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/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/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/artifacts.js +1 -1
- package/dist/modules/manager/copier/artifacts.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 +6 -6
- 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/homebrew/extract.js +1 -1
- package/dist/modules/manager/homebrew/extract.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/schema.d.ts +1 -1
- package/dist/modules/manager/pep621/schema.js +1 -0
- package/dist/modules/manager/pep621/schema.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/poetry/schema.d.ts +4 -0
- package/dist/modules/manager/poetry/schema.js +5 -1
- package/dist/modules/manager/poetry/schema.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 +3 -3
- 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/pr-cache.js +1 -1
- package/dist/modules/platform/forgejo/pr-cache.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/pr-cache.js +1 -1
- package/dist/modules/platform/gitea/pr-cache.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/ivy/parse.js +1 -1
- package/dist/modules/versioning/ivy/parse.js.map +1 -1
- package/dist/modules/versioning/maven/index.js +1 -1
- package/dist/modules/versioning/maven/index.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/nuget/index.js +1 -1
- package/dist/modules/versioning/nuget/index.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/behind-base-branch-cache.js +2 -1
- package/dist/util/git/behind-base-branch-cache.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/conflicts-cache.js +2 -1
- package/dist/util/git/conflicts-cache.js.map +1 -1
- package/dist/util/git/index.js +5 -5
- 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/github/graphql/datasource-fetcher.js +2 -1
- package/dist/util/github/graphql/datasource-fetcher.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/http/retry-after.js +3 -4
- package/dist/util/http/retry-after.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/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/check.js +2 -1
- package/dist/workers/repository/onboarding/branch/check.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/index.js +3 -4
- package/dist/workers/repository/onboarding/branch/index.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js +7 -8
- 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 +5 -5
- package/renovate-schema.json +2 -2
|
@@ -9,7 +9,7 @@ exports.resolveStaticRepoConfig = resolveStaticRepoConfig;
|
|
|
9
9
|
exports.tryReadStaticRepoFileConfig = tryReadStaticRepoFileConfig;
|
|
10
10
|
exports.mergeStaticConfig = mergeStaticConfig;
|
|
11
11
|
const tslib_1 = require("tslib");
|
|
12
|
-
const is_1 =
|
|
12
|
+
const is_1 = require("@sindresorhus/is");
|
|
13
13
|
const config_1 = require("../../../config");
|
|
14
14
|
const app_strings_1 = require("../../../config/app-strings");
|
|
15
15
|
const decrypt_1 = require("../../../config/decrypt");
|
|
@@ -61,7 +61,7 @@ async function detectConfigFile() {
|
|
|
61
61
|
async function detectRepoFileConfig(branchName) {
|
|
62
62
|
const cache = (0, repository_1.getCache)();
|
|
63
63
|
let { configFileName } = cache;
|
|
64
|
-
if (is_1.
|
|
64
|
+
if ((0, is_1.isNonEmptyString)(configFileName)) {
|
|
65
65
|
let configFileRaw;
|
|
66
66
|
try {
|
|
67
67
|
configFileRaw = await platform_1.platform.getRawFile(configFileName, undefined, branchName);
|
|
@@ -114,7 +114,7 @@ async function detectRepoFileConfig(branchName) {
|
|
|
114
114
|
configFileParsed = JSON.parse(
|
|
115
115
|
// TODO #22198
|
|
116
116
|
(await (0, fs_1.readLocalFile)('package.json', 'utf8'))).renovate;
|
|
117
|
-
if (is_1.
|
|
117
|
+
if ((0, is_1.isString)(configFileParsed)) {
|
|
118
118
|
logger_1.logger.debug('Massaging string renovate config to extends array');
|
|
119
119
|
configFileParsed = { extends: [configFileParsed] };
|
|
120
120
|
}
|
|
@@ -123,7 +123,7 @@ async function detectRepoFileConfig(branchName) {
|
|
|
123
123
|
else {
|
|
124
124
|
configFileRaw = await (0, fs_1.readLocalFile)(configFileName, 'utf8');
|
|
125
125
|
// istanbul ignore if
|
|
126
|
-
if (!is_1.
|
|
126
|
+
if (!(0, is_1.isString)(configFileRaw)) {
|
|
127
127
|
logger_1.logger.warn({ configFileName }, 'Null contents when reading config file');
|
|
128
128
|
throw new Error(error_messages_1.REPOSITORY_CHANGED);
|
|
129
129
|
}
|
|
@@ -174,7 +174,7 @@ async function mergeRenovateConfig(config, branchName) {
|
|
|
174
174
|
}
|
|
175
175
|
const configFileParsed = repoConfig?.configFileParsed ?? {};
|
|
176
176
|
const resolvedRepoConfig = await resolveStaticRepoConfig(configFileParsed, process.env.RENOVATE_X_STATIC_REPO_CONFIG_FILE);
|
|
177
|
-
if (is_1.
|
|
177
|
+
if ((0, is_1.isNonEmptyArray)(returnConfig.extends)) {
|
|
178
178
|
resolvedRepoConfig.extends = [
|
|
179
179
|
...returnConfig.extends,
|
|
180
180
|
...(resolvedRepoConfig.extends ?? []),
|
|
@@ -207,7 +207,7 @@ async function mergeRenovateConfig(config, branchName) {
|
|
|
207
207
|
const decryptedConfig = await (0, decrypt_1.decryptConfig)(migratedConfig, repository);
|
|
208
208
|
setNpmTokenInNpmrc(decryptedConfig);
|
|
209
209
|
// istanbul ignore if
|
|
210
|
-
if (is_1.
|
|
210
|
+
if ((0, is_1.isString)(decryptedConfig.npmrc)) {
|
|
211
211
|
logger_1.logger.debug('Found npmrc in decrypted config - setting');
|
|
212
212
|
npmApi.setNpmrc(decryptedConfig.npmrc);
|
|
213
213
|
}
|
|
@@ -222,7 +222,7 @@ async function mergeRenovateConfig(config, branchName) {
|
|
|
222
222
|
}
|
|
223
223
|
setNpmTokenInNpmrc(resolvedConfig);
|
|
224
224
|
// istanbul ignore if
|
|
225
|
-
if (is_1.
|
|
225
|
+
if ((0, is_1.isString)(resolvedConfig.npmrc)) {
|
|
226
226
|
logger_1.logger.debug('Ignoring any .npmrc files in repository due to configured npmrc');
|
|
227
227
|
npmApi.setNpmrc(resolvedConfig.npmrc);
|
|
228
228
|
}
|
|
@@ -260,12 +260,12 @@ async function mergeRenovateConfig(config, branchName) {
|
|
|
260
260
|
}
|
|
261
261
|
/** needed when using portal secrets for npmToken */
|
|
262
262
|
function setNpmTokenInNpmrc(config) {
|
|
263
|
-
if (!is_1.
|
|
263
|
+
if (!(0, is_1.isString)(config.npmToken)) {
|
|
264
264
|
return;
|
|
265
265
|
}
|
|
266
266
|
const token = config.npmToken;
|
|
267
267
|
logger_1.logger.debug({ npmToken: (0, mask_1.maskToken)(token) }, 'Migrating npmToken to npmrc');
|
|
268
|
-
if (!is_1.
|
|
268
|
+
if (!(0, is_1.isString)(config.npmrc)) {
|
|
269
269
|
logger_1.logger.debug('Adding npmrc to config');
|
|
270
270
|
config.npmrc = `//registry.npmjs.org/:_authToken=${token}\n`;
|
|
271
271
|
delete config.npmToken;
|
|
@@ -282,7 +282,7 @@ function setNpmTokenInNpmrc(config) {
|
|
|
282
282
|
delete config.npmToken;
|
|
283
283
|
}
|
|
284
284
|
async function resolveStaticRepoConfig(config, filename) {
|
|
285
|
-
if (!is_1.
|
|
285
|
+
if (!(0, is_1.isNonEmptyString)(filename)) {
|
|
286
286
|
return config;
|
|
287
287
|
}
|
|
288
288
|
let staticRepoConfig;
|
|
@@ -293,7 +293,7 @@ async function resolveStaticRepoConfig(config, filename) {
|
|
|
293
293
|
logger_1.logger.fatal({ err }, 'Failed to load static repository config file');
|
|
294
294
|
process.exit(1);
|
|
295
295
|
}
|
|
296
|
-
if (!is_1.
|
|
296
|
+
if (!(0, is_1.isNonEmptyObject)(staticRepoConfig)) {
|
|
297
297
|
return config;
|
|
298
298
|
}
|
|
299
299
|
return mergeStaticConfig(config, staticRepoConfig);
|
|
@@ -310,7 +310,7 @@ async function tryReadStaticRepoFileConfig(staticRepoConfigFile) {
|
|
|
310
310
|
const staticRepoConfig = (0, common_1.parseJson)(staticRepoConfigRaw, staticRepoConfigFile);
|
|
311
311
|
// validate and log issues here to preserve context, caller handles migration and full validation.
|
|
312
312
|
const { errors, warnings } = await configValidation.validateConfig('repo', staticRepoConfig);
|
|
313
|
-
if (is_1.
|
|
313
|
+
if ((0, is_1.isNonEmptyArray)(errors) || (0, is_1.isNonEmptyArray)(warnings)) {
|
|
314
314
|
logger_1.logger.info({ errors, warnings }, 'Static repo config validation issues detected');
|
|
315
315
|
}
|
|
316
316
|
else {
|
|
@@ -320,7 +320,7 @@ async function tryReadStaticRepoFileConfig(staticRepoConfigFile) {
|
|
|
320
320
|
}
|
|
321
321
|
function mergeStaticConfig(config, staticRepoConfig) {
|
|
322
322
|
// merge extends
|
|
323
|
-
if (is_1.
|
|
323
|
+
if ((0, is_1.isNonEmptyArray)(staticRepoConfig.extends)) {
|
|
324
324
|
config.extends = [...staticRepoConfig.extends, ...(config.extends ?? [])];
|
|
325
325
|
delete staticRepoConfig.extends;
|
|
326
326
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../../../../lib/workers/repository/init/merge.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { mergeChildConfig } from '../../../config';\nimport { getConfigFileNames } from '../../../config/app-strings';\nimport { decryptConfig } from '../../../config/decrypt';\nimport { migrateAndValidate } from '../../../config/migrate-validate';\nimport { migrateConfig } from '../../../config/migration';\nimport { parseFileConfig } from '../../../config/parse';\nimport * as presets from '../../../config/presets';\nimport { applySecretsAndVariablesToConfig } from '../../../config/secrets';\nimport type { AllConfig, RenovateConfig } from '../../../config/types';\nimport * as configValidation from '../../../config/validation';\nimport {\n CONFIG_VALIDATION,\n REPOSITORY_CHANGED,\n} from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport * as npmApi from '../../../modules/datasource/npm';\nimport { platform } from '../../../modules/platform';\nimport { scm } from '../../../modules/platform/scm';\nimport { ExternalHostError } from '../../../types/errors/external-host-error';\nimport { getCache } from '../../../util/cache/repository';\nimport { parseJson } from '../../../util/common';\nimport { setUserEnv } from '../../../util/env';\nimport { readLocalFile, readSystemFile } from '../../../util/fs';\nimport * as hostRules from '../../../util/host-rules';\nimport * as queue from '../../../util/http/queue';\nimport * as throttle from '../../../util/http/throttle';\nimport { maskToken } from '../../../util/mask';\nimport { regEx } from '../../../util/regex';\nimport { getOnboardingConfig } from '../onboarding/branch/config';\nimport {\n getOnboardingConfigFromCache,\n getOnboardingFileNameFromCache,\n setOnboardingConfigDetails,\n} from '../onboarding/branch/onboarding-branch-cache';\nimport {\n OnboardingState,\n getDefaultConfigFileName,\n} from '../onboarding/common';\nimport type { RepoFileConfig } from './types';\n\nexport async function detectConfigFile(): Promise<string | null> {\n const fileList = await scm.getFileList();\n for (const fileName of getConfigFileNames()) {\n if (fileName === 'package.json') {\n try {\n const pJson = JSON.parse(\n (await readLocalFile('package.json', 'utf8'))!,\n );\n if (pJson.renovate) {\n logger.warn(\n 'Using package.json for Renovate config is deprecated - please use a dedicated configuration file instead',\n );\n return 'package.json';\n }\n } catch {\n // Do nothing\n }\n } else if (fileList.includes(fileName)) {\n return fileName;\n }\n }\n return null;\n}\n\nexport async function detectRepoFileConfig(\n branchName?: string,\n): Promise<RepoFileConfig> {\n const cache = getCache();\n let { configFileName } = cache;\n if (is.nonEmptyString(configFileName)) {\n let configFileRaw: string | null;\n try {\n configFileRaw = await platform.getRawFile(\n configFileName,\n undefined,\n branchName,\n );\n } catch (err) {\n // istanbul ignore if\n if (err instanceof ExternalHostError) {\n throw err;\n }\n configFileRaw = null;\n }\n if (configFileRaw) {\n let configFileParsed = parseJson(configFileRaw, configFileName) as any;\n if (configFileName === 'package.json') {\n configFileParsed = configFileParsed.renovate;\n }\n return { configFileName, configFileParsed };\n } else {\n logger.debug('Existing config file no longer exists');\n delete cache.configFileName;\n }\n }\n\n if (OnboardingState.onboardingCacheValid) {\n configFileName = getOnboardingFileNameFromCache();\n } else {\n configFileName = (await detectConfigFile()) ?? undefined;\n }\n\n if (!configFileName) {\n logger.debug('No renovate config file found');\n cache.configFileName = '';\n return {};\n }\n cache.configFileName = configFileName;\n logger.debug(`Found ${configFileName} config file`);\n // TODO #22198\n let configFileParsed: any;\n let configFileRaw: string | undefined | null;\n\n if (OnboardingState.onboardingCacheValid) {\n const cachedConfig = getOnboardingConfigFromCache();\n const parsedConfig = cachedConfig ? JSON.parse(cachedConfig) : undefined;\n if (parsedConfig) {\n setOnboardingConfigDetails(configFileName, JSON.stringify(parsedConfig));\n return { configFileName, configFileParsed: parsedConfig };\n }\n }\n\n if (configFileName === 'package.json') {\n // We already know it parses\n configFileParsed = JSON.parse(\n // TODO #22198\n (await readLocalFile('package.json', 'utf8'))!,\n ).renovate;\n if (is.string(configFileParsed)) {\n logger.debug('Massaging string renovate config to extends array');\n configFileParsed = { extends: [configFileParsed] };\n }\n logger.debug({ config: configFileParsed }, 'package.json>renovate config');\n } else {\n configFileRaw = await readLocalFile(configFileName, 'utf8');\n // istanbul ignore if\n if (!is.string(configFileRaw)) {\n logger.warn({ configFileName }, 'Null contents when reading config file');\n throw new Error(REPOSITORY_CHANGED);\n }\n // istanbul ignore if\n if (!configFileRaw.length) {\n configFileRaw = '{}';\n }\n\n const parseResult = parseFileConfig(configFileName, configFileRaw);\n\n if (!parseResult.success) {\n return {\n configFileName,\n configFileParseError: {\n validationError: parseResult.validationError,\n validationMessage: parseResult.validationMessage,\n },\n };\n }\n configFileParsed = parseResult.parsedContents;\n logger.debug(\n { fileName: configFileName, config: configFileParsed },\n 'Repository config',\n );\n }\n\n setOnboardingConfigDetails(configFileName, JSON.stringify(configFileParsed));\n return { configFileName, configFileParsed };\n}\n\nexport function checkForRepoConfigError(repoConfig: RepoFileConfig): void {\n if (!repoConfig.configFileParseError) {\n return;\n }\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = repoConfig.configFileName;\n error.validationError = repoConfig.configFileParseError.validationError;\n error.validationMessage = repoConfig.configFileParseError.validationMessage;\n throw error;\n}\n\n// Check for repository config\nexport async function mergeRenovateConfig(\n config: RenovateConfig,\n branchName?: string,\n): Promise<RenovateConfig> {\n let returnConfig = { ...config };\n let repoConfig: RepoFileConfig = {};\n if (config.requireConfig !== 'ignored') {\n repoConfig = await detectRepoFileConfig(branchName);\n }\n if (!repoConfig.configFileParsed && config.mode === 'silent') {\n logger.debug(\n 'When mode=silent and repo has no config file, we use the onboarding config as repo config',\n );\n const configFileName = getDefaultConfigFileName(config);\n repoConfig = {\n configFileName,\n configFileParsed: await getOnboardingConfig(config),\n };\n }\n const configFileParsed = repoConfig?.configFileParsed ?? {};\n const resolvedRepoConfig = await resolveStaticRepoConfig(\n configFileParsed,\n process.env.RENOVATE_X_STATIC_REPO_CONFIG_FILE,\n );\n\n if (is.nonEmptyArray(returnConfig.extends)) {\n resolvedRepoConfig.extends = [\n ...returnConfig.extends,\n ...(resolvedRepoConfig.extends ?? []),\n ];\n delete returnConfig.extends;\n }\n checkForRepoConfigError(repoConfig);\n const migratedConfig = await migrateAndValidate(config, resolvedRepoConfig);\n if (migratedConfig.errors?.length) {\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = repoConfig.configFileName;\n error.validationError =\n 'The renovate configuration file contains some invalid settings';\n error.validationMessage = migratedConfig.errors\n .map((e) => e.message)\n .join(', ');\n throw error;\n }\n if (migratedConfig.warnings) {\n returnConfig.warnings = [\n ...(returnConfig.warnings ?? []),\n ...migratedConfig.warnings,\n ];\n }\n delete migratedConfig.errors;\n delete migratedConfig.warnings;\n // TODO #22198\n const repository = config.repository!;\n // Decrypt before resolving in case we need npm authentication for any presets\n const decryptedConfig = await decryptConfig(migratedConfig, repository);\n setNpmTokenInNpmrc(decryptedConfig);\n // istanbul ignore if\n if (is.string(decryptedConfig.npmrc)) {\n logger.debug('Found npmrc in decrypted config - setting');\n npmApi.setNpmrc(decryptedConfig.npmrc);\n }\n // Decrypt after resolving in case the preset contains npm authentication instead\n let resolvedConfig = await decryptConfig(\n await presets.resolveConfigPresets(\n decryptedConfig,\n config,\n config.ignorePresets,\n ),\n repository,\n );\n logger.trace({ config: resolvedConfig }, 'resolved config');\n const migrationResult = migrateConfig(resolvedConfig);\n if (migrationResult.isMigrated) {\n logger.debug('Resolved config needs migrating');\n logger.trace({ config: resolvedConfig }, 'resolved config after migrating');\n resolvedConfig = migrationResult.migratedConfig;\n }\n setNpmTokenInNpmrc(resolvedConfig);\n // istanbul ignore if\n if (is.string(resolvedConfig.npmrc)) {\n logger.debug(\n 'Ignoring any .npmrc files in repository due to configured npmrc',\n );\n npmApi.setNpmrc(resolvedConfig.npmrc);\n }\n resolvedConfig = applySecretsAndVariablesToConfig({\n config: resolvedConfig,\n secrets: mergeChildConfig(\n config.secrets ?? {},\n resolvedConfig.secrets ?? {},\n ),\n variables: mergeChildConfig(\n config.variables ?? {},\n resolvedConfig.variables ?? {},\n ),\n });\n\n // istanbul ignore if\n if (resolvedConfig.hostRules) {\n logger.debug('Setting hostRules from config');\n for (const rule of resolvedConfig.hostRules) {\n try {\n hostRules.add(rule);\n } catch (err) {\n logger.warn(\n { err, config: rule },\n 'Error setting hostRule from config',\n );\n }\n }\n // host rules can change concurrency\n queue.clear();\n throttle.clear();\n delete resolvedConfig.hostRules;\n }\n returnConfig = mergeChildConfig(returnConfig, resolvedConfig);\n returnConfig = await presets.resolveConfigPresets(returnConfig, config);\n returnConfig.renovateJsonPresent = true;\n // istanbul ignore if\n if (returnConfig.ignorePaths?.length) {\n logger.debug(\n { ignorePaths: returnConfig.ignorePaths },\n `Found repo ignorePaths`,\n );\n }\n\n setUserEnv(returnConfig.env);\n delete returnConfig.env;\n\n return returnConfig;\n}\n\n/** needed when using portal secrets for npmToken */\nexport function setNpmTokenInNpmrc(config: RenovateConfig): void {\n if (!is.string(config.npmToken)) {\n return;\n }\n\n const token = config.npmToken;\n logger.debug({ npmToken: maskToken(token) }, 'Migrating npmToken to npmrc');\n\n if (!is.string(config.npmrc)) {\n logger.debug('Adding npmrc to config');\n config.npmrc = `//registry.npmjs.org/:_authToken=${token}\\n`;\n delete config.npmToken;\n return;\n }\n\n if (config.npmrc.includes(`\\${NPM_TOKEN}`)) {\n logger.debug(`Replacing \\${NPM_TOKEN} with npmToken`);\n config.npmrc = config.npmrc.replace(regEx(/\\${NPM_TOKEN}/g), token);\n } else {\n logger.debug('Appending _authToken= to end of existing npmrc');\n config.npmrc = config.npmrc.replace(\n regEx(/\\n?$/),\n `\\n_authToken=${token}\\n`,\n );\n }\n\n delete config.npmToken;\n}\n\nexport async function resolveStaticRepoConfig(\n config: AllConfig,\n filename: string | undefined,\n): Promise<AllConfig> {\n if (!is.nonEmptyString(filename)) {\n return config;\n }\n\n let staticRepoConfig: AllConfig;\n\n try {\n staticRepoConfig = await tryReadStaticRepoFileConfig(filename);\n } catch (err) {\n logger.fatal({ err }, 'Failed to load static repository config file');\n process.exit(1);\n }\n\n if (!is.nonEmptyObject(staticRepoConfig)) {\n return config;\n }\n\n return mergeStaticConfig(config, staticRepoConfig);\n}\n\nexport async function tryReadStaticRepoFileConfig(\n staticRepoConfigFile: string,\n): Promise<AllConfig> {\n logger.debug(`Reading static repo config file from ${staticRepoConfigFile}`);\n\n let staticRepoConfigRaw: string;\n try {\n staticRepoConfigRaw = await readSystemFile(staticRepoConfigFile, 'utf8');\n } catch (err) {\n throw new Error(\n `Failed to read static repo config file: \"${staticRepoConfigFile}\"`,\n { cause: err },\n );\n }\n\n const staticRepoConfig = parseJson(\n staticRepoConfigRaw,\n staticRepoConfigFile,\n ) as AllConfig;\n\n // validate and log issues here to preserve context, caller handles migration and full validation.\n const { errors, warnings } = await configValidation.validateConfig(\n 'repo',\n staticRepoConfig,\n );\n\n if (is.nonEmptyArray(errors) || is.nonEmptyArray(warnings)) {\n logger.info(\n { errors, warnings },\n 'Static repo config validation issues detected',\n );\n } else {\n logger.debug(\n { staticRepoConfig },\n 'Static repository config file successfully parsed and validated',\n );\n }\n\n return staticRepoConfig;\n}\n\nexport function mergeStaticConfig(\n config: AllConfig,\n staticRepoConfig: AllConfig,\n): AllConfig {\n // merge extends\n if (is.nonEmptyArray(staticRepoConfig.extends)) {\n config.extends = [...staticRepoConfig.extends, ...(config.extends ?? [])];\n delete staticRepoConfig.extends;\n }\n\n // renovate repo config overrides RENOVATE_STATIC_REPO_CONFIG[_FILE]\n return mergeChildConfig(staticRepoConfig, config);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../../../../lib/workers/repository/init/merge.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n isNonEmptyArray,\n isNonEmptyObject,\n isNonEmptyString,\n isString,\n} from '@sindresorhus/is';\nimport { mergeChildConfig } from '../../../config';\nimport { getConfigFileNames } from '../../../config/app-strings';\nimport { decryptConfig } from '../../../config/decrypt';\nimport { migrateAndValidate } from '../../../config/migrate-validate';\nimport { migrateConfig } from '../../../config/migration';\nimport { parseFileConfig } from '../../../config/parse';\nimport * as presets from '../../../config/presets';\nimport { applySecretsAndVariablesToConfig } from '../../../config/secrets';\nimport type { AllConfig, RenovateConfig } from '../../../config/types';\nimport * as configValidation from '../../../config/validation';\nimport {\n CONFIG_VALIDATION,\n REPOSITORY_CHANGED,\n} from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport * as npmApi from '../../../modules/datasource/npm';\nimport { platform } from '../../../modules/platform';\nimport { scm } from '../../../modules/platform/scm';\nimport { ExternalHostError } from '../../../types/errors/external-host-error';\nimport { getCache } from '../../../util/cache/repository';\nimport { parseJson } from '../../../util/common';\nimport { setUserEnv } from '../../../util/env';\nimport { readLocalFile, readSystemFile } from '../../../util/fs';\nimport * as hostRules from '../../../util/host-rules';\nimport * as queue from '../../../util/http/queue';\nimport * as throttle from '../../../util/http/throttle';\nimport { maskToken } from '../../../util/mask';\nimport { regEx } from '../../../util/regex';\nimport { getOnboardingConfig } from '../onboarding/branch/config';\nimport {\n getOnboardingConfigFromCache,\n getOnboardingFileNameFromCache,\n setOnboardingConfigDetails,\n} from '../onboarding/branch/onboarding-branch-cache';\nimport {\n OnboardingState,\n getDefaultConfigFileName,\n} from '../onboarding/common';\nimport type { RepoFileConfig } from './types';\n\nexport async function detectConfigFile(): Promise<string | null> {\n const fileList = await scm.getFileList();\n for (const fileName of getConfigFileNames()) {\n if (fileName === 'package.json') {\n try {\n const pJson = JSON.parse(\n (await readLocalFile('package.json', 'utf8'))!,\n );\n if (pJson.renovate) {\n logger.warn(\n 'Using package.json for Renovate config is deprecated - please use a dedicated configuration file instead',\n );\n return 'package.json';\n }\n } catch {\n // Do nothing\n }\n } else if (fileList.includes(fileName)) {\n return fileName;\n }\n }\n return null;\n}\n\nexport async function detectRepoFileConfig(\n branchName?: string,\n): Promise<RepoFileConfig> {\n const cache = getCache();\n let { configFileName } = cache;\n if (isNonEmptyString(configFileName)) {\n let configFileRaw: string | null;\n try {\n configFileRaw = await platform.getRawFile(\n configFileName,\n undefined,\n branchName,\n );\n } catch (err) {\n // istanbul ignore if\n if (err instanceof ExternalHostError) {\n throw err;\n }\n configFileRaw = null;\n }\n if (configFileRaw) {\n let configFileParsed = parseJson(configFileRaw, configFileName) as any;\n if (configFileName === 'package.json') {\n configFileParsed = configFileParsed.renovate;\n }\n return { configFileName, configFileParsed };\n } else {\n logger.debug('Existing config file no longer exists');\n delete cache.configFileName;\n }\n }\n\n if (OnboardingState.onboardingCacheValid) {\n configFileName = getOnboardingFileNameFromCache();\n } else {\n configFileName = (await detectConfigFile()) ?? undefined;\n }\n\n if (!configFileName) {\n logger.debug('No renovate config file found');\n cache.configFileName = '';\n return {};\n }\n cache.configFileName = configFileName;\n logger.debug(`Found ${configFileName} config file`);\n // TODO #22198\n let configFileParsed: any;\n let configFileRaw: string | undefined | null;\n\n if (OnboardingState.onboardingCacheValid) {\n const cachedConfig = getOnboardingConfigFromCache();\n const parsedConfig = cachedConfig ? JSON.parse(cachedConfig) : undefined;\n if (parsedConfig) {\n setOnboardingConfigDetails(configFileName, JSON.stringify(parsedConfig));\n return { configFileName, configFileParsed: parsedConfig };\n }\n }\n\n if (configFileName === 'package.json') {\n // We already know it parses\n configFileParsed = JSON.parse(\n // TODO #22198\n (await readLocalFile('package.json', 'utf8'))!,\n ).renovate;\n if (isString(configFileParsed)) {\n logger.debug('Massaging string renovate config to extends array');\n configFileParsed = { extends: [configFileParsed] };\n }\n logger.debug({ config: configFileParsed }, 'package.json>renovate config');\n } else {\n configFileRaw = await readLocalFile(configFileName, 'utf8');\n // istanbul ignore if\n if (!isString(configFileRaw)) {\n logger.warn({ configFileName }, 'Null contents when reading config file');\n throw new Error(REPOSITORY_CHANGED);\n }\n // istanbul ignore if\n if (!configFileRaw.length) {\n configFileRaw = '{}';\n }\n\n const parseResult = parseFileConfig(configFileName, configFileRaw);\n\n if (!parseResult.success) {\n return {\n configFileName,\n configFileParseError: {\n validationError: parseResult.validationError,\n validationMessage: parseResult.validationMessage,\n },\n };\n }\n configFileParsed = parseResult.parsedContents;\n logger.debug(\n { fileName: configFileName, config: configFileParsed },\n 'Repository config',\n );\n }\n\n setOnboardingConfigDetails(configFileName, JSON.stringify(configFileParsed));\n return { configFileName, configFileParsed };\n}\n\nexport function checkForRepoConfigError(repoConfig: RepoFileConfig): void {\n if (!repoConfig.configFileParseError) {\n return;\n }\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = repoConfig.configFileName;\n error.validationError = repoConfig.configFileParseError.validationError;\n error.validationMessage = repoConfig.configFileParseError.validationMessage;\n throw error;\n}\n\n// Check for repository config\nexport async function mergeRenovateConfig(\n config: RenovateConfig,\n branchName?: string,\n): Promise<RenovateConfig> {\n let returnConfig = { ...config };\n let repoConfig: RepoFileConfig = {};\n if (config.requireConfig !== 'ignored') {\n repoConfig = await detectRepoFileConfig(branchName);\n }\n if (!repoConfig.configFileParsed && config.mode === 'silent') {\n logger.debug(\n 'When mode=silent and repo has no config file, we use the onboarding config as repo config',\n );\n const configFileName = getDefaultConfigFileName(config);\n repoConfig = {\n configFileName,\n configFileParsed: await getOnboardingConfig(config),\n };\n }\n const configFileParsed = repoConfig?.configFileParsed ?? {};\n const resolvedRepoConfig = await resolveStaticRepoConfig(\n configFileParsed,\n process.env.RENOVATE_X_STATIC_REPO_CONFIG_FILE,\n );\n\n if (isNonEmptyArray(returnConfig.extends)) {\n resolvedRepoConfig.extends = [\n ...returnConfig.extends,\n ...(resolvedRepoConfig.extends ?? []),\n ];\n delete returnConfig.extends;\n }\n checkForRepoConfigError(repoConfig);\n const migratedConfig = await migrateAndValidate(config, resolvedRepoConfig);\n if (migratedConfig.errors?.length) {\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = repoConfig.configFileName;\n error.validationError =\n 'The renovate configuration file contains some invalid settings';\n error.validationMessage = migratedConfig.errors\n .map((e) => e.message)\n .join(', ');\n throw error;\n }\n if (migratedConfig.warnings) {\n returnConfig.warnings = [\n ...(returnConfig.warnings ?? []),\n ...migratedConfig.warnings,\n ];\n }\n delete migratedConfig.errors;\n delete migratedConfig.warnings;\n // TODO #22198\n const repository = config.repository!;\n // Decrypt before resolving in case we need npm authentication for any presets\n const decryptedConfig = await decryptConfig(migratedConfig, repository);\n setNpmTokenInNpmrc(decryptedConfig);\n // istanbul ignore if\n if (isString(decryptedConfig.npmrc)) {\n logger.debug('Found npmrc in decrypted config - setting');\n npmApi.setNpmrc(decryptedConfig.npmrc);\n }\n // Decrypt after resolving in case the preset contains npm authentication instead\n let resolvedConfig = await decryptConfig(\n await presets.resolveConfigPresets(\n decryptedConfig,\n config,\n config.ignorePresets,\n ),\n repository,\n );\n logger.trace({ config: resolvedConfig }, 'resolved config');\n const migrationResult = migrateConfig(resolvedConfig);\n if (migrationResult.isMigrated) {\n logger.debug('Resolved config needs migrating');\n logger.trace({ config: resolvedConfig }, 'resolved config after migrating');\n resolvedConfig = migrationResult.migratedConfig;\n }\n setNpmTokenInNpmrc(resolvedConfig);\n // istanbul ignore if\n if (isString(resolvedConfig.npmrc)) {\n logger.debug(\n 'Ignoring any .npmrc files in repository due to configured npmrc',\n );\n npmApi.setNpmrc(resolvedConfig.npmrc);\n }\n resolvedConfig = applySecretsAndVariablesToConfig({\n config: resolvedConfig,\n secrets: mergeChildConfig(\n config.secrets ?? {},\n resolvedConfig.secrets ?? {},\n ),\n variables: mergeChildConfig(\n config.variables ?? {},\n resolvedConfig.variables ?? {},\n ),\n });\n\n // istanbul ignore if\n if (resolvedConfig.hostRules) {\n logger.debug('Setting hostRules from config');\n for (const rule of resolvedConfig.hostRules) {\n try {\n hostRules.add(rule);\n } catch (err) {\n logger.warn(\n { err, config: rule },\n 'Error setting hostRule from config',\n );\n }\n }\n // host rules can change concurrency\n queue.clear();\n throttle.clear();\n delete resolvedConfig.hostRules;\n }\n returnConfig = mergeChildConfig(returnConfig, resolvedConfig);\n returnConfig = await presets.resolveConfigPresets(returnConfig, config);\n returnConfig.renovateJsonPresent = true;\n // istanbul ignore if\n if (returnConfig.ignorePaths?.length) {\n logger.debug(\n { ignorePaths: returnConfig.ignorePaths },\n `Found repo ignorePaths`,\n );\n }\n\n setUserEnv(returnConfig.env);\n delete returnConfig.env;\n\n return returnConfig;\n}\n\n/** needed when using portal secrets for npmToken */\nexport function setNpmTokenInNpmrc(config: RenovateConfig): void {\n if (!isString(config.npmToken)) {\n return;\n }\n\n const token = config.npmToken;\n logger.debug({ npmToken: maskToken(token) }, 'Migrating npmToken to npmrc');\n\n if (!isString(config.npmrc)) {\n logger.debug('Adding npmrc to config');\n config.npmrc = `//registry.npmjs.org/:_authToken=${token}\\n`;\n delete config.npmToken;\n return;\n }\n\n if (config.npmrc.includes(`\\${NPM_TOKEN}`)) {\n logger.debug(`Replacing \\${NPM_TOKEN} with npmToken`);\n config.npmrc = config.npmrc.replace(regEx(/\\${NPM_TOKEN}/g), token);\n } else {\n logger.debug('Appending _authToken= to end of existing npmrc');\n config.npmrc = config.npmrc.replace(\n regEx(/\\n?$/),\n `\\n_authToken=${token}\\n`,\n );\n }\n\n delete config.npmToken;\n}\n\nexport async function resolveStaticRepoConfig(\n config: AllConfig,\n filename: string | undefined,\n): Promise<AllConfig> {\n if (!isNonEmptyString(filename)) {\n return config;\n }\n\n let staticRepoConfig: AllConfig;\n\n try {\n staticRepoConfig = await tryReadStaticRepoFileConfig(filename);\n } catch (err) {\n logger.fatal({ err }, 'Failed to load static repository config file');\n process.exit(1);\n }\n\n if (!isNonEmptyObject(staticRepoConfig)) {\n return config;\n }\n\n return mergeStaticConfig(config, staticRepoConfig);\n}\n\nexport async function tryReadStaticRepoFileConfig(\n staticRepoConfigFile: string,\n): Promise<AllConfig> {\n logger.debug(`Reading static repo config file from ${staticRepoConfigFile}`);\n\n let staticRepoConfigRaw: string;\n try {\n staticRepoConfigRaw = await readSystemFile(staticRepoConfigFile, 'utf8');\n } catch (err) {\n throw new Error(\n `Failed to read static repo config file: \"${staticRepoConfigFile}\"`,\n { cause: err },\n );\n }\n\n const staticRepoConfig = parseJson(\n staticRepoConfigRaw,\n staticRepoConfigFile,\n ) as AllConfig;\n\n // validate and log issues here to preserve context, caller handles migration and full validation.\n const { errors, warnings } = await configValidation.validateConfig(\n 'repo',\n staticRepoConfig,\n );\n\n if (isNonEmptyArray(errors) || isNonEmptyArray(warnings)) {\n logger.info(\n { errors, warnings },\n 'Static repo config validation issues detected',\n );\n } else {\n logger.debug(\n { staticRepoConfig },\n 'Static repository config file successfully parsed and validated',\n );\n }\n\n return staticRepoConfig;\n}\n\nexport function mergeStaticConfig(\n config: AllConfig,\n staticRepoConfig: AllConfig,\n): AllConfig {\n // merge extends\n if (isNonEmptyArray(staticRepoConfig.extends)) {\n config.extends = [...staticRepoConfig.extends, ...(config.extends ?? [])];\n delete staticRepoConfig.extends;\n }\n\n // renovate repo config overrides RENOVATE_STATIC_REPO_CONFIG[_FILE]\n return mergeChildConfig(staticRepoConfig, config);\n}\n"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CommitMessage = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
/**
|
|
7
6
|
* @see https://git-scm.com/docs/git-commit#_discussion
|
|
8
7
|
*
|
|
@@ -38,7 +37,7 @@ class CommitMessage {
|
|
|
38
37
|
this._body,
|
|
39
38
|
this._footer,
|
|
40
39
|
];
|
|
41
|
-
return parts.filter(is_1.
|
|
40
|
+
return parts.filter(is_1.isNonEmptyStringAndNotWhitespace).join('\n\n');
|
|
42
41
|
}
|
|
43
42
|
get title() {
|
|
44
43
|
return [CommitMessage.formatPrefix(this.prefix), this.formatSubject()]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commit-message.js","sourceRoot":"","sources":["../../../../lib/workers/repository/model/commit-message.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"commit-message.js","sourceRoot":"","sources":["../../../../lib/workers/repository/model/commit-message.ts"],"names":[],"mappings":";;;AAAA,yCAAoE;AAGpE;;;;;;GAMG;AACH,MAAsB,aAAa;IACzB,MAAM,CAAU,SAAS,GAAW,GAAG,CAAC;IACxC,MAAM,CAAU,iBAAiB,GAAG,MAAM,CAAC;IAE3C,KAAK,GAAG,EAAE,CAAC;IACX,OAAO,GAAG,EAAE,CAAC;IACb,QAAQ,GAAG,EAAE,CAAC;IAEtB,MAAM,CAAC,YAAY,CAAC,MAAc;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO,GAAG,MAAM,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,OAAO,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,MAAM,KAAK,GAAoC;YAC7C,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,OAAO;SACb,CAAC;QAEF,OAAO,KAAK,CAAC,MAAM,CAAC,qCAAgC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,KAAK;QACP,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;aACnE,IAAI,CAAC,GAAG,CAAC;aACT,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,IAAI,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,MAAM,CAAC,KAAa;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,OAAO,CAAC,KAAa;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CACpC,aAAa,CAAC,iBAAiB,EAC/B,GAAG,CACJ,CAAC;IACJ,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IAIS,cAAc,CAAC,KAAgC;QACvD,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC7B,CAAC;;AA5EH,sCA6EC","sourcesContent":["import { isNonEmptyStringAndNotWhitespace } from '@sindresorhus/is';\nimport type { CommitMessageJSON } from '../../../types';\n\n/**\n * @see https://git-scm.com/docs/git-commit#_discussion\n *\n * [optional prefix]: <suject>\n * [optional body]\n * [optional footer]\n */\nexport abstract class CommitMessage {\n private static readonly SEPARATOR: string = ':';\n private static readonly EXTRA_WHITESPACES = /\\s+/g;\n\n private _body = '';\n private _footer = '';\n private _subject = '';\n\n static formatPrefix(prefix: string): string {\n if (!prefix) {\n return '';\n }\n\n if (prefix.endsWith(CommitMessage.SEPARATOR)) {\n return prefix;\n }\n\n return `${prefix}${CommitMessage.SEPARATOR}`;\n }\n\n toJSON(): CommitMessageJSON {\n return {\n body: this._body,\n footer: this._footer,\n subject: this._subject,\n };\n }\n\n toString(): string {\n const parts: readonly (string | undefined)[] = [\n this.title,\n this._body,\n this._footer,\n ];\n\n return parts.filter(isNonEmptyStringAndNotWhitespace).join('\\n\\n');\n }\n\n get title(): string {\n return [CommitMessage.formatPrefix(this.prefix), this.formatSubject()]\n .join(' ')\n .trim();\n }\n\n set body(value: string) {\n this._body = this.normalizeInput(value);\n }\n\n set footer(value: string) {\n this._footer = this.normalizeInput(value);\n }\n\n set subject(value: string) {\n this._subject = this.normalizeInput(value);\n this._subject = this._subject?.replace(\n CommitMessage.EXTRA_WHITESPACES,\n ' ',\n );\n }\n\n formatSubject(): string {\n if (!this._subject) {\n return '';\n }\n\n if (this.prefix) {\n return this._subject.charAt(0).toLowerCase() + this._subject.slice(1);\n }\n\n return this._subject.charAt(0).toUpperCase() + this._subject.slice(1);\n }\n\n protected abstract get prefix(): string;\n\n protected normalizeInput(value: string | null | undefined): string {\n return value?.trim() ?? '';\n }\n}\n"]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isOnboarded = isOnboarded;
|
|
4
4
|
exports.getOnboardingPr = getOnboardingPr;
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
5
6
|
const app_strings_1 = require("../../../../config/app-strings");
|
|
6
7
|
const error_messages_1 = require("../../../../constants/error-messages");
|
|
7
8
|
const logger_1 = require("../../../../logger");
|
|
@@ -82,7 +83,7 @@ async function isOnboarded(config) {
|
|
|
82
83
|
// if closed pr exists then presence of onboarding cache doesn't matter as we need to skip onboarding
|
|
83
84
|
if (config.onboarding &&
|
|
84
85
|
!closedOnboardingPr &&
|
|
85
|
-
onboardingBranchCache &&
|
|
86
|
+
(0, is_1.isNonEmptyObject)(onboardingBranchCache) &&
|
|
86
87
|
onboardingBranchCache.defaultBranchSha ===
|
|
87
88
|
(0, git_1.getBranchCommit)(config.defaultBranch)) {
|
|
88
89
|
logger_1.logger.debug('Onboarding cache is valid. Repo is not onboarded');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/branch/check.ts"],"names":[],"mappings":";;AA8DA,kCAwGC;AAED,0CAOC;AA/KD,gEAAoE;AAEpE,yEAG8C;AAC9C,+CAA4C;AAE5C,2DAAwD;AACxD,kEAAqE;AACrE,0DAAuD;AACvD,kEAA6D;AAC7D,4CAAoD;AACpD,8CAAuD;AACvD,sCAAqD;AAErD,KAAK,UAAU,QAAQ,CAAC,QAAgB;IACtC,eAAM,CAAC,KAAK,CAAC,YAAY,QAAQ,GAAG,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,MAAM,SAAG,CAAC,WAAW,EAAE,CAAC;IACzC,OAAO,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC7B,KAAK,MAAM,QAAQ,IAAI,IAAA,gCAAkB,GAAE,EAAE,CAAC;QAC5C,IAAI,QAAQ,KAAK,cAAc,IAAI,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC9D,eAAM,CAAC,KAAK,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,uBAAuB;IACpC,IAAI,CAAC;QACH,cAAc;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,IAAA,kBAAa,EAAC,cAAc,EAAE,MAAM,CAAC,CAAE,CAAC,CAAC;QACzE,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,aAAa;IACf,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,MAAsB;IAClD,OAAO,CACL,CAAC,MAAM,mBAAQ,CAAC,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC,gBAAiB;QACpC,OAAO,EAAE,MAAM,CAAC,iBAAiB;QACjC,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,MAAM,CAAC,UAAU;KAChC,CAAC,CAAC;QACH,CAAC,MAAM,mBAAQ,CAAC,MAAM,CAAC;YACrB,UAAU,EAAE,MAAM,CAAC,gBAAiB;YACpC,OAAO,EAAE,IAAA,iCAAwB,EAAC,MAAM,CAAC;YACzC,KAAK,EAAE,OAAO;YACd,YAAY,EAAE,MAAM,CAAC,UAAU;SAChC,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,WAAW,CAAC,MAAsB;IACtD,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,wCAAwC,CAAC;IAEvD,sCAAsC;IACtC,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,eAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oFAAoF;IACpF,sBAAsB;IACtB,6CAA6C;IAC7C,wCAAwC;IACxC,8EAA8E;IAC9E,kEAAkE;IAClE,IAAI,MAAM,CAAC,aAAa,KAAK,UAAU,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QACvE,mDAAmD;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACvC,eAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,IAAA,qBAAQ,GAAE,CAAC;IACzB,MAAM,qBAAqB,GAAG,KAAK,EAAE,qBAAqB,CAAC;IAC3D,+FAA+F;IAC/F,qGAAqG;IACrG,IACE,MAAM,CAAC,UAAU;QACjB,CAAC,kBAAkB;QACnB,qBAAqB;QACrB,qBAAqB,CAAC,gBAAgB;YACpC,IAAA,qBAAe,EAAC,MAAM,CAAC,aAAc,CAAC,EACxC,CAAC;QACD,eAAM,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gJAAgJ;IAChJ,qEAAqE;IACrE,IAAI,KAAK,CAAC,cAAc,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAC9C,eAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACjD,IAAI,CAAC;YACH,MAAM,iBAAiB,GAAG,MAAM,mBAAQ,CAAC,WAAW,CAClD,KAAK,CAAC,cAAc,CACrB,CAAC;YACF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,IACE,KAAK,CAAC,cAAc,KAAK,cAAc;oBACvC,iBAAiB,CAAC,QAAQ,EAC1B,CAAC;oBACD,eAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;oBAC/C,eAAM,CAAC,KAAK,CACV,EAAE,QAAQ,EAAE,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAC7D,mBAAmB,CACpB,CAAC;oBACF,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QACD,eAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC,cAAc,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,gBAAgB,EAAE,EAAE,CAAC;QAC7B,MAAM,mBAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,eAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACtC,IAAI,MAAM,uBAAuB,EAAE,EAAE,CAAC;QACpC,eAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC7C,MAAM,mBAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yEAAyE;IACzE,wCAAwC;IACxC,IAAI,MAAM,CAAC,aAAa,KAAK,UAAU,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,qCAAoB,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,eAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,eAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC3C,IAAI,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;QACxC,eAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,eAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,qBAAsB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC/D,oBAAoB;QACpB,MAAM,IAAA,uBAAa,EAAC;YAClB,MAAM,EAAE,kBAAkB,CAAC,MAAM;YACjC,KAAK,EAAE,sBAAsB;YAC7B,OAAO,EAAE,kRAAkR;SAC5R,CAAC,CAAC;IACL,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6CAA4B,CAAC,CAAC;AAChD,CAAC;AAEM,KAAK,UAAU,eAAe,CACnC,MAAsB;IAEtB,OAAO,MAAM,mBAAQ,CAAC,WAAW,CAC/B,MAAM,CAAC,gBAAiB,EACxB,MAAM,CAAC,UAAU,CAClB,CAAC;AACJ,CAAC","sourcesContent":["import { getConfigFileNames } from '../../../../config/app-strings';\nimport type { RenovateConfig } from '../../../../config/types';\nimport {\n REPOSITORY_CLOSED_ONBOARDING,\n REPOSITORY_NO_CONFIG,\n} from '../../../../constants/error-messages';\nimport { logger } from '../../../../logger';\nimport type { Pr } from '../../../../modules/platform';\nimport { platform } from '../../../../modules/platform';\nimport { ensureComment } from '../../../../modules/platform/comment';\nimport { scm } from '../../../../modules/platform/scm';\nimport { getCache } from '../../../../util/cache/repository';\nimport { readLocalFile } from '../../../../util/fs';\nimport { getBranchCommit } from '../../../../util/git';\nimport { getSemanticCommitPrTitle } from '../common';\n\nasync function findFile(fileName: string): Promise<boolean> {\n logger.debug(`findFile(${fileName})`);\n const fileList = await scm.getFileList();\n return fileList.includes(fileName);\n}\n\nasync function configFileExists(): Promise<boolean> {\n for (const fileName of getConfigFileNames()) {\n if (fileName !== 'package.json' && (await findFile(fileName))) {\n logger.debug(`Config file exists, fileName: ${fileName}`);\n return true;\n }\n }\n return false;\n}\n\nasync function packageJsonConfigExists(): Promise<boolean> {\n try {\n // TODO #22198\n const pJson = JSON.parse((await readLocalFile('package.json', 'utf8'))!);\n if (pJson.renovate) {\n return true;\n }\n } catch {\n // Do nothing\n }\n return false;\n}\n\nasync function closedPrExists(config: RenovateConfig): Promise<Pr | null> {\n return (\n (await platform.findPr({\n branchName: config.onboardingBranch!,\n prTitle: config.onboardingPrTitle,\n state: '!open',\n targetBranch: config.baseBranch,\n })) ??\n (await platform.findPr({\n branchName: config.onboardingBranch!,\n prTitle: getSemanticCommitPrTitle(config),\n state: '!open',\n targetBranch: config.baseBranch,\n }))\n );\n}\n\nexport async function isOnboarded(config: RenovateConfig): Promise<boolean> {\n logger.debug('isOnboarded()');\n const title = `Action required: Add a Renovate config`;\n\n // Repo is onboarded if in silent mode\n if (config.mode === 'silent') {\n logger.debug('Silent mode enabled so repo is considered onboarded');\n return true;\n }\n\n // Repo is onboarded if global config is bypassing onboarding and does not require a\n // configuration file.\n // The repo is considered \"not onboarded\" if:\n // - An onboarding cache is present, and\n // - The current default branch SHA matches the default SHA found in the cache\n // Also if there is a closed pr skip using cache as it is outdated\n if (config.requireConfig === 'optional' && config.onboarding === false) {\n // Return early and avoid checking for config files\n return true;\n }\n if (config.requireConfig === 'ignored') {\n logger.debug('Config file will be ignored');\n return true;\n }\n\n const closedOnboardingPr = await closedPrExists(config);\n const cache = getCache();\n const onboardingBranchCache = cache?.onboardingBranchCache;\n // if onboarding cache is present and base branch has not been updated; branch is not onboarded\n // if closed pr exists then presence of onboarding cache doesn't matter as we need to skip onboarding\n if (\n config.onboarding &&\n !closedOnboardingPr &&\n onboardingBranchCache &&\n onboardingBranchCache.defaultBranchSha ===\n getBranchCommit(config.defaultBranch!)\n ) {\n logger.debug('Onboarding cache is valid. Repo is not onboarded');\n return false;\n }\n\n // when bot is ran is fork mode ... do not fetch file using api call instead use the git.fileList so we get sync first and get the latest config\n // prevents https://github.com/renovatebot/renovate/discussions/37328\n if (cache.configFileName && !config.forkToken) {\n logger.debug('Checking cached config file name');\n try {\n const configFileContent = await platform.getJsonFile(\n cache.configFileName,\n );\n if (configFileContent) {\n if (\n cache.configFileName !== 'package.json' ||\n configFileContent.renovate\n ) {\n logger.debug('Existing config file confirmed');\n logger.debug(\n { fileName: cache.configFileName, config: configFileContent },\n 'Repository config',\n );\n return true;\n }\n }\n } catch {\n // probably file doesn't exist\n }\n logger.debug('Existing config file no longer exists');\n delete cache.configFileName;\n }\n if (await configFileExists()) {\n await platform.ensureIssueClosing(title);\n return true;\n }\n logger.debug('config file not found');\n if (await packageJsonConfigExists()) {\n logger.debug('package.json contains config');\n await platform.ensureIssueClosing(title);\n return true;\n }\n\n // If onboarding has been disabled and config files are required then the\n // repository has not been onboarded yet\n if (config.requireConfig === 'required' && config.onboarding === false) {\n throw new Error(REPOSITORY_NO_CONFIG);\n }\n\n if (!closedOnboardingPr) {\n logger.debug('Found no closed onboarding PR');\n return false;\n }\n logger.debug('Found closed onboarding PR');\n if (config.requireConfig === 'optional') {\n logger.debug('Config not mandatory so repo is considered onboarded');\n return true;\n }\n logger.debug('Repo is not onboarded and no merged PRs exist');\n if (!config.suppressNotifications!.includes('onboardingClose')) {\n // ensure PR comment\n await ensureComment({\n number: closedOnboardingPr.number,\n topic: `Renovate is disabled`,\n content: `Renovate is disabled because there is no Renovate configuration file. To enable Renovate, you can either (a) change this PR's title to get a new onboarding PR, and merge the new onboarding PR, or (b) create a Renovate config file, and commit that file to your base branch.`,\n });\n }\n throw new Error(REPOSITORY_CLOSED_ONBOARDING);\n}\n\nexport async function getOnboardingPr(\n config: RenovateConfig,\n): Promise<Pr | null> {\n return await platform.getBranchPr(\n config.onboardingBranch!,\n config.baseBranch,\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/branch/check.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyObject } from '@sindresorhus/is';\nimport { getConfigFileNames } from '../../../../config/app-strings';\nimport type { RenovateConfig } from '../../../../config/types';\nimport {\n REPOSITORY_CLOSED_ONBOARDING,\n REPOSITORY_NO_CONFIG,\n} from '../../../../constants/error-messages';\nimport { logger } from '../../../../logger';\nimport type { Pr } from '../../../../modules/platform';\nimport { platform } from '../../../../modules/platform';\nimport { ensureComment } from '../../../../modules/platform/comment';\nimport { scm } from '../../../../modules/platform/scm';\nimport { getCache } from '../../../../util/cache/repository';\nimport { readLocalFile } from '../../../../util/fs';\nimport { getBranchCommit } from '../../../../util/git';\nimport { getSemanticCommitPrTitle } from '../common';\n\nasync function findFile(fileName: string): Promise<boolean> {\n logger.debug(`findFile(${fileName})`);\n const fileList = await scm.getFileList();\n return fileList.includes(fileName);\n}\n\nasync function configFileExists(): Promise<boolean> {\n for (const fileName of getConfigFileNames()) {\n if (fileName !== 'package.json' && (await findFile(fileName))) {\n logger.debug(`Config file exists, fileName: ${fileName}`);\n return true;\n }\n }\n return false;\n}\n\nasync function packageJsonConfigExists(): Promise<boolean> {\n try {\n // TODO #22198\n const pJson = JSON.parse((await readLocalFile('package.json', 'utf8'))!);\n if (pJson.renovate) {\n return true;\n }\n } catch {\n // Do nothing\n }\n return false;\n}\n\nasync function closedPrExists(config: RenovateConfig): Promise<Pr | null> {\n return (\n (await platform.findPr({\n branchName: config.onboardingBranch!,\n prTitle: config.onboardingPrTitle,\n state: '!open',\n targetBranch: config.baseBranch,\n })) ??\n (await platform.findPr({\n branchName: config.onboardingBranch!,\n prTitle: getSemanticCommitPrTitle(config),\n state: '!open',\n targetBranch: config.baseBranch,\n }))\n );\n}\n\nexport async function isOnboarded(config: RenovateConfig): Promise<boolean> {\n logger.debug('isOnboarded()');\n const title = `Action required: Add a Renovate config`;\n\n // Repo is onboarded if in silent mode\n if (config.mode === 'silent') {\n logger.debug('Silent mode enabled so repo is considered onboarded');\n return true;\n }\n\n // Repo is onboarded if global config is bypassing onboarding and does not require a\n // configuration file.\n // The repo is considered \"not onboarded\" if:\n // - An onboarding cache is present, and\n // - The current default branch SHA matches the default SHA found in the cache\n // Also if there is a closed pr skip using cache as it is outdated\n if (config.requireConfig === 'optional' && config.onboarding === false) {\n // Return early and avoid checking for config files\n return true;\n }\n if (config.requireConfig === 'ignored') {\n logger.debug('Config file will be ignored');\n return true;\n }\n\n const closedOnboardingPr = await closedPrExists(config);\n const cache = getCache();\n const onboardingBranchCache = cache?.onboardingBranchCache;\n // if onboarding cache is present and base branch has not been updated; branch is not onboarded\n // if closed pr exists then presence of onboarding cache doesn't matter as we need to skip onboarding\n if (\n config.onboarding &&\n !closedOnboardingPr &&\n isNonEmptyObject(onboardingBranchCache) &&\n onboardingBranchCache.defaultBranchSha ===\n getBranchCommit(config.defaultBranch!)\n ) {\n logger.debug('Onboarding cache is valid. Repo is not onboarded');\n return false;\n }\n\n // when bot is ran is fork mode ... do not fetch file using api call instead use the git.fileList so we get sync first and get the latest config\n // prevents https://github.com/renovatebot/renovate/discussions/37328\n if (cache.configFileName && !config.forkToken) {\n logger.debug('Checking cached config file name');\n try {\n const configFileContent = await platform.getJsonFile(\n cache.configFileName,\n );\n if (configFileContent) {\n if (\n cache.configFileName !== 'package.json' ||\n configFileContent.renovate\n ) {\n logger.debug('Existing config file confirmed');\n logger.debug(\n { fileName: cache.configFileName, config: configFileContent },\n 'Repository config',\n );\n return true;\n }\n }\n } catch {\n // probably file doesn't exist\n }\n logger.debug('Existing config file no longer exists');\n delete cache.configFileName;\n }\n if (await configFileExists()) {\n await platform.ensureIssueClosing(title);\n return true;\n }\n logger.debug('config file not found');\n if (await packageJsonConfigExists()) {\n logger.debug('package.json contains config');\n await platform.ensureIssueClosing(title);\n return true;\n }\n\n // If onboarding has been disabled and config files are required then the\n // repository has not been onboarded yet\n if (config.requireConfig === 'required' && config.onboarding === false) {\n throw new Error(REPOSITORY_NO_CONFIG);\n }\n\n if (!closedOnboardingPr) {\n logger.debug('Found no closed onboarding PR');\n return false;\n }\n logger.debug('Found closed onboarding PR');\n if (config.requireConfig === 'optional') {\n logger.debug('Config not mandatory so repo is considered onboarded');\n return true;\n }\n logger.debug('Repo is not onboarded and no merged PRs exist');\n if (!config.suppressNotifications!.includes('onboardingClose')) {\n // ensure PR comment\n await ensureComment({\n number: closedOnboardingPr.number,\n topic: `Renovate is disabled`,\n content: `Renovate is disabled because there is no Renovate configuration file. To enable Renovate, you can either (a) change this PR's title to get a new onboarding PR, and merge the new onboarding PR, or (b) create a Renovate config file, and commit that file to your base branch.`,\n });\n }\n throw new Error(REPOSITORY_CLOSED_ONBOARDING);\n}\n\nexport async function getOnboardingPr(\n config: RenovateConfig,\n): Promise<Pr | null> {\n return await platform.getBranchPr(\n config.onboardingBranch!,\n config.baseBranch,\n );\n}\n"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.checkOnboardingBranch = checkOnboardingBranch;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const config_1 = require("../../../../config");
|
|
7
6
|
const global_1 = require("../../../../config/global");
|
|
8
7
|
const error_messages_1 = require("../../../../constants/error-messages");
|
|
@@ -112,7 +111,7 @@ function handleOnboardingManualRebase(onboardingPr) {
|
|
|
112
111
|
logger_1.logger.trace(`Platform '${pl}' does not support extended markdown`);
|
|
113
112
|
common_1.OnboardingState.prUpdateRequested = true;
|
|
114
113
|
}
|
|
115
|
-
else if (is_1.
|
|
114
|
+
else if ((0, is_1.isNullOrUndefined)(rebaseRequested)) {
|
|
116
115
|
logger_1.logger.debug('No rebase checkbox was found in the onboarding PR');
|
|
117
116
|
common_1.OnboardingState.prUpdateRequested = true;
|
|
118
117
|
}
|
|
@@ -131,7 +130,7 @@ function invalidateExtractCache(baseBranch) {
|
|
|
131
130
|
function isOnboardingCacheValid(defaultBranch, onboardingBranch) {
|
|
132
131
|
const cache = (0, repository_1.getCache)();
|
|
133
132
|
const onboardingBranchCache = cache?.onboardingBranchCache;
|
|
134
|
-
return !!(onboardingBranchCache &&
|
|
133
|
+
return !!((0, is_1.isNonEmptyObject)(onboardingBranchCache) &&
|
|
135
134
|
onboardingBranchCache.defaultBranchSha === (0, git_1.getBranchCommit)(defaultBranch) &&
|
|
136
135
|
onboardingBranchCache.onboardingBranchSha ===
|
|
137
136
|
(0, git_1.getBranchCommit)(onboardingBranch) &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/branch/index.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { mergeChildConfig } from '../../../../config';\nimport { GlobalConfig } from '../../../../config/global';\nimport type { RenovateConfig } from '../../../../config/types';\nimport { REPOSITORY_NO_PACKAGE_FILES } from '../../../../constants/error-messages';\nimport { logger } from '../../../../logger';\nimport { type Pr, platform } from '../../../../modules/platform';\nimport { scm } from '../../../../modules/platform/scm';\nimport { getCache } from '../../../../util/cache/repository';\nimport { getBranchCommit, setGitAuthor } from '../../../../util/git';\nimport { checkIfConfigured } from '../../configured';\nimport { extractAllDependencies } from '../../extract';\nimport { mergeRenovateConfig } from '../../init/merge';\nimport { OnboardingState } from '../common';\nimport { getOnboardingPr, isOnboarded } from './check';\nimport { getOnboardingConfig } from './config';\nimport { createOnboardingBranch } from './create';\nimport {\n deleteOnboardingCache,\n hasOnboardingBranchChanged,\n isOnboardingBranchConflicted,\n isOnboardingBranchModified,\n setOnboardingCache,\n} from './onboarding-branch-cache';\nimport { rebaseOnboardingBranch } from './rebase';\n\nexport async function checkOnboardingBranch(\n config: RenovateConfig,\n): Promise<RenovateConfig> {\n logger.debug('checkOnboarding()');\n logger.trace({ config });\n let onboardingBranch = config.onboardingBranch;\n const defaultBranch = config.defaultBranch!;\n let isConflicted = false;\n let isModified = false;\n const repoIsOnboarded = await isOnboarded(config);\n if (repoIsOnboarded) {\n logger.debug('Repo is onboarded');\n\n // delete onboarding cache\n deleteOnboardingCache();\n return { ...config, repoIsOnboarded };\n }\n checkIfConfigured(config);\n\n logger.debug('Repo is not onboarded');\n // global gitAuthor will need to be used\n setGitAuthor(config.gitAuthor);\n const onboardingPr = await getOnboardingPr(config);\n // TODO #22198\n const branchList = [onboardingBranch!];\n if (onboardingPr) {\n logger.debug('Onboarding PR already exists');\n\n isModified = await isOnboardingBranchModified(\n config.onboardingBranch!,\n defaultBranch,\n );\n // if onboarding branch is not modified, check if onboarding config has been changed and rebase if true\n if (!isModified) {\n const commit = await rebaseOnboardingBranch(\n config,\n onboardingPr.bodyStruct?.rawConfigHash,\n );\n if (commit) {\n logger.info(\n { branch: config.onboardingBranch, commit, onboarding: true },\n 'Branch updated',\n );\n }\n // istanbul ignore if\n if (platform.refreshPr) {\n await platform.refreshPr(onboardingPr.number);\n }\n }\n if (config.onboardingRebaseCheckbox) {\n handleOnboardingManualRebase(onboardingPr);\n }\n\n if (\n isConfigHashPresent(onboardingPr) && // needed so that existing onboarding PRs are updated with config hash comment\n isOnboardingCacheValid(defaultBranch, config.onboardingBranch!) &&\n !(config.onboardingRebaseCheckbox && OnboardingState.prUpdateRequested)\n ) {\n logger.debug(\n 'Skip processing since the onboarding branch is up to date and default branch has not changed',\n );\n OnboardingState.onboardingCacheValid = true;\n return { ...config, repoIsOnboarded, onboardingBranch, branchList };\n }\n OnboardingState.onboardingCacheValid = false;\n if (isModified) {\n if (hasOnboardingBranchChanged(config.onboardingBranch!)) {\n invalidateExtractCache(config.baseBranch!);\n }\n isConflicted = await isOnboardingBranchConflicted(\n config.baseBranch!,\n config.onboardingBranch!,\n );\n }\n } else {\n logger.debug('Onboarding PR does not exist');\n const onboardingConfig = await getOnboardingConfig(config);\n let mergedConfig = mergeChildConfig(config, onboardingConfig);\n mergedConfig = await mergeRenovateConfig(mergedConfig);\n onboardingBranch = mergedConfig.onboardingBranch;\n\n if (\n Object.entries((await extractAllDependencies(mergedConfig)).packageFiles)\n .length === 0\n ) {\n if (config.onboardingNoDeps !== 'enabled') {\n throw new Error(REPOSITORY_NO_PACKAGE_FILES);\n }\n }\n logger.debug('Need to create onboarding PR');\n if (config.onboardingRebaseCheckbox) {\n OnboardingState.prUpdateRequested = true;\n }\n const commit = await createOnboardingBranch(mergedConfig);\n // istanbul ignore if\n if (commit) {\n logger.info(\n { branch: onboardingBranch, commit, onboarding: true },\n 'Branch created',\n );\n }\n }\n if (!GlobalConfig.get('dryRun')) {\n // TODO #22198\n if (!isConflicted) {\n logger.debug('Merge onboarding branch in default branch');\n await scm.mergeToLocal(onboardingBranch!);\n }\n }\n setOnboardingCache(\n getBranchCommit(config.defaultBranch!)!,\n getBranchCommit(onboardingBranch!)!,\n isConflicted,\n isModified,\n );\n\n return { ...config, repoIsOnboarded, onboardingBranch, branchList };\n}\n\nfunction handleOnboardingManualRebase(onboardingPr: Pr): void {\n const pl = GlobalConfig.get('platform')!;\n const { rebaseRequested } = onboardingPr.bodyStruct ?? {};\n if (!['github', 'gitlab', 'gitea'].includes(pl)) {\n logger.trace(`Platform '${pl}' does not support extended markdown`);\n OnboardingState.prUpdateRequested = true;\n } else if (is.nullOrUndefined(rebaseRequested)) {\n logger.debug('No rebase checkbox was found in the onboarding PR');\n OnboardingState.prUpdateRequested = true;\n } else if (rebaseRequested) {\n logger.debug('Manual onboarding PR update requested');\n OnboardingState.prUpdateRequested = true;\n }\n}\n\nfunction invalidateExtractCache(baseBranch: string): void {\n const cache = getCache();\n cache.scan ??= {};\n\n if (cache.scan?.[baseBranch]) {\n delete cache.scan[baseBranch];\n }\n}\n\nfunction isOnboardingCacheValid(\n defaultBranch: string,\n onboardingBranch: string,\n): boolean {\n const cache = getCache();\n const onboardingBranchCache = cache?.onboardingBranchCache;\n return !!(\n onboardingBranchCache &&\n onboardingBranchCache.defaultBranchSha === getBranchCommit(defaultBranch) &&\n onboardingBranchCache.onboardingBranchSha ===\n getBranchCommit(onboardingBranch) &&\n onboardingBranchCache.configFileName &&\n onboardingBranchCache.configFileParsed\n );\n}\n\nfunction isConfigHashPresent(pr: Pr): boolean {\n const platform = GlobalConfig.get('platform')!;\n // if platform does not support html comments return true\n if (!['github', 'gitlab', 'gitea'].includes(platform)) {\n return true;\n }\n\n return !!pr.bodyStruct?.rawConfigHash;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/branch/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyObject, isNullOrUndefined } from '@sindresorhus/is';\nimport { mergeChildConfig } from '../../../../config';\nimport { GlobalConfig } from '../../../../config/global';\nimport type { RenovateConfig } from '../../../../config/types';\nimport { REPOSITORY_NO_PACKAGE_FILES } from '../../../../constants/error-messages';\nimport { logger } from '../../../../logger';\nimport { type Pr, platform } from '../../../../modules/platform';\nimport { scm } from '../../../../modules/platform/scm';\nimport { getCache } from '../../../../util/cache/repository';\nimport { getBranchCommit, setGitAuthor } from '../../../../util/git';\nimport { checkIfConfigured } from '../../configured';\nimport { extractAllDependencies } from '../../extract';\nimport { mergeRenovateConfig } from '../../init/merge';\nimport { OnboardingState } from '../common';\nimport { getOnboardingPr, isOnboarded } from './check';\nimport { getOnboardingConfig } from './config';\nimport { createOnboardingBranch } from './create';\nimport {\n deleteOnboardingCache,\n hasOnboardingBranchChanged,\n isOnboardingBranchConflicted,\n isOnboardingBranchModified,\n setOnboardingCache,\n} from './onboarding-branch-cache';\nimport { rebaseOnboardingBranch } from './rebase';\n\nexport async function checkOnboardingBranch(\n config: RenovateConfig,\n): Promise<RenovateConfig> {\n logger.debug('checkOnboarding()');\n logger.trace({ config });\n let onboardingBranch = config.onboardingBranch;\n const defaultBranch = config.defaultBranch!;\n let isConflicted = false;\n let isModified = false;\n const repoIsOnboarded = await isOnboarded(config);\n if (repoIsOnboarded) {\n logger.debug('Repo is onboarded');\n\n // delete onboarding cache\n deleteOnboardingCache();\n return { ...config, repoIsOnboarded };\n }\n checkIfConfigured(config);\n\n logger.debug('Repo is not onboarded');\n // global gitAuthor will need to be used\n setGitAuthor(config.gitAuthor);\n const onboardingPr = await getOnboardingPr(config);\n // TODO #22198\n const branchList = [onboardingBranch!];\n if (onboardingPr) {\n logger.debug('Onboarding PR already exists');\n\n isModified = await isOnboardingBranchModified(\n config.onboardingBranch!,\n defaultBranch,\n );\n // if onboarding branch is not modified, check if onboarding config has been changed and rebase if true\n if (!isModified) {\n const commit = await rebaseOnboardingBranch(\n config,\n onboardingPr.bodyStruct?.rawConfigHash,\n );\n if (commit) {\n logger.info(\n { branch: config.onboardingBranch, commit, onboarding: true },\n 'Branch updated',\n );\n }\n // istanbul ignore if\n if (platform.refreshPr) {\n await platform.refreshPr(onboardingPr.number);\n }\n }\n if (config.onboardingRebaseCheckbox) {\n handleOnboardingManualRebase(onboardingPr);\n }\n\n if (\n isConfigHashPresent(onboardingPr) && // needed so that existing onboarding PRs are updated with config hash comment\n isOnboardingCacheValid(defaultBranch, config.onboardingBranch!) &&\n !(config.onboardingRebaseCheckbox && OnboardingState.prUpdateRequested)\n ) {\n logger.debug(\n 'Skip processing since the onboarding branch is up to date and default branch has not changed',\n );\n OnboardingState.onboardingCacheValid = true;\n return { ...config, repoIsOnboarded, onboardingBranch, branchList };\n }\n OnboardingState.onboardingCacheValid = false;\n if (isModified) {\n if (hasOnboardingBranchChanged(config.onboardingBranch!)) {\n invalidateExtractCache(config.baseBranch!);\n }\n isConflicted = await isOnboardingBranchConflicted(\n config.baseBranch!,\n config.onboardingBranch!,\n );\n }\n } else {\n logger.debug('Onboarding PR does not exist');\n const onboardingConfig = await getOnboardingConfig(config);\n let mergedConfig = mergeChildConfig(config, onboardingConfig);\n mergedConfig = await mergeRenovateConfig(mergedConfig);\n onboardingBranch = mergedConfig.onboardingBranch;\n\n if (\n Object.entries((await extractAllDependencies(mergedConfig)).packageFiles)\n .length === 0\n ) {\n if (config.onboardingNoDeps !== 'enabled') {\n throw new Error(REPOSITORY_NO_PACKAGE_FILES);\n }\n }\n logger.debug('Need to create onboarding PR');\n if (config.onboardingRebaseCheckbox) {\n OnboardingState.prUpdateRequested = true;\n }\n const commit = await createOnboardingBranch(mergedConfig);\n // istanbul ignore if\n if (commit) {\n logger.info(\n { branch: onboardingBranch, commit, onboarding: true },\n 'Branch created',\n );\n }\n }\n if (!GlobalConfig.get('dryRun')) {\n // TODO #22198\n if (!isConflicted) {\n logger.debug('Merge onboarding branch in default branch');\n await scm.mergeToLocal(onboardingBranch!);\n }\n }\n setOnboardingCache(\n getBranchCommit(config.defaultBranch!)!,\n getBranchCommit(onboardingBranch!)!,\n isConflicted,\n isModified,\n );\n\n return { ...config, repoIsOnboarded, onboardingBranch, branchList };\n}\n\nfunction handleOnboardingManualRebase(onboardingPr: Pr): void {\n const pl = GlobalConfig.get('platform')!;\n const { rebaseRequested } = onboardingPr.bodyStruct ?? {};\n if (!['github', 'gitlab', 'gitea'].includes(pl)) {\n logger.trace(`Platform '${pl}' does not support extended markdown`);\n OnboardingState.prUpdateRequested = true;\n } else if (isNullOrUndefined(rebaseRequested)) {\n logger.debug('No rebase checkbox was found in the onboarding PR');\n OnboardingState.prUpdateRequested = true;\n } else if (rebaseRequested) {\n logger.debug('Manual onboarding PR update requested');\n OnboardingState.prUpdateRequested = true;\n }\n}\n\nfunction invalidateExtractCache(baseBranch: string): void {\n const cache = getCache();\n cache.scan ??= {};\n\n if (cache.scan?.[baseBranch]) {\n delete cache.scan[baseBranch];\n }\n}\n\nfunction isOnboardingCacheValid(\n defaultBranch: string,\n onboardingBranch: string,\n): boolean {\n const cache = getCache();\n const onboardingBranchCache = cache?.onboardingBranchCache;\n return !!(\n isNonEmptyObject(onboardingBranchCache) &&\n onboardingBranchCache.defaultBranchSha === getBranchCommit(defaultBranch) &&\n onboardingBranchCache.onboardingBranchSha ===\n getBranchCommit(onboardingBranch) &&\n onboardingBranchCache.configFileName &&\n onboardingBranchCache.configFileParsed\n );\n}\n\nfunction isConfigHashPresent(pr: Pr): boolean {\n const platform = GlobalConfig.get('platform')!;\n // if platform does not support html comments return true\n if (!['github', 'gitlab', 'gitea'].includes(platform)) {\n return true;\n }\n\n return !!pr.bodyStruct?.rawConfigHash;\n}\n"]}
|
|
@@ -8,16 +8,15 @@ exports.getOnboardingFileNameFromCache = getOnboardingFileNameFromCache;
|
|
|
8
8
|
exports.getOnboardingConfigFromCache = getOnboardingConfigFromCache;
|
|
9
9
|
exports.setOnboardingConfigDetails = setOnboardingConfigDetails;
|
|
10
10
|
exports.isOnboardingBranchConflicted = isOnboardingBranchConflicted;
|
|
11
|
-
const
|
|
12
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
11
|
+
const is_1 = require("@sindresorhus/is");
|
|
13
12
|
const logger_1 = require("../../../../logger");
|
|
14
13
|
const scm_1 = require("../../../../modules/platform/scm");
|
|
15
14
|
const repository_1 = require("../../../../util/cache/repository");
|
|
16
15
|
const git_1 = require("../../../../util/git");
|
|
17
16
|
function setOnboardingCache(defaultBranchSha, onboardingBranchSha, isConflicted, isModified) {
|
|
18
17
|
// do not update cache if commit is null/undefined
|
|
19
|
-
if (!(is_1.
|
|
20
|
-
is_1.
|
|
18
|
+
if (!((0, is_1.isNonEmptyString)(defaultBranchSha) &&
|
|
19
|
+
(0, is_1.isNonEmptyString)(onboardingBranchSha))) {
|
|
21
20
|
logger_1.logger.debug('Onboarding cache not updated');
|
|
22
21
|
return;
|
|
23
22
|
}
|
|
@@ -60,9 +59,9 @@ async function isOnboardingBranchModified(onboardingBranch, defaultBranch) {
|
|
|
60
59
|
const onboardingCache = cache.onboardingBranchCache;
|
|
61
60
|
const onboardingSha = (0, git_1.getBranchCommit)(onboardingBranch);
|
|
62
61
|
let isModified = false;
|
|
63
|
-
if (onboardingCache &&
|
|
62
|
+
if ((0, is_1.isNonEmptyObject)(onboardingCache) &&
|
|
64
63
|
onboardingSha === onboardingCache.onboardingBranchSha &&
|
|
65
|
-
!is_1.
|
|
64
|
+
!(0, is_1.isUndefined)(onboardingCache.isModified)) {
|
|
66
65
|
return onboardingCache.isModified;
|
|
67
66
|
}
|
|
68
67
|
else {
|
|
@@ -91,10 +90,10 @@ async function isOnboardingBranchConflicted(defaultBranch, onboardingBranch) {
|
|
|
91
90
|
const onboardingSha = (0, git_1.getBranchCommit)(onboardingBranch);
|
|
92
91
|
const defaultBranchSha = (0, git_1.getBranchCommit)(defaultBranch);
|
|
93
92
|
let isConflicted = false;
|
|
94
|
-
if (onboardingCache &&
|
|
93
|
+
if ((0, is_1.isNonEmptyObject)(onboardingCache) &&
|
|
95
94
|
defaultBranchSha === onboardingCache.defaultBranchSha &&
|
|
96
95
|
onboardingSha === onboardingCache.onboardingBranchSha &&
|
|
97
|
-
!is_1.
|
|
96
|
+
!(0, is_1.isUndefined)(onboardingCache.isConflicted)) {
|
|
98
97
|
return onboardingCache.isConflicted;
|
|
99
98
|
}
|
|
100
99
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding-branch-cache.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/branch/onboarding-branch-cache.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"onboarding-branch-cache.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/branch/onboarding-branch-cache.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n isNonEmptyObject,\n isNonEmptyString,\n isUndefined,\n} from '@sindresorhus/is';\nimport { logger } from '../../../../logger';\nimport { scm } from '../../../../modules/platform/scm';\nimport { getCache } from '../../../../util/cache/repository';\nimport { getBranchCommit } from '../../../../util/git';\n\nexport function setOnboardingCache(\n defaultBranchSha: string,\n onboardingBranchSha: string,\n isConflicted: boolean,\n isModified: boolean,\n): void {\n // do not update cache if commit is null/undefined\n if (\n !(\n isNonEmptyString(defaultBranchSha) &&\n isNonEmptyString(onboardingBranchSha)\n )\n ) {\n logger.debug('Onboarding cache not updated');\n return;\n }\n\n const cache = getCache();\n const onboardingCache = {\n defaultBranchSha,\n onboardingBranchSha,\n isConflicted,\n isModified,\n };\n if (cache.onboardingBranchCache) {\n logger.debug({ onboardingCache }, 'Update Onboarding Cache');\n } else {\n logger.debug({ onboardingCache }, 'Create Onboarding Cache');\n }\n cache.onboardingBranchCache = onboardingCache;\n}\n\nexport function deleteOnboardingCache(): void {\n const cache = getCache();\n\n if (cache?.onboardingBranchCache) {\n logger.debug('Delete Onboarding Cache');\n delete cache.onboardingBranchCache;\n }\n}\n\n// checks if onboarding branch has been modified since last run\n// return true if cache isn't present\nexport function hasOnboardingBranchChanged(onboardingBranch: string): boolean {\n const cache = getCache();\n const onboardingSha = getBranchCommit(onboardingBranch);\n\n if (cache.onboardingBranchCache) {\n return onboardingSha !== cache.onboardingBranchCache.onboardingBranchSha;\n }\n return true;\n}\n\n// checks if onboarding branch has been modified by user\n// once set to true it stays true as we do not rebase onboarding branches anymore (this feature will be added in future though)\nexport async function isOnboardingBranchModified(\n onboardingBranch: string,\n defaultBranch: string,\n): Promise<boolean> {\n const cache = getCache();\n const onboardingCache = cache.onboardingBranchCache;\n const onboardingSha = getBranchCommit(onboardingBranch);\n let isModified = false;\n\n if (\n isNonEmptyObject(onboardingCache) &&\n onboardingSha === onboardingCache.onboardingBranchSha &&\n !isUndefined(onboardingCache.isModified)\n ) {\n return onboardingCache.isModified;\n } else {\n isModified = await scm.isBranchModified(onboardingBranch, defaultBranch);\n }\n\n return isModified;\n}\n\nexport function getOnboardingFileNameFromCache(): string | undefined {\n const cache = getCache();\n return cache.onboardingBranchCache?.configFileName;\n}\n\nexport function getOnboardingConfigFromCache(): string | undefined {\n const cache = getCache();\n return cache.onboardingBranchCache?.configFileParsed;\n}\n\nexport function setOnboardingConfigDetails(\n configFileName: string,\n configFileParsed: string,\n): void {\n const cache = getCache();\n if (cache.onboardingBranchCache) {\n cache.onboardingBranchCache.configFileName = configFileName;\n cache.onboardingBranchCache.configFileParsed = configFileParsed;\n }\n}\n\nexport async function isOnboardingBranchConflicted(\n defaultBranch: string,\n onboardingBranch: string,\n): Promise<boolean> {\n const cache = getCache();\n const onboardingCache = cache.onboardingBranchCache;\n const onboardingSha = getBranchCommit(onboardingBranch);\n const defaultBranchSha = getBranchCommit(defaultBranch);\n let isConflicted = false;\n\n if (\n isNonEmptyObject(onboardingCache) &&\n defaultBranchSha === onboardingCache.defaultBranchSha &&\n onboardingSha === onboardingCache.onboardingBranchSha &&\n !isUndefined(onboardingCache.isConflicted)\n ) {\n return onboardingCache.isConflicted;\n } else {\n isConflicted = await scm.isBranchConflicted(\n defaultBranch,\n onboardingBranch,\n );\n }\n\n return isConflicted;\n}\n"]}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getScheduleDesc = getScheduleDesc;
|
|
4
4
|
exports.getConfigDesc = getConfigDesc;
|
|
5
|
-
const
|
|
6
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
7
6
|
const logger_1 = require("../../../../logger");
|
|
8
7
|
const emoji_1 = require("../../../../util/emoji");
|
|
9
8
|
const common_1 = require("../common");
|
|
@@ -22,9 +21,7 @@ function getScheduleDesc(config) {
|
|
|
22
21
|
function getDescriptionArray(config) {
|
|
23
22
|
logger_1.logger.debug('getDescriptionArray()');
|
|
24
23
|
logger_1.logger.trace({ config });
|
|
25
|
-
const desc = is_1.
|
|
26
|
-
? config.description
|
|
27
|
-
: [];
|
|
24
|
+
const desc = (0, is_1.isArray)(config.description, is_1.isString) ? config.description : [];
|
|
28
25
|
return desc.concat(getScheduleDesc(config));
|
|
29
26
|
}
|
|
30
27
|
function getConfigDesc(config, packageFiles) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-description.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/pr/config-description.ts"],"names":[],"mappings":";;AAOA,0CAaC;
|
|
1
|
+
{"version":3,"file":"config-description.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/onboarding/pr/config-description.ts"],"names":[],"mappings":";;AAOA,0CAaC;AASD,sCA8BC;AA3DD,yCAAqD;AAErD,+CAA4C;AAE5C,kDAAiD;AACjD,sCAAqD;AAErD,SAAgB,eAAe,CAAC,MAAsB;IACpD,eAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAClC,eAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACzB,IACE,CAAC,MAAM,CAAC,QAAQ;QACf,MAAM,CAAC,QAAkB,KAAK,aAAa;QAC5C,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,aAAa,EACpC,CAAC;QACD,eAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,IAAI,GAAG,uCAAuC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC9E,OAAO,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAsB;IACjD,eAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACtC,eAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACzB,MAAM,IAAI,GAAG,IAAA,YAAO,EAAC,MAAM,CAAC,WAAW,EAAE,aAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,SAAgB,aAAa,CAC3B,MAAsB,EACtB,YAA4C;IAE5C,sBAAsB;IACtB,MAAM,UAAU,GAAG,IAAA,iCAAwB,EAAC,MAAM,CAAC,CAAC;IACpD,eAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAChC,eAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACzB,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAC3B,eAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,eAAM,CAAC,KAAK,CAAC,uCAAuC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,IAAI,GAAG,0FAA0F,CAAC;IACtG,IAAI,IAAI,uEAAuE,CAAC;IAChF,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IACvB,CAAC,CAAC,CAAC;IACH,IAAI,IAAI,IAAI,CAAC;IACb,IAAI,IAAI,IAAA,eAAO,EACb,uEAAuE,CACxE,CAAC;IACF,IAAI,IAAI,gCAAgC,UAAU,oBAChD,MAAM,CAAC,wBAAwB;QAC7B,CAAC,CAAC,6CAA6C;QAC/C,CAAC,CAAC,EACN,4EAA4E,CAAC;IAC7E,IAAI,IAAI,WAAW,CAAC;IACpB,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { isArray, isString } from '@sindresorhus/is';\nimport type { RenovateConfig } from '../../../../config/types';\nimport { logger } from '../../../../logger';\nimport type { PackageFile } from '../../../../modules/manager/types';\nimport { emojify } from '../../../../util/emoji';\nimport { getDefaultConfigFileName } from '../common';\n\nexport function getScheduleDesc(config: RenovateConfig): string[] {\n logger.debug('getScheduleDesc()');\n logger.trace({ config });\n if (\n !config.schedule ||\n (config.schedule as never) === 'at any time' ||\n config.schedule[0] === 'at any time'\n ) {\n logger.debug('No schedule');\n return [];\n }\n const desc = `Run Renovate on following schedule: ${String(config.schedule)}`;\n return [desc];\n}\n\nfunction getDescriptionArray(config: RenovateConfig): string[] {\n logger.debug('getDescriptionArray()');\n logger.trace({ config });\n const desc = isArray(config.description, isString) ? config.description : [];\n return desc.concat(getScheduleDesc(config));\n}\n\nexport function getConfigDesc(\n config: RenovateConfig,\n packageFiles?: Record<string, PackageFile[]>,\n): string {\n // TODO: type (#22198)\n const configFile = getDefaultConfigFileName(config);\n logger.debug('getConfigDesc()');\n logger.trace({ config });\n const descriptionArr = getDescriptionArray(config);\n if (!descriptionArr.length) {\n logger.debug('No config description found');\n return '';\n }\n logger.debug(`Found description array with length:${descriptionArr.length}`);\n let desc = `\\n### Configuration Summary\\n\\nBased on the default config's presets, Renovate will:\\n\\n`;\n desc += ` - Start dependency updates only once this onboarding PR is merged\\n`;\n descriptionArr.forEach((d) => {\n desc += ` - ${d}\\n`;\n });\n desc += '\\n';\n desc += emojify(\n `:abcd: Do you want to change how Renovate upgrades your dependencies?`,\n );\n desc += ` Add your custom config to \\`${configFile}\\` in this branch${\n config.onboardingRebaseCheckbox\n ? ' and select the Retry/Rebase checkbox below'\n : ''\n }. Renovate will update the Pull Request description the next time it runs.`;\n desc += '\\n\\n---\\n';\n return desc;\n}\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ensureOnboardingPr = ensureOnboardingPr;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const is_1 =
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
6
|
const global_1 = require("../../../../config/global");
|
|
7
7
|
const logger_1 = require("../../../../logger");
|
|
8
8
|
const platform_1 = require("../../../../modules/platform");
|
|
@@ -97,10 +97,10 @@ If you need any further assistance then you can also [request help here](${confi
|
|
|
97
97
|
prBody = prBody.replace('{{ERRORS}}\n', (0, errors_warnings_1.getErrors)(config));
|
|
98
98
|
prBody = prBody.replace('{{BASEBRANCH}}\n', (0, base_branch_1.getBaseBranchDesc)(config));
|
|
99
99
|
prBody = prBody.replace('{{PRLIST}}\n', (0, pr_list_1.getExpectedPrList)(config, branches));
|
|
100
|
-
if (is_1.
|
|
100
|
+
if ((0, is_1.isString)(config.prHeader)) {
|
|
101
101
|
prBody = `${template.compile(config.prHeader, config)}\n\n${prBody}`;
|
|
102
102
|
}
|
|
103
|
-
if (is_1.
|
|
103
|
+
if ((0, is_1.isString)(config.prFooter)) {
|
|
104
104
|
prBody = `${prBody}\n---\n\n${template.compile(config.prFooter, config)}\n`;
|
|
105
105
|
}
|
|
106
106
|
prBody += onboardingConfigHashComment;
|