冒險村06 - Auto-update dependencies

06 - Auto-update dependencies

除了 Release DrafterCreate PR with default template 很常用到之外,gems 與 js 的更新也是專案中不可缺少的一塊,而 Github 也有 Dependabot 來自動化的掃目前需要更新的套件(不能完全仰賴,但如果掃出來的代表一定有新版本)

Setting .github > dependabot.yml

1
2
3
4
5
6
7
8
9
10
11
12
version: 2
updates:
# Configuration for npm
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
# Configuration for Bundler
- package-ecosystem: "bundler"
directory: "/"
schedule:
interval: "daily"

稍微解釋一些比較常用到的設定:

  • package-ecosystem 表示使用的 package manager
  • directory 應該滿好理解的,對應的 package manager 會在哪個位置,如果都是在專案下的話就是 / 了~
  • schedule.interval 表示偵測的頻率是多久一次

註: 其餘比較的 config options 可以就請參考文件惹!

設定完成後,就可以在 github_repo_link/network/updates 下看到目前 dependabot 在多久前偵測各 package manager,像上述的範例則會偵測 npm 的 package.json & bundler 的 Gemfile

此外,也會發現 Repo 的 PR 裡會有 dependabot 開的 issue 告知什麼東西可以從哪個版本升級新的版本(如果有安裝前面的 CI 的話,這邊也都會幫忙跑過)

下一篇就來介紹如何升級 Ruby gem 以及 js 吧!

參考來源