メインコンテンツにジャンプします
CI/CD

GitHubで開発と生産のビルドを管理する

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

記事のクレジット

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

記事の執筆者

バレリア

レビュー

ジョーダン

編集者

GitHubで開発と生産のビルドを管理する

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

序文

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

コミット規約

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

コミット規約

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 シークレット シークレット PERSONAL_ACCESS_TOKEN.

として

CIが変更履歴とバージョンアップをコミットできるようにする必要があります。 never そしてスコープとして repo.

を設定します。 version キーをあなたの package.json ファイルに。 そのために、ストアで最後にリリースされたバージョンを使用します。

これは最初の時のみ必要です。 その後、ツールはそれを最新の状態に保つでしょう。

あなたはこれらの両方のファイルをコミットし、最初のタグが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_0__で、秘密の__CAPGO_KEEP_1__アクションを設定します。 secret GitHubのアップロードを実行するには、GitHubの__CAPGO_KEEP_2__のキーを取得し、GitHubのリポジトリのシークレットに追加する必要があります。

To make Capgo upload work, you need to get your API key for Capgo, add it in the これらの両方のファイルをコミットし、GitHubで最初のバージョンを確認できます。 コミットすると、生産用と開発用の__CAPGO_KEEP_0__ビルドが生成されます。 CAPGO_TOKEN.

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

Capacitorダッシュボードに移動し、表示されたビルドを確認し、CI/CDシステムを構築しました。

Manage development and production build with code actionsから続けてください。

Go To your Capgo dashboard and check your build who just appeared, you now have your CI/CD system.

Keep going from Manage development and production build with GitHub actions

あなたが使用している場合 Manage development and production build with GitHub actions チャンネルルーティングとステージドロールアウトを計画するには、__CAPGO_KEEP_0__に接続する チャンネル チャンネル チャンネル チャンネル ベータテストソリューション ベータテストソリューションにおける製品ワークフロー バージョン目標ソリューション for the product workflow in Beta Testing Solution, and Version Targeting Solution Version Targeting Solutionの製品ワークフロー向け。

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

When a web-layer bug is live, ship the fix through Capgo instead of waiting days for app store approval. Users get the update in the background while native changes stay in the normal review path.

マーティンから人間のサポート

スタートしてください

最新の記事

Capgo は、プロフェッショナルなモバイルアプリを作成するために必要な最良の洞察を提供します。