@nx-squeezer/renovate v3.1.5
@nx-squeezer/renovate
Tools to setup Renovate in Nx or Angular monorepos, check the documentation to see all available features.
Setup
npm install --save-dev @nx-squeezer/renovate
Generators
Setup Renovate
nx g @nx-squeezer/renovate:setup
Shareable config preset for Renovate. Angular and Nx dependencies require post upgrade tasks, then Renovate must be configured as self-hosted, an easy way to do it would be with Github Action Renovate.
You can find an example configuration here and GitHub workflow here.
For Nx projects it is recommended to use the default preset for Nx monorepos.
This generator will:
- Configure Renovate to run self-hosted by creating a GitHub Workflow Action.
- Upgrade the CI workflow to run on Renovate branches.
- Add badge to
README.md
.
Options:
- Force overwriting of configuration with
--force
(defaultfalse
). - Use Nx Cloud
--useNxCloud
(defaulttrue
). - Use local presets
--local
(defaultfalse
). This option is not recommended, instead it is better to rely on pointing to the configuration in thenx-squeezer/squeezer
GitHub repo to always count with the latest version. Use local presets only if you want to customize them. - Provide the assignee for Renovate PRs with
--assignee=github-user
.
Presets:
This preset includes all presets included in this repo except for Nx, Angular workspaces, and tooling preset they have to be added manually:
"extends": ["github>@nx-squeezer/squeezer"]
This preset groups all dependencies related to Nx and Angular, including upgrade schematics:
"extends": ["github>@nx-squeezer/squeezer:nxMonorepo"]
It is incompatible with preset
"github>@nx-squeezer/squeezer:angularWorkspace"
, choose one or another.
This preset groups all dependencies related to Angular, including upgrade schematics:
"extends": ["github>@nx-squeezer/squeezer:angularWorkspace"]
It is incompatible with preset
"github>@nx-squeezer/squeezer:nxMonorepo"
, choose one or another.
This preset groups all non-major npm dependencies, including bump
dependencies:
"extends": ["github>@nx-squeezer/squeezer:groupAllNonMajor"]
This preset groups all dependencies related to linting and formatting:
"extends": ["github>@nx-squeezer/squeezer:tooling"]
Examples:
chore(deps): :arrow_up: update dependency
fix(deps): :lock: refresh package-lock.json
fix(deps): :arrow_down: roll back dependency
This preset groups all dependencies related to Github actions:
"extends": ["github>@nx-squeezer/squeezer:githubActions"]
This preset adds a :sparkles: gitmoji :sparkles: to the commit message:
"extends": ["github>@nx-squeezer/squeezer:gitmoji"]
This preset updates node
and npm
only to LTS versions.
"extends": ["github>@nx-squeezer/squeezer:npm"]
This preset configures maintenance of package-lock.json
file as a separate PR.
"extends": ["github>@nx-squeezer/squeezer:maintenance"]
This preset causes Renovate to not update libraries' package.json
, only the root package.json
will be updated for minor and patch versions. This has the purpose of keeping libraries with a wider compatibility range, within the last major version. This is the recommended configuration for library authors.
"extends": ["github>@nx-squeezer/squeezer:widenRangeLibraryDeps"]