This is Shareable Config Presets for SpotOn. It contains wide-use Renovatebot configs, based on our toolset and mindset.
If Renovate has already been activated for repo
-
Check for
renovate.json
in possible locations. -
Change
renovate
config to:{ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ "local>SpotOnInc/renovate-config" ] }
Go to step 3. below.
Otherwise:
-
If the repo is too much outdated - prefer to update manually as much as you can before merging Renovate init PR.
-
Activate Renovatebot Github App for your repo or ask Github org administrators.
-
Renovate will create [init PR for the new repo - open it and check that it has:
{ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ "local>SpotOnInc/renovate-config" ] }
-
(Optional) We recommend moving the config to
.github/renovate.json5
. -
Be sure that the
Dependency graph
andDependabot alerts
are enabled for the repo. Details. -
Merge PR and relax.
Renovate will create PRs based on provided schedules. By default - you will see Renovate PRs on Mondays.
To change the default config, please edit default.template.json5
and create PR.
default.json
will be automatically generated and added after your PR will be merged.
That needs to describe what settings do and save renovate-config/default.json
name magic which is not present for .json5
.
In case when new default.json
config does not apply more than 6 hours - create test repo and copy-paste the whole default.json
, but rename it to renovate.json
. Renovatebot will test the configuration and create issues if it found problems with the configuration. Or you can ask ChatGPT :)
- How Renovate find/create/update PRs
TL;DR: Renovatebot checks branch names and PR titles. If PR is not found to match the branch - Renovatebot will create a new PR.
To recreate closed PR - just rename closed PR.
-
- Organization level presets -
myorg/renovate-config/default.json
magic name - GitHub-hosted Presets
- Contributing to presets
- Preset Versioning
- Organization level presets -
-
Known limitations
Ie: GitHub hosted app Mend checks each active repository roughly every three hours, if no activity has been seen before then (merged PRs, etc).- No rebasing if you have made edits (conflicting with pre-commit auto-fixes)
-
onboardingConfigFileName (self-hosted only).
Useful to change onboarding Renovate config file location.
-
How to edit branch names, commit messages, PR titles, and PR content
-
Separate
patch
andminor
releases of dependencies into separate PRs.
More details here -
:pinVersions - maintain a single version only and not SemVer ranges
-
:rebaseStalePrs - Rebase existing PRs any time the base branch has been updated.