Skip to content

system_update.rb

Tada, Tadashi edited this page Apr 16, 2019 · 1 revision

Heroku上で運用しているtDiaryをアップデートするプラグイン

HerokuへデプロイしたtDiaryシステムを最新に追従させるためには、少々複雑な手順が必要になります:

  1. 公式リポジトリのforkを自分のリポジトリに作る
  2. そのリポジトリでGitHub連携を有効にする
  3. 任意のタイミングで公式リポジトリの差分を自分のリポジトリへのPull Request (PR)にする
  4. そのPRをマージするとGitHub連携が動いてシステムが更新される

system_update.rbは間違いやすい3と4の手順をtDiaryのプラグインにしたものです。以下に1からの手順を記します。

1. 公式リポジトリのforkを自分のリポジトリに作る

まずはtDiaryの公式リポジトリへアクセスして、右上にある「Fork」ボタンをクリック。これで自分のアカウントにコピーができる。

2. そのリポジトリでGitHub連携を有効にする

続いて、この「自分のID/tdiary-core」という名前のリポジトリをHerokuに監視してもらう。Herokuにアクセスして、Herokuボタンで作ったtDiaryアプリの設定へ。「Deploy」タブをクリックすると「Heroku Git」「GitHub」「Dropbox」が並んでいるので、中央の「GitHub」をクリック:

Herokuのリポジトリ連携画面

一番下に「Connect to GitHub」ボタンが出るのでクリックすると、GitHubのIDとリポジトリを選択する場面になるので、自分のIDと「tdiary-core」を選んで認証する。と、Automatic deploysとManual deployという項目が現れる:

AutomacitとManual Deploy

Automatic deploysの方の設定を先にしておく。ドロップボックスからmasterブランチを選択してから「Enable Automatic Deploys」ボタンを押せば設定完了。

これだけでは何も起こらないので、続いてまずは手動でアップデートする。Manual deployの横にあるブランチの選択を「master」にしてから「Deploy Branch」ボタンをクリック。あとはデプロイが進んでいくのを眺めていればよい。

3. & 4. system_updateプラグインでtDiaryを最新にする

tDiaryの設定に移り、プラグイン選択へ。新たに「system_update.rb」が増えているはずなので、これを有効にすると「基本」の中に「システム更新」が増えている。これをクリック:

tDiaryの「システム更新」プラグイン

GitHub access tokenとGitHub user nameの2つを入力する。access tokenはPersonal Access Tokensで生成できる。「Genrate new token」で40文字の英数字列ができるのでそれをコピーすればOK。

各種設定が終わったので、あとは「システムを更新」のチェックボックスを入れてから「OK」を押すと、さきほど書いた手順が裏で走って、forkした自分のリポジトリが公式リポジトリに同期する。

Clone this wiki locally