メインコンテンツにジャンプします。

CI/CDツールがOTAアップデートをトリガーする方法

CI/CDツールは、自動化されたプロセスを使用して、迅速で安全で信頼性の高いアプリケーションのデプロイを保証するOTAアップデートを強化します。

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

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

コンテンツマーケティング

CI/CDツールがOTAアップデートをトリガーする

CI/CDツールは、プロセスの自動化を使用して、OTAアップデートを迅速化し、安全化し、信頼性を高めます。ここでは、その方法について説明します。

  • OTAアップデートとは何か アプリケーション資産の更新(HTML、CSS、JavaScriptなど)をCDNを介して即時実行できるようにし、アプリストアの承認遅延を回避します。
  • CI/CDの利点 自動化ツールである GitHub Actions ビルドチェック、セキュリティ検証、デプロイなどの重要なステップを簡素化し、72%のエラーを削減し、1日以内にパッチを適用できるようにします。
  • Key Features:
    • Security: HTTPS、code署名、暗号化を使用して更新を保護します。
    • Staged Rollouts: エラーを早期に検出するために、更新を小さなグループにデプロイします。
    • Rollback Options: エラー率が上昇した場合に自動的に更新を戻します。
  • Tools Highlighted: Capgo CLIコマンド、Webhook統合、詳細なメトリクス追跡などを使用してOTA更新を簡素化します。

OTA更新を自動化することで、迅速な配信、エラーの減少、そしてアプリの安定性が向上します。以下に、__CAPGO_KEEP_0__のセットアップ手順をご紹介します。 Capacitor CI/CD パイプラインを備えたアプリ。

Appflow ライブ更新:ユーザーに直接即時更新を展開

Appflow CI/CD プラットフォーム インターフェイス

準備中 Capacitor OTA更新用に準備

Capacitor フレームワーク ドキュメント ウェブサイト

Capacitor を設定して 自動オーバー・ザ・エア更新 (OTA)更新のための自動オーバー・ザ・エア更新の設定には、セットアップの構成、セキュリティ対策の実装、 アップデートシステムの統合. このプロセスにより、CI/CD オートメーションとの互換性が保たれ、さらにアプリケーションのセキュリティが確保されます。

capacitor.config.json に記載されている OTA 設定を設定する

__CAPGO_KEEP_0__.config.json を更新するには、必要なパラメータを設定する必要があります。 capacitor.config.json 適切なチェックの頻度を設定することで、更新の遅延を最小限に抑えることができ、最大 47% の遅延削減が可能です。

{
  "appId": "com.example.app",
  "appVersion": "2.3.1",
  "plugins": {
    "CapacitorUpdater": {
      "updateUrl": "https://api.example.com/ota",
      "checkFrequency": 3600,
      "channel": "production"
    }
  }
}

OTA アップデートのセキュリティの実装 [2].

不正なアップデートやアプリケーションの不正性を防ぐために、OTA アップデートプロセスのセキュリティを確保することは不可欠です。このプロセスには、3 つの保護層が含まれます。

セキュリティ層

実装目的HTTPS セキュリティ
HTTPS Security証明書ピンニング中間者攻撃をブロックします
Code署名ed25519署名更新の有効性を確認します
パッケージセキュリティAES-256-GCM暗号化更新コンテンツを保護します

これらのセキュリティ機能を適用するには、以下を設定ファイルに含めます:

{
  "security": {
    "publicKey": "-----BEGIN PUBLIC KEY-----...",
    "requireSignedUpdates": true,
    "validateChecksums": true
  }
}

設定 Capgo OTA更新用

Capgo Live Update Dashboard Interface

CapgoはOTAの更新プロセスを簡素化します。必要なプラグインをインストールすることから始めましょう。

npm install @capgo/capacitor-updater

次に、Capgo-固有の設定をあなたの capacitor.config.json ファイルに追加してください。

{
  "plugins": {
    "CapacitorUpdater": {
      "apiKey": "CAPGO_XXXX",
      "channel": "production",
      "debug": true
    }
  }
}

Capgoは、ビルド識別子などを使用して厳密なバージョニングを実施し、更新の追跡をより簡単に管理および監視できるようにします。 2025.02.12-a1b2c3d OTAの更新パイプラインの作成

__CAPGO_KEEP_0__をあなたの__CAPGO_KEEP_1__環境にセットアップした後、次のステップはCI/CDツールとリンクすることです。更新を自動化して、セキュリティと効率性を確保し、同時にアプリの安定性を維持します。

Once you’ve set up Capgo in your Capacitor environment, the next step is linking it with CI/CD tools to automate update delivery. This ensures updates are handled securely and efficiently while keeping your app stable.

あなたのCI/CD設定でWebhookを設定すると、__CAPGO_KEEP_0__の変更が発生すると自動的に更新がトリガーされます。たとえば、__CAPGO_KEEP_1__ Actionsで、以下のようなワークフローファイルを作成できます。

Webhooks in your CI/CD setup can automatically trigger updates whenever code changes occur. For example, in GitHub Actions, you can create a workflow file like this:

name: OTA Update Trigger
on:
  push:
    branches: [main]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Trigger OTA Update
        run: |
          curl -X POST \
          -H "X-Capgo-Signature: sha256=${{ secrets.CAPGO_SECRET }}" \
          -H "Authorization: Bearer ${{ secrets.CAPGO_API_KEY }}" \
          https://api.capgo.app/deploy

Make sure to store your API keys and secrets securely in your CI/CD platform’s あなたの__CAPGO_KEEP_1__環境 機密データを保護する。

Capgo CLI の更新コマンド

Capgo CLI は、パイプライン内での更新管理を簡素化するための重要なコマンドを提供します。以下に、一般的なデプロイワークフロー例を示します。

ステージコマンド目的
ビルドcapgo deploy --channel production新しいビルドアーティファクトをアップロードする
テストcapgo promote build-123 --group betaテストグループに更新をリリースする
検証capgo metrics get --last-24h更新の成功率を確認する
リリースcapgo promote build-123 --channel stable全ユーザーにアップデートを展開する

ロールバック方法

__CAPGO_KEEP_0__のシステムは、問題を検出して自動的にアップデートを戻すことができるようにすることが、安定したアプリを保つために不可欠です。例えば、エラー率を監視するヘルスチェックエンドポイントを使用して、必要に応じてロールバックをトリガーすることができます。

# Rollback script triggered by monitoring
if [ $(curl -s https://api.capgo.app/metrics/errors) -gt 5 ]; then
  capgo rollback v1.2 --channel production
  notify-team "Update rolled back due to high error rate"
fi

__CAPGO_KEEP_0__のこのアプローチは成功しました Gunnebo Safe Storage 時間から分にダウンタイムを短縮しました [6].

高リスクのアップデートの場合、Capgoのステージドロールアウト機能を使用してください。ユーザー全体に展開する前に、広範囲の問題のリスクを減らすことができます。

sbb-itb-f9944d2

OTAアップデート方法

ステージドアップデートとユーザーグループ

Capgoのステージドアップデートは、ユーザーにSmoothなエクスペリエンスを保証するために、アップデートを展開する方法を制御することができます。 アプリの開発を支援するコマンドは、ベータ版グループの管理を助ける。企業のデータによると、ほぼ半分のアプリ(49%)は月にアップデートが必要である。 __CAPGO_KEEP_0__ [4]ステージングデプロイは、変更を段階的に実施しながらアプリを安定させるために重要な戦略になる。

メトリクスに基づくアップデートトリガー

アップデートの自動化 パフォーマンスメトリクスに基づいてアップデートを自動化することで、時間を節約し問題を防ぐことができる。監視Webhookを設定することで、重要なメトリクスを追跡し、アップデートを続行するか停止するかを決定できる。

メトリクスタイプ閾値アクション
クラッシュ率>2%ロールアウトの停止
エラーレート>0.5%緊急チームに通知

CI/CD パイプラインにこれらのチェックを組み込むことができます。これが例です。

if [ $(curl -s $MONITORING_API/crash-rate) -gt 2 ]; then
  capgo pause-rollout --channel production
  notify-team "Update paused: High crash rate detected"
fi

これらのメトリックは、パフォーマンストラッキングシステムと直接関連しています。このトピックの次の部分で詳しく説明します。

迅速な対応アップデート

重大なセキュリティ問題や大きなバグに直面した場合、迅速なアップデートの方法が必要です。緊急用に設計されたデバイスの確認チェックとロールバックオプションを含む、特定のアップデートチャネルを使用してください。これによりリスクを最小限に抑えることができます。

緊急アップデートの場合、専用のチャネルを使用してアップデートを展開できます。

capgo deploy --critical --channel hotfix

アップデートの配信速度をさらに改善し、法的要件を満たすために、CDN ルールを含む地理ベースのチャネルを使用することを検討してください。これにより、ユーザーに効率的にアップデートを配信できます。

アップデートのパフォーマンスの追跡

アップデート配信方法を設定した後、どの程度効果的に機能しているかを測定することができます。これらのキーメトリックを使用して、状況を把握することができます。

アップデートの成功メトリック

アップデートの成功を確認するには、3 つの主要な領域に注目してください。 展開完了, 検証時間, および ユーザー採用モバイルアプリケーションでは、展開成功率は通常95%から99%の範囲内 [1]CI/CDパイプラインを通じてリアルタイムで監視することで、目標を達成することができます:

指標目標重要閾値
展開完了>98%95%未満
検証時間45秒未満>120s
ユーザー採用 (24 時間)>75%<50%

アップデートエラー管理

自動システムは、更新のステータスを追跡し、エラーに応じて自動的にロールバックするように設計されます。デバイスの健康チェックが問題を検出すると、重大な問題は自動的に更新をロールバックするように設計されます。このような設定の例を見てみましょう。

if [ $DEVICE_SUCCESS_RATE -lt 85 ]; then
    trigger_rollback
fi

このような設定により、ユーザーにとっての影響を最小限に抑えるため、重大な障害は迅速に対応できます。

データ使用量の削減

デルタ更新は、フルアップデートに比べて、パayloadサイズを70-90%削減することでデータ使用量を削減する素晴らしい方法です。 [4]これらの最適化は、CI/CDパイプラインにルールとして組み込むことができます。

  • デルタ更新: バイナリの差分を作成して、変更されたコンポーネントのみを含める。
  • アセット最適化: 画像を WebP または AVIF に変換してファイルサイズを削減します。
  • Scheduled Off-peak Deployments: ネットワークトラフィックが低い時間帯にアップデートをロールアウトして影響を最小限に抑えます。

Conclusion: Automated OTA Updates

CI/CD Pipelines に自動化された OTA アップデートを組み込むことで、Capacitor のデプロイサイクルは週に 1 回から 1 時間ごとにアップデートすることができます。 JFrog は、この効率性の向上を強調しています。__CAPGO_KEEP_0__ アプリの場合、 85% の高速化されたデプロイ率 for Capacitor apps [3] 95% の安定したネットワークでの採用率 です。 targetLanguage [5]. この結果は、手動のステップの削減と更新プロセスの簡素化によるものです。

開発チームにとって、このアプローチは明確な利点を提供します。 ESP-IDFユーザーの中で、 現在、 % のチームがプレーミアージCIチェックを使用しています [1][2]、リリースの品質が向上しています。これらの取り組みは、データ駆動型のデプロイ戦略に関する前回の議論と一致しています。

自動化されたパイプラインは、圧縮形式とデルタアップデートを使用して、信頼性の高い更新を提供します。自動テスト、フェーズドロールアウト、パフォーマンス追跡を組み合わせると、チームは効率とセキュリティの両方でCapacitorアプリの更新を管理できます。

ライブ更新用Capacitorアプリ

ウェブ層のバグがライブの場合、Capgoを介して修正を配信するのではなく、 days待たずにアプリストアの承認を待つ必要がなくなる。ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビューのパスを通る。

はじめましょう

ブログの最新記事

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