Digdag pluginのローカルでの動作確認方法

digdag-slack pluginにPullRequestを送ったときに、ローカルで動作確認する方法が最初わからなかったのでメモしておきます。

1. ビルドする

$ ./gradlew publish

2. digファイルのプラグインの読み込み設定を書き換える

_export:
  plugin:
    repositories:
      - file://${repos}
    dependencies:
      - io.digdag.plugin:digdag-slack:0.1.4-SNAPSHOT

repositoriesにローカルのファイルパスを指定し、dependenciesにpackageのclass pathを指定します。 上記の設定だと、reposが変数になっているので -p repos=`pwd`/build/repo と指定することが可能です。

3. pluginのキャッシュファイルを削除する

$ rm -rf .digdag/plugins

Digdagは実行時にプラグインをローカルディレクトリにキャッシュしているようで、プラグインのバージョンアップを行わない限り、そちらのファイルが使われてしまいます。 通常時は問題ないですが、動作確認をするときは古いファイルのままになってしまうことがあるため、キャッシュファイルを削除します。

4. digdag runする

$ digdag run sample.dig -p repos=`pwd`/build/repo

上記のコマンドでワークフロー(sample.dig)を実行し、動作確認できます。