renovate.json5 (54 lines of code) (raw):

{ $schema: "https://docs.renovatebot.com/renovate-schema.json", extends: [ "config:recommended", ":semanticCommits", ":semanticCommitTypeAll(fix)", ":enableVulnerabilityAlertsWithLabel(SECURITY)", ], npm: { minimumReleaseAge: "3 days", }, customManagers: [ { customType: "regex", description: "Update _VERSION variables in Dockerfiles, shell scripts", fileMatch: [ "(^|/|\\.)([Dd]ocker|[Cc]ontainer)file$", "(^|/)([Dd]ocker|[Cc]ontainer)file[^/]*$", "(^|/).*\\.sh$", ], matchStrings: [ // for Dockerfiles and shell script files, match the renovate: specially formatted comment line followed by a capitalized variable with a _VERSION suffix eg: // # renovate: datasource=somesource packageName=somename versioning=someversioning // ARG PACKAGENAME_VERSION=1.2.3 // https://regex101.com/r/ntfy3f/1 '# renovate: datasource=(?<datasource>\\S+?)(?:\\s+depName=(?<depName>\\S+?))?\\s+packageName=(?<packageName>\\S+?)\\s+(?:versioning=(?<versioning>\\S+))\\s(?:(?:ARG|ENV)\\s+)?\\S+_VERSION="?(?<currentValue>\\S+)"?', ], }, ], packageRules: [ { description: "Do not create PRs for nodejs/npm engine updates", matchPackageNames: ["node", "npm"], matchDepTypes: ["engines"], dependencyDashboardApproval: true, groupName: "npm-engine-versions", }, { description: "Group updates for all NPM packages", matchDatasources: ["npm"], groupName: "npm-packages", matchPackageNames: ["!npm", "!node"], }, { matchDatasources: ["terraform-module", "terraform-provider"], groupName: "terraform", }, { matchDatasources: ["docker"], groupName: "docker-containers", }, ], rangeStrategy: "bump", }