dependabot の cooldown と pnpm の minimumReleaseAge を設定する

🛡️
note

直近で話題になることが多かったサプライチェーン攻撃に対する予防策として、「一定時間経過したパッケージしかアップデート対象にしない」というオプションが dependabot や pnpm に導入されている。

dependabot / cooldown

.github/dependabot.yml に次のように設定する:

version: 2
updates:
  - package-ecosystem: "npm"
    directory: "/workers"
    cooldown:
      default-days: 14
      semver-major-days: 30

semver-major-days などで semantic versioning に従って細かく設定ができる。include / exclude での除外設定もサポートされている。

pnpm / minimumReleaseAge

pnpm-workspace.yaml に次のように設定するか、CLI からも設定できる:

minimumReleaseAge: 10080
$  pnpm config set --location=project minimumReleaseAge 10080

dependabot とは違い、こちらは時間単位での指定。 10.17.0minimumReleaseAgeExclude が入って除外設定もできるようになった。

yaakai.to