{ extends: [ "config:base", "schedule:earlyMondays" ], automerge: false, platformAutomerge: false, labels: ["dependencies"], postUpdateOptions: ["gomodTidy", "yarnDedupeHighest"], prHourlyLimit: 0, prConcurrentLimit: 5, packageRules: [ // e2e test depends on testing/Dockefile testing-image which has conftest specific version. // to upgrade conftest versions, we need following PRs. // 1. update testing/Dockerfile conftest version // 2. update testing-env tag // 3. update e2e conftest version // this settings allow to create only testing/Dockefile contest version update PR which uses branch prefix. { matchPaths: ["testing/**"], matchPackagePatterns: ["conftest"], additionalBranchPrefix: "{{baseDir}}-", groupName: "conftest-testing", prBodyNotes: [ ":warning: You need to upgrade testing-env conftest firstly, then upgrade other conftest versions for e2e :warning:", ], }, { ignorePaths: ["testing/**"], matchPackagePatterns: ["github-actions"], groupName: "github-", }, { // we need to upgrade testing-env on ci quickly matchPackageNames: ["ghcr.io/runatlantis/testing-env"], groupName: "testing-env-ci-test", schedule: ["every 1 hour after 00:00 and before 23:59 every day"], }, { // use LTS node version for node docker image matchDatasources: ["docker"], matchPackageNames: ["node", "cimg/node"], versioning: "node", }, ], // https://docs.renovatebot.com/modules/manager/regex/ regexManagers: [ { fileMatch: ["(^|/)Dockerfile$", "(^|/)Dockerfile\\.[^/]*$"], matchStrings: [ // example: // renovate: datasource=github-releases depName=hashicorp/terraform versioning=hashicorp // ENV DEFAULT_TERRAFORM_VERSION=x.x.x "renovate: datasource=(?.*?) depName=(?.*?)( versioning=(?.*?))?\\sENV .*?_VERSION=(?.*)\\s", ], versioningTemplate: "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}", extractVersionTemplate: '^v(?\\d+\\.\\d+\\.\\d+)', }, { fileMatch: [".*go$"], matchStrings: [ // example: // const ConftestVersion = "x.x.x" // renovate: datasource=github-releases depName=open-policy-agent/conftest "\\sconst .*Version = \"(?.*)\"\\s// renovate: datasource=(?.*?) depName=(?.*?)( versioning=(?.*?))?\\s", ], versioningTemplate: "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}", extractVersionTemplate: '^v(?\\d+\\.\\d+\\.\\d+)', }, { fileMatch: [".circleci/config.yml$"], matchStrings: [ // example: // # renovate: datasource=github-releases depName=hashicorp/terraform versioning=hashicorp // TRRAFORM_VERSION: x.x.x "renovate: datasource=(?.*?) depName=(?.*?)( versioning=(?.*?))?\\s.*?_VERSION: (?.*)\\s", ], versioningTemplate: "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}", extractVersionTemplate: '^v(?\\d+\\.\\d+\\.\\d+)', }, ] }