メイン コンテンツにスキップ
CI/CD

開発と本番ビルドを管理するには、GitHub アクションを使用してください

Capgo を使用して、開発用ビルドを特定のチャネルにリリースし、Apple と Google のレビューを待たずに、Capacitor ionic アプリをチームが試すことができます。

マーティン・ドナディュー

マーティン・ドナディュー

コンテンツマーケター

開発と本番ビルドを管理するには、GitHub アクションを使用してください

このチュートリアルは、GitHub ホスティングに焦点を当てていますが、CI/CD プラットフォームの他のものに適応するには、少しの調整が必要です。

序文

Capacitor アプリを Capgo に追加することを確認してください。このチュートリアルはアップロードフェーズに焦点を当てています。

コミット規約

最初はコミット規約を遵守する必要があります conventional commits` これを行うと、ツールがバージョン番号をアップグレードする方法を理解できるようになります。これは 5 分で学べます。

Conventional Commits

GitHub タグのためのアクション

次に、自動的にビルドしてタグを作成するための最初の GitHub アクションを作成する必要があります。

ファイルを作成するパス: .github/workflows/bump_version.yml

この内容で:

name: Bump version

on:
  push:
    branches:
      - main
      - development

jobs:
  bump-version:
    if: "!startsWith(github.event.head_commit.message, 'chore(release):')"
    runs-on: ubuntu-latest
    name: "Bump version and create changelog with standard version"
    steps:
      - name: Check out
        uses: actions/checkout@v6
        with:
          fetch-depth: 0
          filter: blob:none
          token: '${{ secrets.PERSONAL_ACCESS_TOKEN }}'
      - name: Git config
        run: |
          git config --local user.name "github-actions[bot]"
          git config --local user.email "github-actions[bot]@users.noreply.github.com"
      - name: Create bump and changelog
        if: github.ref == 'refs/heads/main'
        run: npx capacitor-standard-version
      - name: Create bump and changelog
        if: github.ref != 'refs/heads/main'
        run: npx capacitor-standard-version --prerelease alpha
      - name: Push to origin
        run: |
          CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
          remote_repo="https://${GITHUB_ACTOR}:${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
          git pull $remote_repo $CURRENT_BRANCH
          git push $remote_repo HEAD:$CURRENT_BRANCH --follow-tags --tags

これにより、主ブランチのすべてのコミットに対してタグがリリースされ、 alpha リリースが development、そして最後に、各コミットに対する変更履歴エントリが作成されます。 CHANGELOG.md.

このファイルが必要ない場合は心配しないでください。自動的に作成されます。

この機能を実行するには、 PERSONAL ACCESS TOKEN を生成し、GitHub に追加する必要があります。 secrets PERSONAL_ACCESS_TOKEN.

CIがチェンジログとバージョンアップをコミットできるようにする必要があります。 never トークンを作成するときは、 repo.

を選択し、スコープを version に設定してください。 package.json keyをファイルに設定するには、The storeから最後にリリースされたバージョンを使用してください。

This is only necessary the first time, then the tools will keep it up to date.

この時点でファイルをコミットし、最初のタグが GitHub に表示されることを確認してください。

capacitor-standard-version は、デフォルトでは、Android と IOS のバージョン番号も自動的に更新します。

GitHub ビルドのアクション

このパスにファイルを作成してください。 .github/workflows/build.yml

この内容でファイルを作成してください。

name: Build source code and send to Capgo

on:
  push:
    tags:
      - '*'
      
jobs:
  deploy:
    runs-on: ubuntu-latest
    name: "Build code and release"
    steps:
      - name: Check out
        uses: actions/checkout@v6
      - name: Install dependencies
        id: install_code
        run: npm i
      - name: Build
        id: build_code
        run: npm build
        env:
          MY_ENV_VAR: ${{ secrets.MY_ENV_VAR }}
      - name: Create Release Alpha
        if: "contains(github.ref, '-alpha.')"
        id: create_release_prepro
        run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c development
      - name: Create Release Production
        if: "!contains(github.ref, '-alpha.')"
        id: create_release_prod
        run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c production

このコマンドは、依存関係をインストールしてビルドし、Capgo に送信します。

ビルドのコマンドが異なる場合は、ステップを変更してください。 build_code 環境変数が必要な場合は、

を使用し、 MY_ENV_VAR をプロジェクト設定のシークレットに設定し、__CAPGO_KEEP_1__ アクションで設定してください。 secret in your GitHub project setting, then secret then GitHub Action.

To make Capgo upload work, you need to get your API key for Capgo, add it in the GitHub リポジトリのシークレット as CAPGO_TOKEN.

Capgo に両方のファイルをコミットし、最初のバージョンが Capgo に表示されることを確認できます。

コミットすると、Capacitor の新しいビルドがプロダクションと開発チャンネルで生成されます。

code が正常に動作していることを確認するために、Ionic ビルドステップでテストを追加する必要があります。

Capgo ダッシュボードにアクセスし、直近のビルドを確認してください。CI/CD システムが稼動しています。

開発とプロダクションビルドの管理に GitHub アクションを使用して、進めていきましょう。

__CAPGO_KEEP_0__ を使用してチャネル ルーティングとステージド ロールアウトを計画する場合は、 開発とプロダクションビルドの管理に GitHub アクションを使用して、 チャネル ルーティングとステージド ロールアウトを計画する場合は、 __CAPGO_KEEP_0__ を接続してください。 Channelsの実装詳細について Channels Channelsの実装詳細について Channels Channelsの実装詳細について Betaテストソリューション Betaテストソリューションの製品ワークフローについて、 バージョン目標ソリューション バージョン目標ソリューションの製品ワークフローについて。

Capacitor アプリ用リアルタイム更新

ウェブ層のバグが生じた場合、Capgo を使用して修正を配信し、アプリストアの承認待ちの日数を省略する。ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路で進む。

今すぐ始める

ブログの最新記事

Capgo を使用すると、プロフェッショナルなモバイルアプリを作成するために必要な最良の洞察を得ることができます。