diff --git a/.github/renovate.json b/.github/renovate.json new file mode 100644 index 0000000..ae218ea --- /dev/null +++ b/.github/renovate.json @@ -0,0 +1,19 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "github>rancher/renovate-config//default#release" + ], + "baseBranchPatterns": [ + "master" + ], + "packageRules": [ + { + "matchBaseBranches": [ + "master" + ], + "extends": [ + "github>rancher/renovate-config//rancher-main#release" + ] + } + ] +} diff --git a/.github/workflows/renovate-vault.yml b/.github/workflows/renovate-vault.yml new file mode 100644 index 0000000..4deb89f --- /dev/null +++ b/.github/workflows/renovate-vault.yml @@ -0,0 +1,64 @@ +name: Renovate +on: + workflow_dispatch: + inputs: + logLevel: + description: "Override default log level" + required: false + default: info + type: choice + options: + - info + - debug + overrideSchedule: + description: "Override all schedules" + required: false + default: "false" + type: choice + options: + - "false" + - "true" + configMigration: + description: "Toggle PRs for config migration" + required: false + default: "true" + type: choice + options: + - "false" + - "true" + renovateConfig: + description: "Define a custom renovate config file" + required: false + default: ".github/renovate.json" + type: string + minimumReleaseAge: + description: "Override minimumReleaseAge for a one-time run (e.g., '0 days' to disable delay)" + required: false + default: "null" + type: string + + schedule: + - cron: '30 6 * * 1-5' + +permissions: {} + +jobs: + call-workflow: + permissions: + contents: read + id-token: write # Required for Vault OIDC authentication. + # https://github.com/rancher/renovate-config/releases + uses: rancher/renovate-config/.github/workflows/renovate-vault.yml@b20e059a3642b4f6add6f9db276349daca5ea54e # v1.0.10 + # Note: github.event.inputs. with '||' fallbacks is used across all inputs + # so that scheduled cron runs (where github.event.inputs is null) safely default. + with: + configMigration: ${{ github.event.inputs.configMigration || 'true' }} + logLevel: ${{ github.event.inputs.logLevel || 'info' }} + overrideSchedule: ${{ github.event.inputs.overrideSchedule || 'false' }} + renovateConfig: ${{ github.event.inputs.renovateConfig || '.github/renovate.json' }} + minimumReleaseAge: ${{ github.event.inputs.minimumReleaseAge || 'null' }} + secrets: + # Optional: RENOVATE_FORK_GH_TOKEN allows this action to run on repository forks where + # Vault/App token generation is unavailable. Defaulting to '' allows the caller + # to fall back gracefully on standard runs without failing secret evaluation. + override-token: "${{ secrets.RENOVATE_FORK_GH_TOKEN || '' }}"