前の記事で作成したpluginをmkrコマンドでインストールできるようにしました。
で、GitHub Actionsを利用して、インストール用zipファイルとRelease(のドラフト)を作成するようにしてみました。

前の記事は↓



mkrコマンドへはこんな感じで対応しました。

mkrで求められる仕様の確認

mkrコマンドに対応するための仕様はmkr plugin installに対応したプラグインを作成する - Mackerel ヘルプに全部書いてあります。必須の仕様と推奨の仕様があるのでできるだけ推奨の仕様も満たせるようにしたいですね。

ReleaseするGitHub Actionsの作成

仕様を確認したら、おもむろにGitHub Actionsを作っていきます。
ちなみに、GitKrakenはGitHub Actionsをサポートしていて、workflowの作成やymlファイルの編集ができたりします。

今回はGitHub Actionsのtagのpushイベントを利用して
  1. ファイルをzipに固める
  2. ghrを利用してGitHubのドラフトRelaseを作成する
までやっているので、tagを打ってpushしたら、Actionsの作成したReleaseを確認してDescriptionを編集してリリースするだけです。

Actionsの詳細はコードをみてください。


動作確認

ここで、mkrでインストールできるか動作確認をします。
プラグインのインストール先への書き込みには管理者権限が必要なので、注意してください。

mkr.exe plugin install ryosms/mackerel-plugin-multicore-windows@v0.1.3

上記のコマンドを打って「Successfully installed」的な出力があれば成功です。
mkr-plugin-install

公式のプラグインレジストリへの登録

mkrコマンドでインストールできることが確認できたら、公式のプラグインレジストリに登録しましょう。
先程のMackerel公式のヘルプの最後に登録方法も説明されているので、それに従ってPull Requestを投げてmergeされるのを待ちましょう。

マージされた

というわけで無事にマージされたのでこれからは以下のコマンドでインストールできます。

mkr.exe plugin install mackerel-plugin-multicore-windows

お疲れさまでした。