Skip to content
Snippets Groups Projects
renovate.json 3.97 KiB
{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": [
    "config:best-practices",
    "docker:enableMajor",
    ":prHourlyLimitNone",
    "regexManagers:dockerfileVersions",
    "replacements:all",
    ":gomod",
    "security:openssf-scorecard",
    ":enableVulnerabilityAlertsWithLabel(security)",
    ":assignee(sheogorath)"
  ],
  "prConcurrentLimit": 20,
  "semanticCommits": "enabled",
  "osvVulnerabilityAlerts": true,
  "flux": {
    "fileMatch": [
      "\\.yaml$"
    ]
  },
  "kubernetes": {
    "fileMatch": [
      "apps/.+\\.yaml$",
      "clusters/.+\\.yaml$",
      "shared/components/.+\\.yaml$",
      "infrastructure/.+\\.yaml$"
    ]
  },
  "gitlabci": {
    "fileMatch": [
      "\\.gitlab-ci\\.yml$",
      "gitlab-ci\\.yaml$"
    ]
  },
  "customManagers": [
    {
      "customType": "regex",
      "fileMatch": [
        "Earthfile$"
      ],
      "matchStrings": [
        "FROM\\s+(?<depName>[a-z0-9.\\/-]+):?(?<currentValue>[a-z0-9-.]+)?@?(?<currentDigest>sha256:[a-f0-9]+)?"
      ],
      "datasourceTemplate": "docker",
      "versioningTemplate": "docker"
    },
    {
      "customType": "regex",
      "fileMatch": [
        "images/mirror/Earthfile$"
      ],
      "matchStrings": [
        "DO \\+MIRROR --image=\"?'?(?<depName>[^:\\s]+?):(?<currentValue>[a-z0-9-.]+?)?@?(?<currentDigest>sha256:[a-f0-9]+)?\"?'?\\s"
      ],
      "datasourceTemplate": "docker",
      "versioningTemplate": "docker"
    },
    {
      "customType": "regex",
      "fileMatch": [
        "\\.yaml$"
      ],
      "matchStrings": [
        "# renovate:\\n\\s+image: \"?'?(?<depName>[^:\\s]+?):(?<currentValue>[^\"]*?)\"?'?\\s"
      ],
      "datasourceTemplate": "docker",
      "versioningTemplate": "docker"
    },
    {
      "customType": "regex",
      "fileMatch": [
        "\\.yaml$"
      ],
      "matchStrings": [
        "# renovate: datasource=(?<datasource>[a-z-.]+?) depName=(?<depName>[^\\s]+?)(?: (lookupName|packageName)=(?<packageName>[^\\s]+?))?(?: versioning=(?<versioning>[^\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\s]+?))?\\s+\\S+?: \"?(?<currentValue>.+?)\"?\\s"
      ]
    },
    {
      "customType": "regex",
      "fileMatch": [
        "terraform/hedgedoc-demo/templates/docker-compose.tpl$"
      ],
      "matchStrings": [
        "# renovate:\\n\\s+image: \"?'?(?<depName>[^:\\s]+?):(?<currentValue>[^\"]*?)\"?'?\\s"
      ],
      "datasourceTemplate": "docker",
      "versioningTemplate": "docker"
    },
    {
      "customType": "regex",
      "fileMatch": [
        "Chart\\.yaml$"
      ],
      "matchStrings": [
        "# renovate:\\s+image=(?<depName>[^:\\s]+?)\\nappVersion:\\s+\"?'?(?<currentValue>[^\"]*)\"?'?"
      ],
      "datasourceTemplate": "docker",
      "versioningTemplate": "docker"
    },
    {
      "customType": "regex",
      "fileMatch": [
        "Dockerfile$",
        "Earthfile$"
      ],
      "matchStrings": [
        "#\\s*renovate:\\s*datasource=(?<datasource>.*?) depName=(?<depName>.*?)( versioning=(?<versioning>.*?))?\\s+(ENV|ARG) .*?_VERSION=\"?(?<currentValue>.*)\"?\\s"
      ],
      "versioningTemplate": "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}"
    }
  ],
  "packageRules": [
    {
      "matchDatasources": [
        "docker"
      ],
      "matchPackageNames": [
        "quay.io/fedora/fedora",
        "docker.io/fedora",
        "docker.io/library/fedora",
        "registry.fedoraproject.org/fedora"
      ],
      "allowedVersions": "<40"
    },
    {
      "matchDatasources": [
        "helm"
      ],
      "matchPackageNames": [
        "rook-ceph",
        "rook-ceph-cluster"
      ],
      "groupName": "rook-ceph"
    },
    {
      "matchDatasources": [
        "helm"
      ],
      "matchPackageNames": [
        "longhorn"
      ],
      "minimumReleaseAge": "14 days"
    },
    {
      "matchFileNames": [
        "images/kos/**"
      ],
      "extends": [
        "docker:pinDigests"
      ]
    }
  ],
  "postUpdateOptions": [
    "helmUpdateSubChartArchives",
    "gomodTidy"
  ]
}