1. 使うプラグインは Http Notification Plugin
- Rundeck Discord Notification Plugin というものがありますが、これはうまく動きませんでした*1
- Http Notification Plugin は Rundeck 内のプラグインシステムからインストールしてはだめです
- GitHub から clone し、ビルドをして
.jar
を作る必要があります - 作った
.jar
を Rundeck アプリ内のアップロード画面からアップロードすれば OK です - 詳細は https://groups.google.com/g/rundeck-discuss/c/LJid1VMXqBU?pli=1 に書いてあります
- GitHub から clone し、ビルドをして
2. Http Notification Plugin をビルドする
- ビルドします
- Java のバージョンに注意が必要です
- 手元では
1.8.0.312
で OK でした - cf. https://stackoverflow.com/questions/54358107/gradle-could-not-determine-java-version-from-11-0-2
- 手元では
- Java のバージョンに注意が必要です
$ git clone https://github.com/rundeck-plugins/http-notification.git $ cd http-notification $ ./gradlew build :compileJava UP-TO-DATE :compileGroovy UP-TO-DATE :processResources UP-TO-DATE :classes UP-TO-DATE :copyToLib UP-TO-DATE :jar :assemble :compileTestJava UP-TO-DATE :compileTestGroovy UP-TO-DATE :processTestResources UP-TO-DATE :testClasses UP-TO-DATE :test UP-TO-DATE :check UP-TO-DATE :build BUILD SUCCESSFUL Total time: 1.879 secs
3. .jar ファイルが生成されていることを確認する
$ ls build/libs http-notification-plugin-1.0.7.jar http-notification-plugin-1.0.8-SNAPSHOT.jar
4. Rundeck のWeb画面からプラグインをアップロードする
4. Notification をジョブの詳細画面から設定する
- 予め Webhook のアドレスは取得しておく必要があります
username
とcontent
だけが設定してあればとりあえずは動きます- 埋め込みできる変数は https://docs.rundeck.com/docs/developer/05-notification-plugins.html#notifications-thread-feature に一覧があります
${job.href}
と${job.description}
さえあれば通知の最低限の目的は果たせるため、自分の場合はそれだけです
*1:2022年3月19日(土)現在