{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "description": "Rules specific to the devtool (CI, dev environment...)",
  "packageRules": [
    {
      "description": "Enable updates from specified datasources",
      "matchDatasources": [
        "node-version",
        "golang-version"
      ],
      "enabled": true
    },
    {
      "description": "Enable updates from specified go modules",
      "matchDatasources": [
        "go"
      ],
      "matchPackageNames": [
        "github.com/golangci/golangci-lint/v2",
        "github.com/vektra/mockery/v3"
      ],
      "enabled": true
    },
    {
      "description": "Ignore gitops-engine: local replace (./gitops-engine), digest bumps are not applicable.",
      "matchDatasources": ["go"],
      "matchPackageNames": ["github.com/argoproj/argo-cd/gitops-engine"],
      "enabled": false
    },
    {
      "description": "Run make mockgen after updating mockery",
      "matchDatasources": [
        "go"
      ],
      "matchPackageNames": [
        "github.com/vektra/mockery/v3"
      ],
      "postUpgradeTasks": {
        "commands": ["make mockgen"],
        "fileFilters": ["**/*.go"],
        "executionMode": "branch"
      }
    },
    {
      "description": "Enable updates from specified github releases",
      "matchDatasources": [
        "github-releases"
      ],
      "matchPackageNames": [
        "gotestyourself/gotestsum"
      ],
      "enabled": true
    },
    {
      "description": "Enable updates from specified docker images",
      "matchDatasources": [
        "docker"
      ],
      "matchPackageNames": [
        "docker.io/library/node",
        "docker.io/library/golang"
      ],
      "enabled": true
    },
    {
      "description": "Group golang-version packages",
      "groupName": "group golang",
      "matchDatasources": [
        "docker",
        "golang-version"
      ],
      "matchPackageNames": [
        "/(?:^|/)golang$/"
      ]
    },
    {
      "description": "Group node-version packages",
      "groupName": "group node",
      "matchDatasources": [
        "docker",
        "node-version"
      ],
      "matchPackageNames": [
        "/(?:^|/)node$/",
        "!calico/node",
        "!docker.io/calico/node",
        "!kindest/node"
      ]
    },
    {
      "description": "Example to reduce noise with the automerge features.",
      "matchDatasources": [
        "golang-version"
      ],
      "matchUpdateTypes": [
        "patch",
        "pin",
        "digest"
      ],
      "automerge": false
    }
  ]
}
