0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

renovate.jsonの最低限設定

Posted at

Renovateとは

Renovateを使って依存しているパッケージのバージョンを簡単に最新状態に保つことができます。
Repoごとに設定するときに毎回どっかのRepoからコピーしたりしてるので、一度最低限の情報を書いておこうと思います。

Settings

私が個人プロジェクトでよく使う設定は以下になります。

{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": [
    "config:recommended",
    "github>aquaproj/aqua-renovate-config#2.8.1"
  ],
  "automergeStrategy": "squash"
}

設定項目

extends

  • すぐに便利に使いたい/特にこだわりがない場合 → config:recommended (defaultではこちらが設定される)
  • 細かくカスタマイズしたい/既存のポリシーがある場合 → config:base
  • config:best-practices: recommendedにプラスして pinDigestsなどが追加されている
    {
      "extends": [
        "config:recommended",
        "docker:pinDigests",
        "helpers:pinGitHubActionDigests",
        ":configMigration",
        ":pinDevDependencies",
        "abandonments:recommended"
      ]
    }
    
  • aqua を使ってる場合は "github>aquaproj/aqua-renovate-config#2.8.1"をいれる (ref)

Use the config:best-practices preset, instead of the config:recommended preset
General Recommendationには、recommendよりもbest-practicesを使うのが推奨されていて recommendedとは?となる :smile:

ignorePaths

バージョン変更したくない場合などは、以下のように書いています。

  "ignorePaths": [
    "scripts/.python-version"
  ]

automerge

By default, Renovate raises PRs but leaves them to someone or something else to merge them.

デフォルトでは、RenovateはPRを作成して誰かがマージするのを待つ。

renovateを使う醍醐味の一つであるauto merge。特に個人プロジェクトなどは全部Auto Mergeでもいいくらいだと思います。

もう少し慎重に運用する場合は、以下のようにminor, patch, pin, digestのタイプならautomergeを設定するなど、対象を絞ってautomergeを設定することができます。

{
  "packageRules": [
    {
      "matchUpdateTypes": ["minor", "patch", "pin", "digest"],
      "automerge": true
    }
  ]
}

その他にも"matchDepTypes": ["devDependencies"],を設定することでdev dependencyの場合のみauto mergeするなどすることができます。

Tipsとして、 Wait two weeks before automerging third-party dependencies 新しいバージョンをすぐにマージせず 2週間待ってからマージするというOptionもあるので、合わせて活用するとより安全になります。

If you enable automerge and minimumReleaseAge, Renovate will create PRs immediately, but only automerge them when the minimumReleaseAge time-duration has passed.

automergeを有効化して、minimumReleaseAgeも設定した場合は、PRは即座に作成されるがautomergeはminimumReleaseAgeの時間待ってからマージされる

References

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?