|
All checks were successful
Validate presets / validate (push) Successful in 5s
ci/README.md describes the inputs and the behaviour of the workflow and container-build components. A project refers to a tag, so a change to main does not change all pipelines at the same time. default.json gets a regex manager that proposes a new tag of this repository in a .gitlab-ci.yml, also for a patch release. |
||
|---|---|---|
| .forgejo/workflows | ||
| ci | ||
| docs | ||
| default.json | ||
| opentofu.json | ||
| README.md | ||
| weekly.json | ||
renovate-config
The shared Renovate configuration for Digilab. Each project that uses Renovate extends
default.json from this repository. The project keeps only the rules that apply to it.
Use
Put this renovate.json in the root of the project:
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"https://code.digitaledienst.overheid.nl/digilab/renovate-config/raw/branch/main/default.json"
]
}
Add the rules of the project after the extends list. A rule in the project wins over a rule in
the preset.
Renovate runs against GitLab, so a project must use the raw URL. forgejo> reads from
codeberg.org only. When Renovate runs against Forgejo, use local>digilab/renovate-config. See
ADR 0002.
Presets
| Preset | Purpose | Decision |
|---|---|---|
default.json |
The baseline for every project | ADR 0001 |
weekly.json |
Weekly updates for a project that gives Renovate little attention. Security fixes still arrive every day. | ADR 0006 |
opentofu.json |
Terraform providers from the OpenTofu registry |
default.json contains these rules:
| Rule | Decision |
|---|---|
osvVulnerabilityAlerts, with the label security |
ADR 0003 |
| No patch updates. Security fixes still arrive. | ADR 0003 |
| No digest-only updates for a versioned tag | ADR 0004 |
| npm releases wait 7 days | ADR 0005 |
To use more than one preset, list them in order:
{
"extends": [
"https://code.digitaledienst.overheid.nl/digilab/renovate-config/raw/branch/main/default.json",
"https://code.digitaledienst.overheid.nl/digilab/renovate-config/raw/branch/main/weekly.json"
]
}
Change a preset
A change to main reaches every project on the next Renovate run. An invalid preset stops
Renovate in every project that extends it.
- Make the change in a branch.
- Make sure that the pipeline passes. It runs
renovate-config-validator --stricton each preset. - Write an ADR for a new decision. Put it in
docs/adr. - Tell the teams before you merge a change to a shared rule.
To test a change on one project first, refer that project to the branch:
…/raw/branch/<branch>/default.json.
Keep the Renovate version in the pipeline the same as the version of the operator in
platform/flux/core.
CI components
This repository will also hold the reusable CI components for the projects in the group. See
docs/ci-components.md for the analysis and the proposal, and
ADR 0007 for the decision.
Background
Issue #1368 describes the problem and the rollout.