Skip to content

🦏 dangerouslySetRenovatePreset

License

Notifications You must be signed in to change notification settings

seek-oss/rynovate

Repository files navigation

Rynovate

Validate

Mildly-aggressive Renovate presets for keeping dependencies up to date.

See renovate-config-seek for a baseline preset that only maintains SEEK npm packages.

Table of contents

Presets

default

Dependencies are selectively grouped and scheduled:

Type Grouped Schedule
SEEK (select package versions) No Weekday, automerged
SEEK (rest) No Weekday
Pin dependency Yes Weekday, automerged
Go module digest update Yes Monthly
Go module version update No Monday, Friday
JavaScript dependency No Monday, Friday
JavaScript devDependency Yes Fortnightly on Tuesday
JavaScript peerDependency Yes Fortnightly on Tuesday
TypeScript definition Yes Fortnightly on Tuesday, automerged
Buildkite plugin Yes Fortnightly on Wednesday
Docker image Yes Fortnightly on Wednesday
Lock file maintenance Yes Fortnightly on Wednesday, automerged
Noisy dependency (e.g. aws-sdk) No Monthly

Pull requests are tersely named:

Type Example
Production dependency fix: pino 5.12.2
Non-production dependency deps: npm dev dependencies
Lock file maintenance deps: lock file maintenance

non-critical

Type Grouped Schedule
Gantry Buildkite plugin No Weekday
* Yes Monday
Lock file maintenance Yes Fortnightly on Wednesday, automerged
Type Example
Gantry Buildkite plugin deps: seek-jobs/gantry v1.0.0
* fix: all dependencies
Lock file maintenance deps: lock file maintenance

third-party-major

Like the default preset, but less noisy as it only monitors major updates for non-SEEK deps. Non-major Buildkite plugin and Docker image versions are still renovated.

Usage

Getting started with presets

Reference in an extends array within Renovate config:

{
  extends: [
    // Required to access private SEEK packages
    'local>seek-jobs/renovate-config',

    'github>seek-oss/rynovate',
  ],
}

Choose a named preset with a :preset suffix:

{
  extends: [
    // Required to access private SEEK packages
    'local>seek-jobs/renovate-config',

    'github>seek-oss/rynovate:non-critical'.
  ],
}

Adding your own package rules

Disable incompatible major version upgrades for a specific package:

{
  extends: [
    // Required to access private SEEK packages
    'local>seek-jobs/renovate-config',

    'github>seek-oss/rynovate',
  ],
  packageRules: [
    {
      matchManagers: ['npm'],
      matchDepNames: ['your-package-name-here'],
      matchUpdateTypes: ['major'],

      enabled: false,
    },
  ],
}

Ignore a specific package version:

{
  extends: [
    // Required to access private SEEK packages
    'local>seek-jobs/renovate-config',

    'github>seek-oss/rynovate',
  ],
  packageRules: [
    {
      matchManagers: ['npm'],
      matchDepNames: ['your-package-name-here'],

      allowedVersions: '!/^1\\.2\\.3$/',
    },
  ],
}

Ungroup a specific package that is usually grouped by the preset:

{
  extends: [
    // Required to access private SEEK packages
    'local>seek-jobs/renovate-config',

    'github>seek-oss/rynovate:non-critical',
  ],
  packageRules: [
    {
      matchManagers: ['npm'],
      matchDepNames: ['your-package-name-here'],
      matchUpdateTypes: ['major', 'minor', 'patch'],

      commitMessageExtra: '{{newValue}}',
      commitMessageTopic: '{{depName}}',
      groupName: null,
      schedule: 'before 3:00 am every weekday',
    },
  ],
}

For more information, see Renovate's comprehensive documentation of its configuration options.

About

🦏 dangerouslySetRenovatePreset

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published