Skip to content

Renovate

Renovate #140

Workflow file for this run

name: Renovate
on:
# Allows manual/automated trigger for debugging purposes
workflow_dispatch:
inputs:
logLevel:
description: "Renovate's log level"
required: true
default: "info"
type: string
schedule:
- cron: '0 8 * * *'
permissions:
contents: read
env:
LOG_LEVEL: "info"
# The Renovate version, used by both the config validator and the bot itself
# (see renovate-version below), so validation can't disagree with what runs.
# Renovate keeps this current - see the customManager in renovate.json5.
RENOVATE_VERSION: "44.75.2"
jobs:
renovate:
runs-on: ubuntu-latest
if: |
!github.event.repository.fork &&
!github.event.pull_request.head.repo.fork
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
# Don't waste time starting Renovate if JSON is invalid
- name: Validate Renovate JSON
run: npx --yes --package "renovate@${RENOVATE_VERSION}" -- renovate-config-validator
- name: Get token
id: get-github-app-token
uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3
with:
app-id: ${{ secrets.RENOVATE_GITHUB_APP_ID }}
private-key: ${{ secrets.RENOVATE_GITHUB_APP_PRIVATE_KEY }}
- name: Self-hosted Renovate
uses: renovatebot/github-action@37beffda261423addd537c33f2d126df7f6ffbab # v46.2.6
env:
RENOVATE_REPOSITORIES: ${{ github.repository }}
# Use GitHub API to create commits
RENOVATE_PLATFORM_COMMIT: "true"
LOG_LEVEL: ${{ github.event.inputs.logLevel || env.LOG_LEVEL }}
RENOVATE_ALLOWED_COMMANDS: '["^crossplane-nix .+"]'
with:
configurationFile: .github/renovate.json5
renovate-version: ${{ env.RENOVATE_VERSION }}
token: '${{ steps.get-github-app-token.outputs.token }}'
mount-docker-socket: true
docker-user: root
docker-cmd-file: .github/renovate-entrypoint.sh