Skip to content

Renovate

Renovate #11858

Workflow file for this run

---
# Renovate this repository if Renovate-specific tasks are checked or if dispatched.
name: Renovate
'on':
issues:
types: [edited]
pull_request:
types: [edited]
push:
branches: ['**']
schedule:
- cron: '0 * * * *' # Run every hour
workflow_call:
inputs:
log_level:
description: Log level
type: string
default: debug
path_filters:
description: List of paths to filter for checking for changes
type: string
print_config:
description: Log the fully-resolved Renovate config for each repository, plus fully-resolved presets.
type: boolean
default: false
renovate_app_slug:
description: GitHub App slug
type: string
secrets:
APPLICATION_ID:
description: GitHub App ID
required: true
APPLICATION_PRIVATE_KEY:
description: GitHub App private key
required: true
workflow_dispatch:
inputs:
log_level:
description: Log level
type: string
default: debug
path_filters:
description: List of paths to filter for checking for changes
type: string
print_config:
description: Log the fully-resolved Renovate config for each repository, plus fully-resolved presets.
type: boolean
default: false
workflow_run:
branches: [main]
types: [completed]
workflows: [Main]
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.run_number || github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
renovate:
name: Renovate
if: >-
(github.event_name != 'issues' && github.event_name != 'pull_request') ||
(github.event_name != 'issues' && contains(github.event.*.labels.*.name, 'renovate')) ||
(
contains(join(github.event.*.body, ''), '- [x] <!-- approve-all-pending-prs -->') ||
contains(join(github.event.*.body, ''), '- [x] <!-- approve-branch=') ||
contains(join(github.event.*.body, ''), '- [x] <!-- approvePr-branch=') ||
contains(join(github.event.*.body, ''), '- [x] <!-- create-all-rate-limited-prs -->') ||
contains(join(github.event.*.body, ''), '- [x] <!-- create-config-migration-pr -->') ||
contains(join(github.event.*.body, ''), '- [x] <!-- manual job -->') ||
contains(join(github.event.*.body, ''), '- [x] <!-- other-branch=') ||
contains(join(github.event.*.body, ''), '- [x] <!-- rebase-all-open-prs -->') ||
contains(join(github.event.*.body, ''), '- [x] <!-- rebase-branch=') ||
contains(join(github.event.*.body, ''), '- [x] <!-- rebase-check -->') ||
contains(join(github.event.*.body, ''), '- [x] <!-- recreate-branch=') ||
contains(join(github.event.*.body, ''), '- [x] <!-- retry-branch=') ||
contains(join(github.event.*.body, ''), '- [x] <!-- unlimit-branch=') ||
contains(join(github.event.*.body, ''), '- [x] <!-- unschedule-branch=')
)
env:
WORKFLOW_LOG_LEVEL: debug
default_path_filters: "['.github/workflows/renovate.yaml', '.github/renovate.json5']"
runs-on: ubuntu-latest
steps:
- if: github.event_name == 'push'
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- id: filter
if: github.event_name == 'push'
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
with:
filters: |
changes: ${{ inputs.path_filters != '' && inputs.path_filters || env.default_path_filters }}
- name: Renovate
env:
autodiscover: >-
${{ github.event.repository.name == '.github' && !contains('["issues", "pull_request"]', github.event_name) && github.ref == 'refs/heads/main' }}
dry_run: ${{ github.event_name == 'push' && github.ref != 'refs/heads/main' }}
if: >-
${{ !contains('["push", "workflow_run"]', github.event_name) || github.event.workflow_run.conclusion == 'success' || steps.filter.outputs.changes == 'true' }}
uses: bfra-me/renovate-action@v4
with:
autodiscover: ${{ env.autodiscover }}
branch: ${{ (github.ref_name != github.event.repository.default_branch || env.dry_run == 'true') && github.ref_name || '' }}
cache: true
dry-run: ${{ env.dry_run }}
log-level: ${{ inputs.log_level || env.autodiscover == 'true' && 'info' || env.WORKFLOW_LOG_LEVEL }}
print-config: ${{ inputs.print_config }}
renovate-app-id: ${{ secrets.APPLICATION_ID }}
renovate-app-private-key: ${{ secrets.APPLICATION_PRIVATE_KEY }}
timeout-minutes: 15