From cffded3848d1dea96206423fce22ecc452d9b85e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Chrobot?= <124174716+michalChrobot@users.noreply.github.com> Date: Thu, 6 Feb 2025 15:29:35 +0100 Subject: [PATCH] chore: enabling renovate bot on develop (#3192) * Renovate setup files * Corrected cron and comment * Added renovate configuration targeting both develop branches * Update renovate.json5 --------- Co-authored-by: Noel Stephens --- .github/renovate.json5 | 37 ++++++++++++++++++++++ .github/workflows/renovate-validation.yml | 38 +++++++++++++++++++++++ .github/workflows/renovate.yml | 33 ++++++++++++++++++++ 3 files changed, 108 insertions(+) create mode 100644 .github/renovate.json5 create mode 100644 .github/workflows/renovate-validation.yml create mode 100644 .github/workflows/renovate.yml diff --git a/.github/renovate.json5 b/.github/renovate.json5 new file mode 100644 index 0000000000..8d39de48b1 --- /dev/null +++ b/.github/renovate.json5 @@ -0,0 +1,37 @@ +{ + "baseBranches": ["develop", "develop-2.0.0"], + + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "local>unity/renovate-config" + ], + "prConcurrentLimit": 100, + // Ignore commits produced by github actions workflows + "gitIgnoredAuthors": ["githubaction@githubaction.com"], + "ignorePaths": [ + "**/node_modules/**", + // Don't renovate files in special folders using ~ as suffix + "**/*~/**" + ], + "packageRules": [ + // Run unity-upm-project and unity-upm-package only on weekends to reduce PR noise + // Also ensure dependencies won't be downgraded when they don't exist in the public repositories + { + "matchManagers": [ + "unity-upm-project", + "unity-upm-package" + ], + "enabled": "true", + "schedule": [ + "every weekend" + ], + "rollbackPrs": false + }, + + // Enable automerge for Bokken image updates + { + "matchDatasources": ["unity-bokken"], + "automerge": false, + }, + ], +} diff --git a/.github/workflows/renovate-validation.yml b/.github/workflows/renovate-validation.yml new file mode 100644 index 0000000000..9ef821bcbd --- /dev/null +++ b/.github/workflows/renovate-validation.yml @@ -0,0 +1,38 @@ +# This workflow is for validating the Renovate configuration and docker image +# updates for it. +name: Renovate Validation +on: + workflow_dispatch: + inputs: + log-level: + type: choice + description: Select log level for Renovate + options: + - trace + - debug + - info + - warn + - error + default: info + required: false + pull_request: + paths: + # we trigger validation on any changes to the renovate workflow files + - .github/workflows/renovate*.yml + # as well as for any possible location for the renovate config file + - .github/renovate.json? + + +jobs: + renovate-validation: + # The reusable workflow will be updated by renovate if there's a new version + uses: Unity-Technologies/renovate-workflows/.github/workflows/run.yml@v5.0.0 + with: + # This is the image that contains our custom renovate and will be auto + # updated by Renovate itself. + image: europe-docker.pkg.dev/unity-cds-services-prd/ds-docker/renovate:10.1.3@sha256:fdeed7bb524bd67611eb91ee1a5e990c8c73ed62c84a0cd5ef66c87eb5fd0d70 + dry-run: full + log-level: ${{ github.event.inputs.log-level }} + secrets: + renovate-auth-secret: ${{ secrets.RENOVATE_AUTH_SECRET }} + github-com-token: ${{ secrets.GH_COM_TOKEN }} diff --git a/.github/workflows/renovate.yml b/.github/workflows/renovate.yml new file mode 100644 index 0000000000..f859c46a94 --- /dev/null +++ b/.github/workflows/renovate.yml @@ -0,0 +1,33 @@ +# This workflow runs Renovate against the current repo and will create PRs with outdated dependencies. +name: Renovate + +on: + workflow_dispatch: + inputs: + log-level: + type: choice + description: Select log level for Renovate + options: + - trace + - debug + - info + - warn + - error + default: info + required: false + schedule: + # Every 6 hours at the 6th minute. + - cron: '06 */6 * * *' + +jobs: + renovate: + # The reusable workflow will be updated by renovate if there's a new version + uses: Unity-Technologies/renovate-workflows/.github/workflows/run.yml@v5.0.0 + with: + # This is the image that contains our custom renovate and will be auto + # updated by Renovate itself. + image: europe-docker.pkg.dev/unity-cds-services-prd/ds-docker/renovate:10.1.3@sha256:fdeed7bb524bd67611eb91ee1a5e990c8c73ed62c84a0cd5ef66c87eb5fd0d70 + log-level: ${{ github.event.inputs.log-level }} + secrets: + renovate-auth-secret: ${{ secrets.RENOVATE_AUTH_SECRET }} + github-com-token: ${{ secrets.GH_COM_TOKEN }} \ No newline at end of file