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

Githubで自動ビルドとリリースアプリ

Githubアクションで無料でCI/CDパイプラインを作成し、Ionic Capacitor JSアプリを毎回メインにプッシュしたときに自動的にデプロイします。

Githubで自動ビルドとリリースアプリ

このチュートリアルはGitHubホスティングに焦点を当てていますが、CI/CDプラットフォームのいずれかに適応させるには少しだけ変更が必要です。

序文

まず、CapacitorアプリをCapgoに追加してください。このチュートリアルはアップロードフェーズに焦点を当てています。 Capgoにアプリを追加する必要がある場合は、このチュートリアルを参照してください。 チュートリアル

コミット規約

Capgo Builderでは、まずコミット規約を遵守する必要があります。 標準的なコミット標準的なコミット

この設定は、ツールがバージョン番号をアップグレードする方法を理解するのに役立ちます。5分で学べます。

GitHub actions for tag

GitHubタグのアクション

次に、自動ビルドとタグの作成を実行するための最初の__CAPGO_KEEP_0__アクションを作成する必要があります。 .github/workflows/bump_version.yml

ファイルを作成するパス:

name: Bump version

on:
  push:
    branches:
      - main

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
        run: npx capacitor-standard-version
      - 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

この内容で: CHANGELOG.md.

毎回のコミットでメインブランチのタグをリリースし、メインブランチのコミットごとに変更履歴を追加します。

このファイルが存在しない場合は、気にしないでください。自動的に作成されます。 パーソナル アクセス トークン そして、GitHubに追加します。 シークレット として PERSONAL_ACCESS_TOKEN.

これは、CIがチェンジログをコミットできるようにする必要があります。

トークンを作成するときに、有効期限を選択してください。 never そしてスコープを選択してください。 repo.

最後に、__CAPGO_KEEP_0__のファイルにバージョンを設定し、Nativeバージョン番号と同期してください。これにより、次のステップが簡単になります。 package.json これは最初の時のみ必要です。ツールはその後、最新の情報を保持します。

ここで、両方のファイルをコミットし、__CAPGO_KEEP_0__で最初のタグが表示されることを確認できます!

GitHub

両方のネイティブプラットフォームとWebプラットフォームは、各コミット後にバージョン番号を上げます。

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 run build
        env: # Remove both lines  if you don't need it
          FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} # Example of env var coming from a secret
      - name: Create Release
        id: create_release
        run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c production

これにより、依存関係をインストールしてビルドし、Capgoに送信します。

ビルド用のコマンドが異なります場合は、ステップを変更してください。 build_code この機能を使用するには、__CAPGO_KEEP_0__の__CAPGO_KEEP_1__用のAPIキーを取得し、__CAPGO_KEEP_0__リポジトリのシークレットに追加する必要があります。

To make this work, you need to get your API key for Capgo, add it in the これらのファイルをコミットすると、最初のタグがGitHubに表示されます。 コミットすると、プロダクションチャンネル用の新しいビルドが生成されます。 CAPGO_TOKEN.

GitHub

__CAPGO_KEEP_1__

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

Capgoのダッシュボードに移動し、ご自身のビルドを確認してください。ご自身のCI/CDシステムが利用可能になりました。

すべてのユーザーが利用可能な更新を取得したい場合は、チャンネルに移動し、更新を有効にします。 public.

IonicのCapacitor JavaScriptアプリのネイティブビルドを追加するには、このチュートリアルを参照してください👇

Automatic build and release app with Github actionsから続きます。

Automatic build and release app with __CAPGO_KEEP_0__ actionsを使用している場合、CI/CDの自動化を計画するには、__CAPGO_KEEP_0__ CI/CDに接続します。 Github CI/CDの製品ワークフローにGithub CI/CDを接続します。 __CAPGO_KEEP_0__ CI/CDの製品ワークフローに__CAPGO_KEEP_0__ Native Buildsを接続します。 Capgo CI/CDの製品ワークフローにCapgo Native Buildsを接続します。 Capgo CI/CDの製品ワークフローにCapgo Native Buildsを接続します。 Capgo CI/CDの製品ワークフローにCapgo Native Buildsを接続します。 Capgo CI/CDの製品ワークフローにCapgo Native Buildsを接続します。 Capgo 連携 Capgo 連携の製品ワークフロー CI/CD 連携 __CAPGO_KEEP_0__ アクション連携 GitHub アクション連携の実装 for the implementation detail in GitHub Actions Integration.

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 を通じて修正を配信するのではなく、App Store の承認待ちの日数を待たずに、ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路を通じて。

コンテキスト: Capgo マーケティング ウェブサイト。役割: サポートする説明文またはメタ説明文。見つける場所: コンポーネント GetStarted.astro。Capgo の製品/ブランド名と開発者用語をそのまま保存する。メッセージキー `instant_updates_for_capacitor_apps_description` (Capacitor アプリのリアルタイム更新の説明)。

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

Capgo gives you the best insights you need to create a truly professional mobile app.