renovate/renovate-schema.json

1419 строки
44 KiB
JSON

{
"title": "JSON schema for Renovate config files (https://renovatebot.com/)",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"onboardingBranch": {
"description": "Change this value in order to override the default onboarding branch name.",
"type": "string",
"default": "renovate/configure"
},
"onboardingPrTitle": {
"description": "Change this value in order to override the default onboarding PR title.",
"type": "string",
"default": "Configure Renovate"
},
"productLinks": {
"description": "Links which are embedded within PRs, issues, etc",
"type": "object",
"default": {
"documentation": "https://docs.renovatebot.com/",
"help": "https://github.com/renovatebot/config-help/issues",
"homepage": "https://github.com/renovatebot/renovate"
},
"additionalProperties": {
"type": "string",
"format": "uri"
},
"$ref": "#"
},
"extends": {
"description": "Configuration presets to use/extend. Note: does not work if configured in config.js",
"type": "array",
"items": {
"type": "string"
}
},
"ignorePresets": {
"description": "A list of presets to ignore, including nested ones inside `extends`",
"type": "array",
"items": {
"type": "string"
}
},
"description": {
"description": "Plain text description for a config or preset",
"type": "array",
"items": {
"type": "string"
}
},
"enabled": {
"description": "Enable or disable the bot",
"type": "boolean"
},
"force": {
"description": "Any configuration defined within this object will force override existing settings",
"type": "object",
"$ref": "#"
},
"forceCli": {
"description": "Whether CLI configuration options should be moved to the `force` config section",
"type": "boolean",
"default": true
},
"dryRun": {
"description": "If enabled, perform a dry run by logging messages instead of creating/updating/deleting branches and PRs",
"type": "boolean",
"default": false
},
"printConfig": {
"description": "If enabled, log the full resolved config for each repo, including resolved presets",
"type": "boolean",
"default": false
},
"binarySource": {
"description": "Where to source binaries like `npm` and `yarn` from, choices are `auto`, `global` and `docker`",
"type": "string",
"default": "auto"
},
"baseDir": {
"description": "The base directory for Renovate to store local files, including repository files and cache. If left empty, Renovate will create its own temporary directory to use.",
"type": "string"
},
"cacheDir": {
"description": "The directory for Renovate for storing caches. If left empty, Renovate will create a subdirectory within `baseDir` to use.",
"type": "string"
},
"dockerMapDotfiles": {
"description": "Map relevant home directory dotfiles into containers when binarySource=docker.",
"type": "boolean",
"default": false
},
"dockerUser": {
"description": "Specify UID and GID for docker-based binaries when binarySource=docker is used.",
"type": "string"
},
"logLevel": {
"description": "Logging level",
"type": "string",
"enum": ["fatal", "error", "warn", "info", "debug", "trace"],
"default": "info"
},
"logFile": {
"description": "Log file path",
"type": "string"
},
"logFileLevel": {
"description": "Log file log level",
"type": "string",
"default": "debug"
},
"onboarding": {
"description": "Require a Configuration PR first",
"type": "boolean"
},
"onboardingConfig": {
"description": "Configuration to use in onboarding PRs",
"type": "object",
"default": {},
"$ref": "#"
},
"includeForks": {
"description": "Whether to process forked repositories or not. By default, all forked repositories are skipped over.",
"type": "boolean",
"default": false
},
"forkMode": {
"description": "Set to true to fork the source repository and create branches there instead",
"type": "boolean",
"default": false
},
"requireConfig": {
"description": "Set to true if repositories must have a config to activate.",
"type": "boolean",
"default": true
},
"optimizeForDisabled": {
"description": "Set to true to first check for disabling in config before cloning",
"type": "boolean",
"default": false
},
"masterIssue": {
"description": "Whether to create a \"Master Issue\" within the repository.",
"type": "boolean",
"default": false
},
"masterIssueApproval": {
"description": "Whether updates should require manual approval from within the Master Issue before creation.",
"type": "boolean",
"default": false
},
"masterIssueAutoclose": {
"description": "Set to `true` and Renovate will autoclose the Master Issue if there are no updates.",
"type": "boolean",
"default": false
},
"masterIssueTitle": {
"description": "Title to use for the Master Issue",
"type": "string",
"default": "Update Dependencies (Renovate Bot)"
},
"configWarningReuseIssue": {
"description": "Set this to false and Renovate will open each config warning in a new issue instead of reopening/reusing an existing issue.",
"type": "boolean",
"default": true
},
"privateKey": {
"description": "Server-side private key",
"type": "string"
},
"encrypted": {
"description": "A configuration object containing configuration encrypted with project key.",
"type": "object",
"default": null,
"$ref": "#"
},
"timezone": {
"description": "[IANA Time Zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)",
"type": "string"
},
"schedule": {
"description": "Times of day/week to limit branch creation to",
"type": "array",
"items": {
"type": "string"
},
"default": "at any time"
},
"updateNotScheduled": {
"description": "Whether to update (but not create) branches when not scheduled",
"type": "boolean"
},
"persistRepoData": {
"description": "If set to true, repository data will preserved between runs instead of deleted.",
"type": "boolean",
"default": false
},
"trustLevel": {
"description": "Set this to \"high\" if the bot should trust the repository owners/contents",
"type": "string",
"default": "low"
},
"ignoreScripts": {
"description": "Configure this to true if trustLevel is high but you wish to skip running scripts when updating lock files",
"type": "boolean",
"default": false
},
"platform": {
"description": "Platform type of repository",
"type": "string",
"enum": ["azure", "bitbucket", "bitbucket-server", "github", "gitlab"],
"default": "github"
},
"endpoint": {
"description": "Custom endpoint to use",
"type": "string",
"default": null
},
"token": {
"description": "Repository Auth Token",
"type": "string"
},
"username": {
"description": "Username for authentication. Currently Bitbucket only",
"type": "string"
},
"password": {
"description": "Password for authentication. Currently Bitbucket only (AppPassword).",
"type": "string"
},
"npmrc": {
"description": "String copy of npmrc file. Use \\n instead of line breaks",
"type": "string"
},
"npmToken": {
"description": "npm token used for authenticating with the default registry",
"type": "string"
},
"yarnrc": {
"description": "String copy of yarnrc file. Use \\n instead of line breaks",
"type": "string"
},
"updateLockFiles": {
"description": "Set to false to disable lock file updating",
"type": "boolean"
},
"skipInstalls": {
"description": "Skip installing modules/dependencies if lock file updating is possible alone",
"type": "boolean",
"default": null
},
"ignoreNpmrcFile": {
"description": "Whether to ignore any .npmrc file found in repository",
"type": "boolean",
"default": false
},
"autodiscover": {
"description": "Autodiscover all repositories",
"type": "boolean",
"default": false
},
"autodiscoverFilter": {
"description": "Filter the list of autodiscovered repositories",
"type": "string",
"default": null
},
"prCommitsPerRunLimit": {
"description": "Set a maximum number of commits per Renovate run. Default is no limit.",
"type": "integer",
"default": 0
},
"repositories": {
"description": "List of Repositories",
"type": "array"
},
"baseBranches": {
"description": "An array of one or more custom base branches to be processed. If left empty, the default branch will be chosen",
"type": "array"
},
"gitAuthor": {
"description": "Author to use for git commits. RFC5322",
"type": "string"
},
"gitPrivateKey": {
"description": "PGP key to use for signing git commits",
"type": "string"
},
"enabledManagers": {
"description": "A list of package managers to enable. If defined, then all managers not on the list are disabled.",
"type": "array"
},
"includePaths": {
"description": "Include package files only within these defined paths",
"type": "array",
"items": {
"type": "string"
},
"default": []
},
"ignorePaths": {
"description": "Skip any package file whose path matches one of these. Can be string or glob pattern",
"type": "array",
"items": {
"type": "string"
},
"default": ["**/node_modules/**", "**/bower_components/**"]
},
"excludeCommitPaths": {
"description": "A file that matches any of these glob patterns will not be committed, even if it has been updated.",
"type": "array",
"items": {
"type": "string"
},
"default": []
},
"engines": {
"description": "Configuration specifically for `package.json`>`engines`",
"type": "object",
"default": {},
"$ref": "#"
},
"aliases": {
"description": "Aliases for registries, package manager specific",
"type": "object",
"default": {},
"additionalProperties": {
"type": "string",
"format": "uri"
},
"$ref": "#"
},
"registryUrls": {
"description": "List of URLs to try for dependency lookup. Package manager-specific",
"type": "array",
"items": {
"type": "string"
},
"default": null
},
"versionScheme": {
"description": "Version scheme to use for filtering and comparisons",
"type": "string",
"enum": [
"cargo",
"composer",
"docker",
"git",
"hashicorp",
"hex",
"ivy",
"loose",
"maven",
"node",
"npm",
"nuget",
"pep440",
"poetry",
"regex",
"ruby",
"semver",
"swift"
],
"default": "semver"
},
"azureAutoComplete": {
"description": "If set to true, Azure DevOps PRs will be set to auto-complete after all (if any) branch policies have been met",
"type": "boolean",
"default": false
},
"azureWorkItemId": {
"description": "The id of an existing work item on Azure Boards to link to each PR",
"type": "integer",
"default": 0
},
"ignoreDeps": {
"description": "Dependencies to ignore",
"type": "array",
"items": {
"type": "string"
}
},
"packageRules": {
"description": "Rules for matching package names",
"type": "array",
"items": {
"allOf": [
{
"type": "object",
"properties": {
"languages": {
"description": "List of languages to match (e.g. [\"python\"]). Valid only within `packageRules` object",
"type": "array",
"items": {
"type": "string"
}
},
"baseBranchList": {
"description": "List of branches to match (e.g. [\"master\"]). Valid only within `packageRules` object",
"type": "array",
"items": {
"type": "string"
}
},
"managers": {
"description": "List of package managers to match (e.g. [\"pipenv\"]). Valid only within `packageRules` object",
"type": "array",
"items": {
"type": "string"
}
},
"datasources": {
"description": "List of datasources to match (e.g. [\"orb\"]). Valid only within `packageRules` object",
"type": "array",
"items": {
"type": "string"
}
},
"depTypeList": {
"description": "List of depTypes to match (e.g. [`peerDependencies`]). Valid only within `packageRules` object",
"type": "array",
"items": {
"type": "string"
}
},
"packageNames": {
"description": "Package names to match. Valid only within `packageRules` object",
"type": "array",
"items": {
"type": "string"
}
},
"excludePackageNames": {
"description": "Package names to exclude. Valid only within `packageRules` object",
"type": "array",
"items": {
"type": "string"
}
},
"packagePatterns": {
"description": "Package name patterns to match. Valid only within `packageRules` object.",
"type": "array",
"items": {
"type": "string",
"format": "regex"
}
},
"excludePackagePatterns": {
"description": "Package name patterns to exclude. Valid only within `packageRules` object.",
"type": "array",
"items": {
"type": "string",
"format": "regex"
}
},
"matchCurrentVersion": {
"description": "A version or version range to match against the current version of a package. Valid only within `packageRules` object",
"type": "string"
},
"sourceUrlPrefixes": {
"description": "A list of source URL prefixes to match against, commonly used for grouping of monorepos or packages from the same organization.",
"type": "array",
"items": {
"type": "string"
}
},
"updateTypes": {
"description": "Update types to match against (major, minor, pin, etc). Valid only within `packageRules` object.",
"type": "array",
"items": {
"type": "string",
"enum": [
"major",
"minor",
"patch",
"pin",
"digest",
"lockFileMaintenance",
"rollback",
"bump"
]
}
},
"paths": {
"description": "List of strings or glob patterns to match against package files. Applicable inside packageRules only",
"type": "array",
"items": {
"type": "string"
}
},
"allowedVersions": {
"description": "A semver range defining allowed versions for dependencies",
"type": "string"
}
}
}
]
}
},
"pinDigests": {
"description": "Whether to add digests to Dockerfile source images",
"type": "boolean",
"default": false
},
"separateMajorMinor": {
"description": "If set to false, it will upgrade dependencies to latest release only, and not separate major/minor branches",
"type": "boolean"
},
"separateMultipleMajor": {
"description": "If set to true, PRs will be raised separately for each available major upgrade version",
"type": "boolean",
"default": false
},
"separateMinorPatch": {
"description": "If set to true, it will separate minor and patch updates into separate branches",
"type": "boolean",
"default": false
},
"ignoreUnstable": {
"description": "Ignore versions with unstable semver",
"type": "boolean"
},
"ignoreDeprecated": {
"description": "Ignore deprecated versions unless the current version is deprecated",
"type": "boolean",
"default": true
},
"followTag": {
"description": "If defined, packages will follow this release tag exactly.",
"type": "string"
},
"respectLatest": {
"description": "Ignore versions newer than npm \"latest\" version",
"type": "boolean"
},
"rangeStrategy": {
"description": "Policy for how to modify/update existing ranges.",
"type": "string",
"enum": ["auto", "pin", "bump", "replace", "widen", "update-lockfile"],
"default": "replace"
},
"branchPrefix": {
"description": "Prefix to use for all branch names",
"type": "string",
"default": "renovate/"
},
"bumpVersion": {
"description": "Bump the version in the package.json being updated",
"type": "string",
"enum": ["major", "minor", "patch"]
},
"major": {
"description": "Configuration to apply when an update type is major",
"type": "object",
"default": {},
"$ref": "#"
},
"minor": {
"description": "Configuration to apply when an update type is minor",
"type": "object",
"default": {},
"$ref": "#"
},
"patch": {
"description": "Configuration to apply when an update type is patch. Only applies if `separateMinorPatch` is set to true",
"type": "object",
"default": {},
"$ref": "#"
},
"pin": {
"description": "Configuration to apply when an update type is pin.",
"type": "object",
"default": {
"unpublishSafe": false,
"recreateClosed": true,
"rebaseStalePrs": true,
"groupName": "Pin Dependencies",
"groupSlug": "pin-dependencies",
"commitMessageAction": "Pin",
"group": {
"commitMessageTopic": "dependencies",
"commitMessageExtra": ""
}
},
"$ref": "#"
},
"digest": {
"description": "Configuration to apply when updating a digest (no change in tag/version)",
"type": "object",
"default": {
"branchTopic": "{{{depNameSanitized}}}-digest",
"commitMessageExtra": "to {{newDigestShort}}",
"commitMessageTopic": "{{{depName}}} commit hash"
},
"$ref": "#"
},
"semanticCommits": {
"description": "Enable semantic commit prefixes for commits and PR titles",
"type": "boolean",
"default": null
},
"semanticCommitType": {
"description": "Commit type to use if semantic commits is enabled",
"type": "string",
"default": "chore"
},
"semanticCommitScope": {
"description": "Commit scope to use if semantic commits are enabled",
"type": "string",
"default": "deps"
},
"rollbackPrs": {
"description": "Create PRs to roll back versions if the current version is not found in the registry",
"type": "boolean",
"default": false
},
"recreateClosed": {
"description": "Recreate PRs even if same ones were closed previously",
"type": "boolean",
"default": false
},
"rebaseConflictedPrs": {
"description": "Auto-rebase when there is conflict in PRs",
"type": "boolean",
"default": true
},
"rebaseStalePrs": {
"description": "Rebase any PRs that are not up-to-date with the base branch",
"type": "boolean",
"default": null
},
"rebaseLabel": {
"description": "Label to use to request the bot to rebase a PR manually",
"type": "string",
"default": "rebase"
},
"statusCheckVerify": {
"description": "Set a verify status check for all PRs",
"type": "boolean",
"default": false
},
"unpublishSafe": {
"description": "Set a status check for unpublish-safe upgrades",
"type": "boolean",
"default": false
},
"stabilityDays": {
"description": "Number of days required before a new release is considered to be stabilized.",
"type": "integer",
"default": 0
},
"prCreation": {
"description": "When to create the PR for a branch.",
"type": "string",
"enum": ["immediate", "not-pending", "status-success", "approval"],
"default": "immediate"
},
"prNotPendingHours": {
"description": "Timeout in hours for when prCreation=not-pending",
"type": "integer",
"default": 25
},
"prHourlyLimit": {
"description": "Rate limit PRs to maximum x created per hour. 0 (default) means no limit.",
"type": "integer",
"default": 0
},
"prConcurrentLimit": {
"description": "Limit to a maximum of x concurrent branches/PRs. 0 (default) means no limit.",
"type": "integer",
"default": 0
},
"prPriority": {
"description": "Set sorting priority for PR creation. PRs with higher priority are created first, negative priority last.",
"type": "integer",
"default": 0
},
"bbUseDefaultReviewers": {
"description": "Use the default reviewers (Bitbucket only).",
"type": "boolean",
"default": true
},
"automerge": {
"description": "Whether to automerge branches/PRs automatically, without human intervention",
"type": "boolean",
"default": false
},
"automergeType": {
"description": "How to automerge, if enabled.",
"type": "string",
"enum": ["branch", "pr", "pr-comment"],
"default": "pr"
},
"automergeComment": {
"description": "PR comment to add to trigger automerge. Used only if automergeType=pr-comment",
"type": "string",
"default": "automergeComment"
},
"requiredStatusChecks": {
"description": "List of status checks that must pass before automerging. Set to null to enable automerging without tests.",
"type": "array",
"items": {
"type": "string"
}
},
"vulnerabilityAlerts": {
"description": "Config to apply when a PR is necessary due to vulnerability of existing package version.",
"type": "object",
"default": {
"groupName": null,
"schedule": [],
"masterIssueApproval": false,
"rangeStrategy": "update-lockfile",
"commitMessageSuffix": "[SECURITY]"
},
"$ref": "#"
},
"branchName": {
"description": "Branch name template",
"type": "string",
"default": "{{{branchPrefix}}}{{{managerBranchPrefix}}}{{{branchTopic}}}"
},
"managerBranchPrefix": {
"description": "Branch manager prefix",
"type": "string",
"default": ""
},
"branchTopic": {
"description": "Branch topic",
"type": "string",
"default": "{{{depNameSanitized}}}-{{{newMajor}}}{{#if isPatch}}.{{{newMinor}}}{{/if}}.x{{#if isLockfileUpdate}}-lockfile{{/if}}"
},
"commitMessage": {
"description": "Message to use for commit messages and pull request titles",
"type": "string",
"default": "{{{commitMessagePrefix}}} {{{commitMessageAction}}} {{{commitMessageTopic}}} {{{commitMessageExtra}}} {{{commitMessageSuffix}}}"
},
"commitBody": {
"description": "Commit message body template. Will be appended to commit message, separated by two line returns.",
"type": "string"
},
"commitBodyTable": {
"description": "If enabled, append a table in the commit message body describing all updates in the commit",
"type": "boolean",
"default": false
},
"commitMessagePrefix": {
"description": "Prefix to add to start of commit messages and PR titles. Uses a semantic prefix if semanticCommits enabled",
"type": "string"
},
"commitMessageAction": {
"description": "Action verb to use in commit messages and PR titles",
"type": "string",
"default": "Update"
},
"commitMessageTopic": {
"description": "The upgrade topic/noun used in commit messages and PR titles",
"type": "string",
"default": "dependency {{depName}}"
},
"commitMessageExtra": {
"description": "Extra description used after the commit message topic - typically the version",
"type": "string",
"default": "to {{#if isMajor}}v{{{newMajor}}}{{else}}{{#if isSingleVersion}}v{{{toVersion}}}{{else}}{{{newValue}}}{{/if}}{{/if}}"
},
"commitMessageSuffix": {
"description": "Suffix to add to end of commit messages and PR titles.",
"type": "string"
},
"prTitle": {
"description": "Pull Request title template (deprecated). Now uses commitMessage.",
"type": "string",
"default": null
},
"prFooter": {
"description": "Pull Request footer template",
"type": "string",
"default": "This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate)."
},
"lockFileMaintenance": {
"description": "Configuration for lock file maintenance",
"type": "object",
"default": {
"enabled": false,
"recreateClosed": true,
"rebaseStalePrs": true,
"branchTopic": "lock-file-maintenance",
"commitMessageAction": "Lock file maintenance",
"commitMessageTopic": null,
"commitMessageExtra": null,
"schedule": ["before 5am on monday"],
"groupName": null,
"prBodyDefinitions": {
"Change": "All locks refreshed"
}
},
"$ref": "#"
},
"lazyGrouping": {
"description": "Use group names only when multiple dependencies upgraded",
"type": "boolean",
"default": true
},
"groupName": {
"description": "Human understandable name for the dependency group",
"type": "string",
"default": null
},
"groupSlug": {
"description": "Slug to use for group (e.g. in branch name). Will be calculated from groupName if null",
"type": "string",
"default": null
},
"group": {
"description": "Config if groupName is enabled",
"type": "object",
"default": {
"branchTopic": "{{{groupSlug}}}",
"commitMessageTopic": "{{{groupName}}}"
},
"$ref": "#"
},
"labels": {
"description": "Labels to add to Pull Request",
"type": "array",
"items": {
"type": "string"
}
},
"assignees": {
"description": "Assignees for Pull Request (either username or email address depending on the platform)",
"type": "array",
"items": {
"type": "string"
}
},
"assigneesSampleSize": {
"description": "Take a random sample of given size from assignees.",
"type": "integer",
"default": null
},
"assignAutomerge": {
"description": "Assign reviewers and assignees even if the PR is to be automerged",
"type": "boolean",
"default": false
},
"reviewers": {
"description": "Requested reviewers for Pull Requests (either username or email address depending on the platform)",
"type": "array",
"items": {
"type": "string"
}
},
"reviewersSampleSize": {
"description": "Take a random sample of given size from reviewers.",
"type": "integer",
"default": null
},
"fileMatch": {
"description": "RegEx (re2) pattern for matching manager files",
"type": "array",
"items": {
"type": "string",
"format": "regex"
}
},
"js": {
"description": "Configuration object for javascript language",
"type": "object",
"default": {},
"$ref": "#"
},
"npm": {
"description": "Configuration object for npm package.json renovation",
"type": "object",
"default": {
"fileMatch": ["(^|/)package.json$"],
"rollbackPrs": true,
"versionScheme": "npm",
"prBodyDefinitions": {
"Change": "[{{#if displayFrom}}`{{{displayFrom}}}` -> {{else}}{{#if currentValue}}`{{{currentValue}}}` -> {{/if}}{{/if}}{{#if displayTo}}`{{{displayTo}}}`{{else}}`{{{newValue}}}`{{/if}}](https://renovatebot.com/diffs/npm/{{{depNameEscaped}}}/{{{fromVersion}}}/{{{toVersion}}})"
}
},
"$ref": "#"
},
"meteor": {
"description": "Configuration object for meteor package.js renovation",
"type": "object",
"default": {
"fileMatch": ["(^|/)package.js$"]
},
"$ref": "#"
},
"bazel": {
"description": "Configuration object for bazel WORKSPACE renovation",
"type": "object",
"default": {
"fileMatch": ["(^|/)WORKSPACE$", "\\.bzl$"]
},
"$ref": "#"
},
"buildkite": {
"description": "Configuration object for buildkite pipeline renovation",
"type": "object",
"default": {
"fileMatch": ["buildkite\\.ya?ml", "\\.buildkite/.+\\.ya?ml$"],
"commitMessageTopic": "buildkite plugin {{depName}}",
"commitMessageExtra": "to {{#if isMajor}}v{{{newMajor}}}{{else}}{{{newValue}}}{{/if}}",
"managerBranchPrefix": "buildkite-"
},
"$ref": "#"
},
"golang": {
"description": "Configuration object for Go language",
"type": "object",
"default": {
"commitMessageTopic": "module {{depNameShort}}"
},
"$ref": "#"
},
"gomod": {
"description": "Configuration object for Go modules renovation",
"type": "object",
"default": {
"fileMatch": ["(^|/)go.mod$"]
},
"$ref": "#"
},
"postUpdateOptions": {
"description": "Enable post-update options to be run after package/artifact updating",
"type": "array",
"default": []
},
"ruby": {
"description": "Configuration object for ruby language",
"type": "object",
"default": {},
"$ref": "#"
},
"bundler": {
"description": "Configuration object for bundler Gemfiles",
"type": "object",
"default": {
"fileMatch": ["(^|/)Gemfile$"],
"versionScheme": "ruby"
},
"$ref": "#"
},
"ruby-version": {
"description": "Configuration object for .ruby-version updating",
"type": "object",
"default": {
"fileMatch": ["(^|/)\\.ruby-version$"],
"versionScheme": "ruby"
},
"$ref": "#"
},
"terraform": {
"description": "Configuration object for Terraform dependencies renovation",
"type": "object",
"default": {
"commitMessageTopic": "Terraform {{managerData.terraformDependencyType}} {{depNameShort}}",
"fileMatch": ["\\.tf$"],
"versionScheme": "hashicorp"
},
"$ref": "#"
},
"mix": {
"description": "Configuration object for Mix module renovation",
"type": "object",
"default": {
"fileMatch": ["(^|/)mix\\.exs$"],
"versionScheme": "hex"
},
"$ref": "#"
},
"rust": {
"description": "Configuration option for Rust package management.",
"type": "object",
"default": {},
"$ref": "#"
},
"cargo": {
"description": "Configuration object for Cargo crate renovation.",
"type": "object",
"default": {
"commitMessageTopic": "Rust crate {{depName}}",
"managerBranchPrefix": "rust-",
"fileMatch": ["(^|/)Cargo.toml$"],
"versionScheme": "cargo",
"rangeStrategy": "bump"
},
"$ref": "#"
},
"supportPolicy": {
"description": "Dependency support policy, e.g. used for LTS vs non-LTS etc (node-only)",
"type": "array",
"items": {
"type": "string"
}
},
"node": {
"description": "Configuration object for node version renovation",
"type": "object",
"default": {
"commitMessageTopic": "Node.js",
"major": {
"enabled": false
}
},
"$ref": "#"
},
"travis": {
"description": "Configuration object for .travis.yml node version renovation",
"type": "object",
"default": {
"fileMatch": ["^.travis.yml$"],
"versionScheme": "node"
},
"$ref": "#"
},
"nvm": {
"description": "Configuration object for .nvmrc files",
"type": "object",
"default": {
"fileMatch": ["^.nvmrc$"],
"versionScheme": "node"
},
"$ref": "#"
},
"pub": {
"description": "Configuration object for when renovating Dart pubspec files",
"type": "object",
"default": {
"fileMatch": ["(^|/)pubspec\\.ya?ml$"],
"versionScheme": "npm"
},
"$ref": "#"
},
"docker": {
"description": "Configuration object for Docker language",
"type": "object",
"default": {
"versionScheme": "docker",
"managerBranchPrefix": "docker-",
"commitMessageTopic": "{{{depName}}} Docker tag",
"major": {
"enabled": false
},
"commitMessageExtra": "to v{{#if isMajor}}{{{newMajor}}}{{else}}{{{newVersion}}}{{/if}}",
"digest": {
"branchTopic": "{{{depNameSanitized}}}-{{{currentValue}}}",
"commitMessageExtra": "to {{newDigestShort}}",
"commitMessageTopic": "{{{depName}}}{{#if currentValue}}:{{{currentValue}}}{{/if}} Docker digest",
"group": {
"commitMessageTopic": "{{{groupName}}}",
"commitMessageExtra": ""
}
},
"pin": {
"commitMessageExtra": "",
"groupName": "Docker digests",
"group": {
"commitMessageTopic": "{{{groupName}}}",
"branchTopic": "digests-pin"
}
},
"group": {
"commitMessageTopic": "{{{groupName}}} Docker tags"
}
},
"$ref": "#"
},
"docker-compose": {
"description": "Configuration object for Docker Compose renovation. Also inherits settings from `docker` object.",
"type": "object",
"default": {
"fileMatch": ["(^|/)docker-compose[^/]*\\.ya?ml$"]
},
"$ref": "#"
},
"dockerfile": {
"description": "Configuration object for Dockerfile renovation",
"type": "object",
"default": {
"fileMatch": ["(^|/)Dockerfile$", "(^|/)Dockerfile\\.[^/]*$"]
},
"$ref": "#"
},
"kubernetes": {
"description": "Configuration object for Kubernetes renovation. Also inherits settings from `docker` object.",
"type": "object",
"default": {
"fileMatch": []
},
"$ref": "#"
},
"helm-requirements": {
"description": "Configuration object for helm requirements.yaml files.",
"type": "object",
"default": {
"aliases": {
"stable": "https://kubernetes-charts.storage.googleapis.com/"
},
"commitMessageTopic": "helm chart {{depName}}",
"fileMatch": ["(^|/)requirements.yaml$"]
},
"$ref": "#"
},
"circleci": {
"description": "Configuration object for CircleCI yml renovation. Also inherits settings from `docker` object.",
"type": "object",
"default": {
"fileMatch": ["(^|/).circleci/config.yml$"]
},
"$ref": "#"
},
"droneci": {
"description": "Configuration object for DroneCI yml renovation. Also inherits settings from `docker` object.",
"type": "object",
"default": {
"fileMatch": ["(^|/).drone.yml$"]
},
"$ref": "#"
},
"ansible": {
"description": "Configuration object for Ansible yaml renovation. Also inherits settings from `docker` object.",
"type": "object",
"default": {
"fileMatch": ["(^|/)tasks/[^/]+\\.ya?ml$"]
},
"$ref": "#"
},
"github-actions": {
"description": "Configuration object for GitHub Actions workflow renovation. Also inherits settings from `docker` object.",
"type": "object",
"default": {
"fileMatch": [
"^\\.github/main.workflow$",
"^\\.github/workflows/[^/]+\\.ya?ml$"
],
"pinDigests": true
},
"$ref": "#"
},
"composer": {
"description": "Configuration object for composer.json files",
"type": "object",
"default": {
"fileMatch": ["(^|/)([\\w-]*)composer.json$"],
"versionScheme": "composer"
},
"$ref": "#"
},
"git-submodules": {
"description": "Configuration object for git submodule files",
"type": "object",
"default": {
"enabled": false,
"versionScheme": "git",
"fileMatch": ["(^|/).gitmodules$"]
},
"$ref": "#"
},
"php": {
"description": "Configuration object for php",
"type": "object",
"default": {},
"$ref": "#"
},
"pip_requirements": {
"description": "Configuration object for requirements.txt files",
"type": "object",
"default": {
"fileMatch": ["(^|/)([\\w-]*)requirements.(txt|pip)$"]
},
"$ref": "#"
},
"pip_setup": {
"description": "Configuration object for setup.py files",
"type": "object",
"default": {
"fileMatch": ["(^|/)setup.py$"]
},
"$ref": "#"
},
"pipenv": {
"description": "Configuration object for Pipfile files",
"type": "object",
"default": {
"fileMatch": ["(^|/)Pipfile$"]
},
"$ref": "#"
},
"poetry": {
"description": "Configuration object for pyproject.toml files",
"type": "object",
"default": {
"versionScheme": "poetry",
"fileMatch": ["(^|/)pyproject\\.toml$"]
},
"$ref": "#"
},
"python": {
"description": "Configuration object for python",
"type": "object",
"default": {
"versionScheme": "pep440"
},
"$ref": "#"
},
"sbt": {
"description": "Configuration object for *.sbt files",
"type": "object",
"default": {
"fileMatch": ["\\.sbt$", "project/[^/]*.scala$"],
"timeout": 300,
"versionScheme": "ivy"
},
"$ref": "#"
},
"leiningen": {
"description": "Configuration object for renovating Clojure leiningen projects",
"type": "object",
"default": {
"fileMatch": ["(^|/)project\\.clj$"],
"versionScheme": "maven"
},
"$ref": "#"
},
"deps-edn": {
"description": "Configuration object for renovating Clojure CLI-based projects (deps.edn)",
"type": "object",
"default": {
"fileMatch": ["(^|/)deps\\.edn$"],
"versionScheme": "maven"
},
"$ref": "#"
},
"compatibility": {
"description": "Configuration object for compatibility",
"type": "object",
"default": {},
"$ref": "#"
},
"java": {
"description": "Configuration object for all Java package managers",
"type": "object",
"default": {},
"$ref": "#"
},
"gradle": {
"description": "Configuration object for build.gradle files",
"type": "object",
"default": {
"fileMatch": ["\\.gradle(\\.kts)?$", "(^|/)gradle.properties$"],
"timeout": 600,
"versionScheme": "maven"
},
"$ref": "#"
},
"gradle-wrapper": {
"description": "Configuration object for gradle-wrapper.properties files",
"type": "object",
"default": {
"fileMatch": ["(^|/)gradle/wrapper/gradle-wrapper.properties$"]
},
"$ref": "#"
},
"maven": {
"description": "Configuration object for when renovating Maven pom.xml files",
"type": "object",
"default": {
"fileMatch": ["\\.pom\\.xml$", "(^|/)pom\\.xml$"],
"versionScheme": "maven"
},
"$ref": "#"
},
"gitlabci": {
"description": "Configuration object for GitLab CI yml renovation. Also inherits settings from `docker` object.",
"type": "object",
"default": {
"fileMatch": ["^\\.gitlab-ci\\.yml$"]
},
"$ref": "#"
},
"gitlabci-include": {
"description": "Configuration object for GitLab CI yml renovation for include.",
"type": "object",
"default": {
"fileMatch": ["^\\.gitlab-ci\\.yml$"]
},
"$ref": "#"
},
"dotnet": {
"description": "Configuration object for .NET language",
"type": "object",
"default": {},
"$ref": "#"
},
"nuget": {
"description": "Configuration object for C#/Nuget",
"type": "object",
"default": {
"fileMatch": ["\\.csproj$"]
},
"$ref": "#"
},
"homebrew": {
"description": "Configuration object for homebrew",
"type": "object",
"default": {
"commitMessageTopic": "Homebrew Formula {{depName}}",
"managerBranchPrefix": "homebrew-",
"fileMatch": ["^Formula/[^/]+[.]rb$"]
},
"$ref": "#"
},
"hostRules": {
"description": "Host rules/configuration including credentials",
"type": "array",
"items": {
"allOf": [
{
"type": "object",
"properties": {
"hostType": {
"description": "hostType for a package rule. Can be a platform name or a datasource name",
"type": "string"
},
"domainName": {
"description": "Domain name for a host rule. e.g. \"docker.io\"",
"type": "string"
},
"hostName": {
"description": "Hostname for a host rule. e.g. \"index.docker.io\"",
"type": "string"
},
"baseUrl": {
"description": "baseUrl for a host rule. e.g. \"https://api.github.com/\"",
"type": "string"
},
"timeout": {
"description": "timeout (in milliseconds) for queries to external endpoints",
"type": "integer"
},
"insecureRegistry": {
"description": "explicity turn on insecure docker registry access (http)",
"type": "boolean"
}
}
}
]
},
"default": [
{
"timeout": 60000
}
]
},
"prBodyDefinitions": {
"description": "Table column definitions for use in PR tables",
"type": "object",
"default": {
"Package": "{{{depNameLinked}}}",
"Type": "{{{depType}}}",
"Update": "{{{updateType}}}",
"Current value": "{{{currentValue}}}",
"New value": "{{{newValue}}}",
"Change": "`{{{displayFrom}}}` -> `{{{displayTo}}}`",
"References": "{{{references}}}",
"Package file": "{{{packageFile}}}"
}
},
"prBodyColumns": {
"description": "List of columns to use in PR bodies",
"type": "array",
"default": ["Package", "Type", "Update", "Change"]
},
"prBodyNotes": {
"description": "List of additional notes/templates to be included in the Pull Request bodies.",
"type": "array",
"items": {
"type": "string"
},
"default": []
},
"suppressNotifications": {
"description": "Options to suppress various types of warnings and other notifications",
"type": "array",
"default": ["deprecationWarningIssues"]
},
"swift": {
"description": "Configuration for Package.swift files",
"type": "object",
"default": {
"fileMatch": ["(^|/)Package\\.swift"],
"versionScheme": "swift",
"rangeStrategy": "bump"
},
"$ref": "#"
},
"pruneStaleBranches": {
"description": "Enable or disable pruning of stale branches",
"type": "boolean",
"default": true
},
"unicodeEmoji": {
"description": "Enable or disable Unicode emoji",
"type": "boolean",
"default": false
},
"gitLabAutomerge": {
"description": "Enable or disable usage of GitLab's \"merge when pipeline succeeds\" feature when automerging PRs",
"type": "boolean",
"default": false
}
}
}