準備
まずminiprogram-ciをインストールします:
npm install miniprogram-ci -D
MINI_UPLOAD_PRIVATE_KEY
ドキュメントによると、アプレットのアップロードキーをダウンロードし、キーの内容をプロジェクトのGitHub Secretsに保存します。
アップロードは GitHub のサーバーから行われ、IP は変更される可能性があるため、IP ホワイトリストはオフにしておく必要があります。
また、アプレットのAPPIDをSecretsに保存し、MINI_APPIDと名付けます。
GitHub Actions
.github/workflows/build.yaml
以下の内容で新規作成します:
name: build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
# インストールの依存関係
- name: install
run: npm i
#
- name: build
run: npm run build:weapp
# アップロードキーをsecretsに保存した.MINI_UPLOAD_PRIVATE_KEY
# しかし、miniprogram-ciはキーファイルのパスしか引数として受け付けない
# ここで、一時的な鍵ファイルprivateを作成する.key
- name: create private key file
run: echo "$MINI_UPLOAD_PRIVATE_KEY" > private.key
env:
MINI_UPLOAD_PRIVATE_KEY: ${{ secrets.MINI_UPLOAD_PRIVATE_KEY }}
# パッケージを取得する.json アプレットの README.md のバージョンフィールドは、アップロード時にアプレットのバージョン番号として使われる。
- name: get package version
id: package-version
uses: martinbeentjes/npm-get-version-action@master
#
- name: upload
run: npx miniprogram-ci upload --pp ./ --pkp ./private.key --appid ${{ secrets.MINI_APPID }} --uv ${{ steps.package-version.outputs.current-version}}
これで完了です。コードが master ブランチにプッシュされると、ビルドとアップロードのプロセスが開始されます。アップロードが完了すると、アプレットのバックエンドのバージョン管理で開発者が
あるいは、README.mdに 追加することもできます。
その他
IP
GitHub ActionsサーバーのIPレンジについては、公式ドキュメントをご覧ください。