blog

GitHub Actionsを使ってTaroプロジェクトに継続的インテグレーションを追加する

準備\nまず -ci をインストールします:\nnpm install -ci -D\nドキュメントに従ってアプレットのアップロードキーをダウンロードし、キーの内容をプロジェクトの GitHub Se...

Jun 10, 2020 · 2 min. read
シェア

準備

まず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レンジについては、公式ドキュメントをご覧ください。

Read next

ReactNative Expoラッシュチュートリアル

リアクトネイティブは、ほとんどのフロントエンド開発者にとって馴染みのないものではありません。 RN expo-cliを使ってアプリを書くには2つの方法があります; 1つはcreate-react-native-appを使う方法です。

Jun 9, 2020 · 6 min read