version: 2

multi-ecosystem-groups:
  all-dependencies:
    schedule:
      interval: "weekly"
      day: "friday"
      time: "17:00"
      timezone: "Europe/Zurich"
    labels:
      - "dependencies"
    open-pull-requests-limit: 2
    pull-request-branch-name:
      separator: "-"
    commit-message:
      prefix: "chore"
      include: "scope"

updates:
  - package-ecosystem: "github-actions"
    directory: "/"
    patterns: ["*"]
    multi-ecosystem-group: "all-dependencies"
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major"]
    cooldown:
      default-days: 7

  - package-ecosystem: "gomod"
    directory: "/backend"
    patterns: ["*"]
    multi-ecosystem-group: "all-dependencies"
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major"]
    cooldown:
      default-days: 7

  - package-ecosystem: "npm"
    directory: "/"
    patterns: ["*"]
    multi-ecosystem-group: "all-dependencies"
    versioning-strategy: "increase-if-necessary"
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major"]
    cooldown:
      default-days: 7

  - package-ecosystem: "docker"
    directories:
      - "/docker"
      - "/tests/setup"
    patterns: ["*"]
    multi-ecosystem-group: "all-dependencies"
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major"]
    cooldown:
      default-days: 7

  - package-ecosystem: "docker-compose"
    directories:
      - "/"
      - "/tests/setup"
    patterns: ["*"]
    multi-ecosystem-group: "all-dependencies"
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major"]
    cooldown:
      default-days: 7

  - package-ecosystem: "devcontainers"
    directory: "/"
    patterns: ["*"]
    multi-ecosystem-group: "all-dependencies"
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major"]
    cooldown:
      default-days: 7
