はじめに
私はいくつかのFlutterプラグインを公開し、手動で更新してきました。プラグインを手動で更新するのは少し面倒で失敗しやすいので、 プラグインを自動的にpub.devに公開する方法を調べました。
- 手動投稿を回避し、アップロード時間を節約
- Githubで他の人のコミットをマージしてすぐに公開することもできます!
以下にその方法を説明します。
追加プロセス
まず、プラグインの .github/workflows ディレクトリ内に設定ファイル publish.yml を作成します。
その内容は以下の通りです。
name: Publish to Pub.dev
# v1のようなタグが作成されたときにトリガーされるトリガータイミングを処理する.0.0プラグインを初めてリリースするときは、ここを見る。もちろん、プッシュ、リリースなど、他のトリガー・タイミングを選ぶこともできる。
on: create
jobs:
publishing:
runs-on: ubuntu-latest
steps:
# リポジトリコードをプルする
- name: "Checkout"
uses: actions/checkout@v2
# プラグインを公開する
- name: Dart and Flutter Package Publisher
uses: k-paxian/dart-package-publisher@v1.2
with:
# プラグインを公開するために必要なトークンを設定する
accessToken: ${{ secrets.OAUTH_ACCESS_TOKEN }}
refreshToken: ${{ secrets.OAUTH_REFRESH_TOKEN }}
.pub-cache/credentials.json
このプロセスでは、OAUTH_ACCESS_TOKENとOAUTH_REFRESH_TOKENを設定する必要があります。OAUTH_ACCESS_TOKENは、プラグインの最初の手動リリースが成功した後に自動的に生成されるファイル内にあり、ユーザーのホームディレクトリまたはFlutter SDKがインストールされているディレクトリにあります。
Tokenを取得したらプラグインリポジトリに移動して上記2つのSecretを追加し、設定作業は完了です。
プラグインの公開
これでプラグインを更新するたびに、新しいタグを追加してリポジトリにプッシュするだけで、プラグインが自動的に更新されます!
git tag v1.0.1
git push --tags
初めてプラグインを公開する場合は、こちらをご覧ください。 パッケージの公開