@sammcj/renovate-config
My shareable config for Renovate
Setup
- Enable Renovate in your repo
- Add this repo to
extends
in yourrenovate.json
.
{
"extends": ["github>sammcj/renovate-config"]
}
You don't have to do npm i -D @sammcj/renovate-config
- Renovate fetches it from this GitHub repo automatically.
Note: By default my config auto-merges pin/minor/patch updates if the checks pass and there isn't a CODEOWNERS file preventing it.
Presets
github>sammcj/renovate-config
(default
)
General
- Automerge (if there's no CODEOWNERS preventing it).
- Package pinning if tests pass.
- Patch upgrades if tests pass.
- Non-major Github Actions updates.
- Ignore
node_modules
,bower_components
, and various test/tests directories. - Automagically rebase stale PRs.
- Apply label
renovate
to PRs. - Limit to maximum 10 concurrent Renovate PRs at any time.
- Wait until branch tests have passed or failed before creating the PR.
- If semantic commits detected, use semantic commit type
fix
for deps and peerDeps,chore
for all others. - Use
Australia/Melbourne
timezone. - Enable the Renovate Dependency Dashboard.
- Use conventional commits with fix, deps and chore scopes.
- Enable docker tag updates (preview feature).
- Enable docker-compose updates (preview feature).
Grouping:
- Group preset monorepo packages updates.
- Group preset aws-cdk packages updates.
- Group present aws-sdk-js-v3 packages updates.
- Group Github Actions updates.
- Group preset jekyll ecosystem packages updates.
- Group Dockerfile and Docker-Compose updates.
for npm
- Separate major, minor and patch releases of dependencies into individual branches/PRs.
- Set a status check to warn when npmjs.com packages are less than < 72 hours old and as such are allowed to be unpublished.
- Run
npm dedupe
after package-lock.json updates. - Disable major upgrade of
@types/node
(e.g. v16 to v17). - Upgrade semver ranges to latest version even if latest version satisfies existing range.
- Group ESLint, ESLint configs, ESLint plugins and Prettier together.
- Automerge minor updates of widely used libraries like
mocha
in devDependencies. - Replace the deprecated bable-eslint with @babel/eslint-parser if found.
for lock file maintenance
- Run following schedule: before 3am every Saturday
References
- Renovate Docs
- Configuration Options | Renovate Docs
- Default Presets | Renovate Docs
- Other shareable configs in GitHub
-
RunKit + npm: later: later is a parser that used to parse
schedule
in renovate - teppeis/renovate-config
License
MIT License: Sam McLeod