Skip to content

Renovate

Renovate #454

Workflow file for this run

---
#
# PLEASE NOTE: Managed workflow - do not change manually
#
name: Renovate
on:
workflow_dispatch:
inputs:
dryRun:
type: boolean
description: "Dry-Run"
logLevel:
type: choice
description: "Log-Level"
default: debug
options:
- info
- debug
- trace
push:
branches:
- master
# branches that can be used for dry-runs
- ci/renovate
- ci/renovate/*
# exclude branches created by renovate (by convention, requires respective config for renovate)
- "!renovate/*"
# explicitly include special branch for renovate config change PRs
# see https://docs.renovatebot.com/config-validation/#validation-of-renovate-config-change-prs
- "renovate/reconfigure"
schedule:
- cron: "0 0,2,4 * * 0"
env:
# https://docs.renovatebot.com/troubleshooting/#log-debug-levels
LOG_LEVEL: "${{ inputs.logLevel || 'debug' }}"
# https://docs.renovatebot.com/self-hosted-configuration/#repositories
RENOVATE_REPOSITORIES: ${{ github.repository }}
# https://docs.renovatebot.com/self-hosted-configuration/#username
# If using a GitHub App as we do, the username needs to be the app name + [bot] (otherwise it fails to identify existing PRs)
# see https://github.com/renovatebot/renovate/discussions/13708#discussioncomment-2013249
RENOVATE_USERNAME: we-renovate[bot] # ${{ github.repository_owner }}
# https://docs.renovatebot.com/configuration-options/#platformcommit
RENOVATE_PLATFORM_COMMIT: "true"
# https://docs.renovatebot.com/self-hosted-configuration/#dryrun
# Run renovate in dry-run mode if executed in branches other than master - prevents versions in PRs/branches from being updated
RENOVATE_DRY_RUN: "${{ inputs.dryRun || ( github.head_ref || github.ref_name ) != 'master' || false }}"
# Allow calling Gradle wrapper (required since Renovate 43)
# https://docs.renovatebot.com/self-hosted-configuration/#allowedunsafeexecutions
RENOVATE_ALLOWED_UNSAFE_EXECUTIONS: '["gradleWrapper"]'
# https://docs.renovatebot.com/self-hosted-configuration/#githubcomtoken
# Required for fetching changelogs/release notes from github.com: Renovate
# authenticates as a GitHub App, whose installation token cannot read repos
# outside the org (e.g. third-party deps), so those requests would otherwise
# be unauthenticated and hit GitHub's 60 req/h anonymous rate limit. Applies
# to all repos (public and private), hence outside the `if private` block.
# (RENOVATE_GITHUB_COM_TOKEN is the supported spelling; GITHUB_COM_TOKEN is deprecated.)
RENOVATE_GITHUB_COM_TOKEN: ${{ secrets.GH_PAT_READ_WETRANSFORM }}
# Renovate Automerge
# RENOVATE_AUTOMERGE_TYPE: "branch"
# RENOVATE_AUTOMERGE: "true"
permissions: read-all
jobs:
renovate:
timeout-minutes: 40
runs-on: ubuntu-latest
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-token
with:
# see https://github.com/renovatebot/renovate/blob/47c8501c412c2f53f61ca292a5039f5939c32c5d/lib/modules/platform/github/readme.md?plain=1#L28
app-id: ${{ secrets.WE_RENOVATE_GITHUB_APP_ID }}
private-key: "${{ secrets.WE_RENOVATE_GITHUB_PRIVATE_KEY }}"
- name: 💡 Self-hosted Renovate
uses: renovatebot/github-action@e09d604f8f803bb527bd8321ed5be06c460b8682 # v46.2.2
with:
token: "${{ steps.app-token.outputs.token }}"