Skip to content

About

Ready-to-use configuration presets for projects managed with Renovate

Topics

Resources

Contributing

Stars

1 star

Watchers

5 watching

Forks

Repository files navigation

Renovate Config

CGL

This repository provides some configuration presets for Renovate-managed projects developed at CPS GmbH.

🚒 Configuration presets

This repository provides various configuration presets. You can reference all presets like this in your renovate.json file:

{
    "extends": [
        "github>CPS-IT/renovate-config:<preset>"
    ]
}

Replace <preset> with the basename of the configuration file to be used, e.g. github>CPS-IT/renovate-config:typo3-project. For the default preset, you can leave out the preset name. Consult the official documentation for deeper insights.

Default preset

πŸ’» Config file: default.json
➑️ Reference: github>CPS-IT/renovate-config

Usage

{
    "$schema": "https://docs.renovatebot.com/renovate-schema.json",
    "extends": ["github>CPS-IT/renovate-config"]
}

Description

This preset provides a solid base configuration for all projects developed at CPS GmbH. Consider using more specific presets in your projects since they might be better suited.

Key configuration

Configuration key Value Description
:automergePatch Preset Automerge patch upgrades if they pass tests
:automergeRequireAllStatusChecks Preset Require successful CI for auto-merge
:rebaseStalePrs Preset Rebase PRs if they're behind base branch
:separatePatchReleases Preset Separate patch and minor releases into separate PRs
schedule:weekdays Preset Schedule one Renovate run per weekday (triggered by renovate/renovate-runner>)
configMigration true Enables migration of Renovate config on a repository basis
lockFileMaintenance {"enabled": true} Enable dependency updates of all locked dependencies, including transitive dependencies
osvVulnerabilityAlerts true Enable vulnerability alerts fetched from https://osv.dev
prConcurrentLimit 10 Limit concurrent PRs to 10
labels ["dependencies"] Always add dependencies label to PRs

Package rules

Ruleset Matching packages Description
Development packages devDependencies, require-dev All packages used for development, updates in minor and patch range will be automerged
PHP version updates php PHP version will be widened and automerge is disabled
GitHub artifact actions actions/*-artifact GitHub actions to upload and download artifacts are grouped to a single PR
PHPStan packages phpstan/*, various PHPStan extensions PHPStan and extensions, will be grouped as PHPStan
PHPUnit packages phpunit/*, sebastian/* PHPStan and related packages, will be grouped as PHPUnit
Rector packages rector/*, ssch/typo3-rector Rector Core and TYPO3 Rector, will be grouped as Rector
Guzzle packages guzzlehttp/* Guzzle packages, will be grouped as Guzzle
Minimum release age (Composer) All except cps/*, cpsit/* and fr/* Third-party packages with minimum release age of 3 days

Git Flow preset

πŸ’» Config file: git-flow.json
➑️ Reference: github>CPS-IT/renovate-config:git-flow

Usage

{
    "$schema": "https://docs.renovatebot.com/renovate-schema.json",
    "extends": ["github>CPS-IT/renovate-config:git-flow"]
}

Description

Use this preset for Git Flow managed projects.

Key configuration

Configuration key Value Description
baseBranchPatterns ["develop"] Overrides base branch to develop (will be used as target branch in PRs)

GitLab CI only preset

πŸ’» Config file: gitlab-ci-only.json
➑️ Reference: github>CPS-IT/renovate-config:gitlab-ci-only

Usage

{
    "$schema": "https://docs.renovatebot.com/renovate-schema.json",
    "extends": ["github>CPS-IT/renovate-config:gitlab-ci-only"]
}

Description

Use this preset to enable updates in GitLab CI files only.

TYPO3 extension preset

πŸ’» Config file: typo3-extension.json
➑️ Reference: github>CPS-IT/renovate-config:typo3-extension

Usage

{
    "$schema": "https://docs.renovatebot.com/renovate-schema.json",
    "extends": ["github>CPS-IT/renovate-config:typo3-extension"]
}

Description

Use this preset for TYPO3 extensions.

Key configuration

Configuration key Value Description
rangeStrategy widen Widen the range with newer one

Package rules

Ruleset Matching packages Description
TYPO3 system extensions typo3/cms-* TYPO3 system extensions, will be grouped as TYPO3 CMS

TYPO3 project preset

πŸ’» Config file: typo3-project.json
➑️ Reference: github>CPS-IT/renovate-config:typo3-project

Usage

{
    "$schema": "https://docs.renovatebot.com/renovate-schema.json",
    "extends": ["github>CPS-IT/renovate-config:typo3-project"]
}

Description

Use this preset for TYPO3 projects (bundles).

Key configuration

Configuration key Value Description
rangeStrategy in-range-only Update the lock file when in-range updates are available, ignore package file updates

Package rules

Ruleset Matching packages Description
TYPO3 system extensions typo3/cms-* TYPO3 system extensions, no major updates, will be grouped as TYPO3 CMS

πŸ’Ž Credits

All config presets are heavily inspired by the glorious config repository from Pagemachine. If you like it, consider starring this repository.

πŸ§‘β€πŸ’» Contributing

Please have a look at CONTRIBUTING.md.

⭐ License

This project is licensed under GNU General Public License 3.0 (or later).

About

Ready-to-use configuration presets for projects managed with Renovate

Topics

Resources

Contributing

Stars

1 star

Watchers

5 watching

Forks

Releases

Used by

Contributors