Github Actions(Github 提供的一种 CI/CD 服务)自动发布插件到 pub.dev,这样做的好处有
- 避免手动发布,节约上传时间
- 在 Github 合并别人提交的代码后也可以立即发布
以下说明如何进行
添加流程
首先在插件的 .github/workflows
目录内创建一个配置文件 publish.yml
。
内容如下
name: Publish to Pub.dev
# 流程触发时机,当有标签创建时触发,如 v1.0.0。当然也可以选择别的触发时机,如 push,release 等
on: create
jobs:
publishing:
runs-on: ubuntu-latest
steps:
# 拉取仓库代码
- name: "Checkout"
uses: actions/checkout@v2
# 发布插件
- name: Dart and Flutter Package Publisher
uses: k-paxian/[email protected]
with:
# 设置发布插件需要的 Token
accessToken: ${{ secrets.OAUTH_ACCESS_TOKEN }}
refreshToken: ${{ secrets.OAUTH_REFRESH_TOKEN }}
流程中需要设置 OAUTH_ACCESS_TOKEN
和 OAUTH_REFRESH_TOKEN
这两个 Token,他们在 .pub-cache/credentials.json
的文件内,这个文件是第一次手动发布插件成功后自动生成的,在用户的 home 目录或者是安装 Flutter SDK 目录内。
拿到 Token 后去插件仓库添加以上两个 Secret,至此配置工作已完成
发布插件
现在每次更新插件只需要新增标签然后推送到仓库,就可以自动更新插件啦!
git tag v1.0.1
git push --tags
复制代码
参考
Dart and Flutter Package Publisher
第一次发布插件看这里 Publishing your package