LoginSignup
1
0

More than 1 year has passed since last update.

iOSアプリでRenovateを使ってみた

Posted at

はじめに

Renovateという、パッケージマネージャーで管理しているライブラリのアップデートを自動化できるツールを知り
iOSアプリのCocoapodsで管理しているライブラリ更新を自動化させた内容をまとめました。

内容

チュートリアルがありましたので、こちらを参考にしながらやっていきいます👇

1.インストール

GitHub Apps経由でRenovateをRepositoryに追加する

今回は対象のRepositoryのみに追加したいのでOnly select repositoriesから対象のRepositoryを選択、ガイドに従って進む

登録完了まで進んでいくとダッシュボードが表示され、先ほど選択したRepositoryの表示が確認できる

2.オンボーディング

GithubからRenovateを追加したRepositoryを見ると、新しいPR(オンボーディングPR)が自動生成されているのを確認できる

オンボーディングPRではrenovate.jsonというファイルが生成されていて
このファイルを書き換えることでRenovateの設定ができる

renovate/configurationのブランチでrenovate.jsonを修正

{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": [
    "config:base"
  ]
}

ドキュメントには細かく記載があるが、今回はいくつかの記事を参考にしながらrenovate.jsonを修正

{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": ["config:base", ":timezone(Asia/Tokyo)"],
  "labels": ["dependencies", "renovate"],
  "enabled": true,
  "automerge": false,
  "branchPrefix": "renovate/",
  "separateMajorMinor": true,
  "separateMultipleMajor": true,
  "prCreation": "immediate",
  "prHourlyLimit": 0,
  "baseBranches": ["master"],
  "prConcurrentLimit": 1,
  "vulnerabilityAlerts":{
    "enabled": true
  },
  "dependencyDashboard": true,
}

修正が完了したら、コミットしてPRを更新しておく

Renovateを使ってライブラリをアップデート

オンボーディングPRをマージすることで
アップデート可能なライブラリが存在する場合はPRが自動生成される

マージすることでライブラリのアップデートが完了

ダッシュボードを確認するとRenovateのログが表示されていることがわかる

Issueに生成されているDependency Dashboardを確認すると
自動生成されたPRやRenovateが見ているパッケージマネージャーの内容が確認できる

ダッシュボードから直接、ライブラリ更新の作成を手動でトリガーしたり
Check this box to trigger a request Renovate to run again on this repository オプションを有効にすることで直接手動でRenovate botを再実行することができる

RenovateのCocoaPodsに関わるドキュメントページ

おわりに

自動でライブラリのアップデートPRを作成してくれるのはとても便利で感動しました!Realmを使っているとうまくいかないなど、いくつか手動で対応が必要な場合もあるようですが。。。積極的に使っていこうと思います!

参考

1
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
1
0