コンテンツにスキップ

コマンド

使用方法

使用方法

All command should be run in your app folder with capacitor project ignited properly.

npx @capgo/cli@latest init [apikey]

アプリをCapgoに追加します。 __CAPGO_KEEP_1__ をアプリに追加してアップデートを検証します。同様に、アプリをビルドし、__CAPGO_KEEP_2__ にアップロードし、アップデートが正常に動作するかどうか確認します。

It will add your app to Capgo. It will add the code to your app to validate the update. Likewise, it will build your app. Furthermore, it will upload your app to Capgo. And it will help you to check if the update works.

npx @capgo/cli login [apikey]

このメソッドはあなたの apikey を記憶しておくためにあります。

オプションで、以下の値を指定することができます。

--local あなたの APIキー をローカルリポジトリに保存し、gitで無視することができます。

npx @capgo/cli doctor

最新の Capgo パッケージとアップデートされているかどうかを確認するコマンドです。

このコマンドは、バグレポートの際にも役立ちます。

npx @capgo/cli app add [appId]

[appId] アプリIDのフォーマットは com.test.app ここで説明されています。 💡 すべてのオプションは、指定されていない場合はあなたの設定ファイルから推測されます。.

オプションを指定することができます。

カスタムアイコンを __CAPGO_KEEP_0__ ウェブアプリに表示したい場合は、以下のオプションを指定してください。

  • --icon [/path/to/my/icon] to have a custom icon display in Capgo web app.
  • --name [test] リストにカスタム名を持つ。
  • --apikey [key] API キーを使用してアカウントにリンクします。
  • --retention [retention] アプリケーションバンドルの保持期間(日)、0(デフォルト)= 無限。

例: capacitor.config.json appId と AppName の場合、リソースフォルダ内のアイコンを推測します。

{
"appId": "ee.forgr.capacitor_go",
"appName": "Capgo",
"webDir": "dist"
}

npx @capgo/cli app set [appId]

[appId] あなたのアプリIDです。形式についてはここで説明しています。 オプションとして、以下を指定できます。.

__CAPGO_KEEP_0__ ウェブアプリでカスタムアイコンを表示するには

  • --icon [/path/to/my/icon] to have a custom icon display in Capgo web app.
  • --name [test] リスト内のカスタム名を持つ。
  • --retention [retention] アプリケーションバンドルの保持期間(日)、0(デフォルト)= 無限。
  • --apikey [key] APIキーを使用してアカウントにリンクします。

npx @capgo/cli app list [appId]

[appId] アプリIDの形式は「ここ」で説明されています。 com.test.app オプションで、以下の情報を入力できます。 __CAPGO_KEEP_0__キーを使用してアカウントにリンクします。.

削除

  • --apikey [key] API key to link to your account.

アプリIDの形式は「ここ」で説明されています。

オプションで、以下の情報を入力できます。

npx @capgo/cli app delete [appId]

[appId] あなたのアプリIDのフォーマットはこちらで説明されています。 com.test.app はこちらで説明されています。 ここ.

オプションで、以下のキーを指定できます。

  • --apikey [key] API キーを指定すると、アカウントにリンクされます。
  • --bundle バージョン番号を指定すると、このバージョンだけが削除されます。

npx @capgo/cli app debug [appId]

[appId] あなたのアプリIDのフォーマットはこちらで説明されています。 com.test.app はこちらで説明されています。 ここ.

オプションで、以下のキーを指定できます。

  • --apikey [key] APIキーを使用してアカウントにリンクします。
  • --device __CAPGO_KEEP_0__で指定したデバイスでデバッグします。

npx @capgo/cli app setting [path]

Capacitor設定を編集します。

[path] - 変更したい設定のパスを指定してください。例えば、自動更新を無効にする場合、 appIdを指定してください。 appId 自動更新を無効にする場合、を指定してください。 capacitor-updaterplugins.CapacitorUpdater.autoUpdate を指定する必要があります。 --string off.

または --string __CAPGO_KEEP_0__キーを使用してアカウントにリンクします。 --bool!

オプション:

  • --string <string> - 設定を文字列に設定します
  • --bool <true | false> - 設定をブール値に設定します

npx @capgo/cli bundle upload [appId]

[appId] あなたのアプリIDです。形式についてはこちらを参照してください。 ここ.

オプションで、以下のキーを指定することができます。

  • --apikey <apikey> API キーを指定して、アカウントにリンクすることができます。
  • --path <path> アップロードするフォルダのパス
  • --channel <channel> 外部チャンネルへのリンク
  • --external <url> Capgoにアップロードするのではなく、外部URLへのリンクを設定します。
  • --iv-session-key <key> バンドルURLの外部のIVとセッションキーを設定します。
  • --s3-endpoint <s3Endpoint> __CAPGO_KEEP_0__エンドポイントのURL
  • --s3-region <region> S3バケットのリージョン
  • --s3-apikey <apikey> APIエンドポイントのキー
  • --s3-apisecret <apisecret> APIエンドポイントのシークレット
  • --s3-bucket-name <bucketName> AWS S3バケットの名前
  • --s3-port <port> __CAPGO_KEEP_0__エンドポイントのポート
  • --no-s3-ssl S3アップロードのSSLを無効にします。
  • --key <key> パブリック署名用のカスタムパス(v1システム)
  • --key-data <keyData> パブリック署名用のキー(v1システム)
  • --key-v2 <key> プライベート署名鍵のカスタムパス (v2 システム).
  • --key-data-v2 <keyData> v2 システムのプライベート署名鍵.
  • --bundle-url バンドルの URL を標準出力に表示します.
  • --no-key 署名鍵を無視し、明示的にアップデートを送信します.
  • --no-code-check code のソースとインデックスが root フォルダに存在する場合、notifyAppReady() が呼び出されたかどうかをチェックしないようにします.
  • --display-iv-session アップデートを暗号化するために使用した IV とセッション鍵をコンソールに表示します.
  • --bundle <bundle> アップロードするバンドルのバージョン番号.
  • --min-update-version <minUpdateVersion> このバージョンにアップデートするために必要な最小バージョン番号です。自動アップデートがメタデータに設定されている場合にのみ使用されます。
  • --auto-min-update-version ネイティブパッケージに基づいて最小アップデートバージョンを設定します。
  • --ignore-metadata-check アップロード時にメタデータ (node_modules) チェックを無視します。
  • --ignore-checksum-check アップロード時にチェックサムチェックを無視します。
  • --timeout <timeout> 秒単位のアップロードプロセスのタイムアウト時間.
  • --delta Delta (manifest) ファイルをフル バンドルと一緒にアップロードします。
  • --delta-only フル バンドルをスキップして、Delta (manifest) のアップデートのみをアップロードします。
  • --no-delta Delta (manifest) のアップロードを無効にします (インスタント アプリ用に有効ですが、フル バンドルをアップロードしたい場合に便利)。 autoUpdate tus プロトコルを使用してバンドルをアップロードします。
  • --tus S3 にデータをアップロードするために使用する multipart プロトコル (非推奨、TUS を使用することをお勧めします)。
  • --multipart アップロードする外部バンドルの暗号化されたチェックサム (署名)。外部バンドルをアップロードする場合にのみ使用されます。
  • --encrypted-checksum <encryptedChecksum> package.json のパス。モノレポ用に便利です。
  • --package-json <packageJson> __CAPGO_KEEP_0__.config.json にバンドルを設定します。
  • --auto-set-bundle Set the bundle in capacitor.config.json.
  • --node-modules <nodeModules> 外部オプションは、2 つのケースを解除します: 企業のプライバシー懸念、または 200 MB を超えるアプリ。外部オプションを設定すると、__CAPGO_KEEP_1__ は ZIP のリンクのみを保存し、すべてのアプリにリンクを送信します。

👀 code クラウドは、外部オプションの場合、リンク内の内容を確認せずに、または Capgo には保存されていないため、Capgo 内の内容を確認しません。

👀 Capgo cloud never looks at what is in the link (for external option), or in the code when stored.

🔑 Capgoを使用することで、セカンドレイヤーのセキュリティを追加できます。すると、Capgoは何も見たり変更したりすることができなくなり、 “信頼しない” になります。

package.json バージョン

{
"version": "1.0.2"
}

⛔ バージョンは “0.0.0” より大きくなければなりません。

💡 バージョン番号を毎回更新することを忘れないでください。バージョン番号は、削除された後は再利用できず、セキュリティ上の理由で上書きできません。

npx @capgo/cli bundle list [appId]

[appId] アプリIDのフォーマットは com.test.app ここで説明しています。 オプションとして、以下を指定できます。.

バージョン

  • --apikey [key] API key to link to your account.

npx @capgo/cli bundle delete [appId]

[appId] アプリ ID の形式は com.test.app はこちらで説明されています。 ここ.

オプションで、

  • --apikey [key] API key to link to your account.
  • --bundle バージョン番号を付けて、指定したバージョンだけを削除します。

メジャーバージョンの SemVer 範囲で、Cloud へ

npx @capgo/cli bundle cleanup [appId] --bundle=[majorVersion] --keep=[numberToKeep]

[appId] アプリ ID の形式は com.test.app ここで説明されています オプションで、__CAPGO_KEEP_0__ キーを指定してアカウントにリンクできます。.

削除する前のパッケージのバージョンを指定することもできます。

  • --apikey [key] API key to link to your account.
  • --bundle [majorVersion] 削除する前のパッケージのバージョンを指定することもできます。 numberToKeep.
  • --keep [numberToKeep] 削除する前のパッケージのバージョンを指定することもできます。

削除する前のパッケージのバージョンを指定することもできます。 npx @capgo/cli cleanup [appId] --bundle=10.0.0 削除する前のパッケージのバージョンを指定することもできます。

削除する前のパッケージのバージョンを指定することもできます。 npx @capgo/cli cleanup [appId] --keep=2 削除する前のパッケージのバージョンを指定することもできます。

削除する前のパッケージのバージョンを指定することもできます。

警告: このコマンドは廃止され、次のメジャーリリースで削除されます。新しい暗号化システムを使用してください。 npx @capgo/cli bundle encrypt [path/to/zip]

このコマンドは、外部のソースを使用して code を保存する場合、またはテスト目的で使用する場合に使用されます。

オプションで、以下を指定できます。

--key [/path/to/my/private_key] プライベートキーのパスを指定します。 --key-data [privateKey] プライベートキーデータを指定します。インラインで使用する場合。 ivSessionKeyコマンドは、y と暗号化された zip を生成し、アップロードコマンドまたは復号化コマンドと共に使用します。

npx @capgo/cli bundle encrypt [path/to/zip] [checksum]

このコマンドは、codeを外部のソースに保存する場合やテスト用途の場合に使用されます。 チェックサムは、--key-v2で生成されたアーカイブのsha256です。ファイルの整合性を検証するために使用されます。 チェックサムは、プライベートキーで暗号化され、バンドルと共に送信されます。 暗号化 v2 では、チェックサムはバンドルの「署名」にアップグレードされます。

オプションで指定することができます:

--key [/path/to/my/private_key] プライベート キーのパスを指定します。 --key-data [privateKey] インラインで使用する場合のプライベート キー データを指定します。 --json JSON形式で情報を出力します。 ivSessionKeyコマンドは、y と暗号化された ZIP を生成し、アップロード コマンドまたは復号化 コマンドと使用します。

npx @capgo/cli bundle decrypt [path/to/zip] [ivSessionKey]

オプションで指定することができます:

--key [/path/to/my/private_key] プライベート キーのパスを指定します。

--key-data [privateKey] __CAPGO_KEEP_0__

Decrypt V2

Decrypt V2

npx @capgo/cli bundle decryptV2 [path/to/zip] [ivSessionKey]

オプション

--key [/path/to/my/private_key] __CAPGO_KEEP_1__ --key-data [privateKey] __CAPGO_KEEP_0__ --checksum [checksum] Decrypt V2

Zip

Zip

npx @capgo/cli bundle zip [appId]

[appId] アプリID ここ.

オプション

  • --path [/path/to/my/bundle] 特定のフォルダをアップロードする。
  • --bundle [1.0.0] ファイル名のバージョン番号を設定する。
  • --name [myapp] ファイル名をオーバーライドする。
  • --json 情報をJSON形式で出力する。
  • --no-code-check code チェックを無視してバンドルを送信する。
  • --key-v2 新しい暗号化システムを使用する。新しい暗号化システムは、ファイルの完全性を検証するために、より良いチェックサムを使用するため、必須です。

npx @capgo/cli bundle compatibility [appId] -c [channelId]

[appId] あなたのアプリIDです。形式はこちらで説明しています。 あなたの新しいチャンネルの名前です。. [channelId] オプションで、以下を指定できます。

Compatibility

  • --apikey [key] API キーを使用してアカウントにリンクします。
  • --text テーブルに絵文字を使用するのではなく、テキストを使用してください。
  • --channel [channel] 互換性を確認するためのチャンネルを確認してください。
  • --package-json <packageJson> パッケージ.jsonへのパス。モノレポ用に便利です。
  • --node-modules <nodeModules> モノレポ用に便利なnode_modulesへのパスの一覧(カンマ区切り ex: ../../node_modules,./node_modules)。

npx @capgo/cli channel add [channelId] [appId]

[channelId] 新しいチャンネルの名前を入力してください。 [appId] アプリIDのフォーマットはこちらで説明されています。 com.test.app 互換性の説明はこちらで説明されています。 ここ.

npx @capgo/cli channel delete [channelId] [appId]

[channelId] __CAPGO_KEEP_0__ を削除したいチャンネルの名前を入力してください。 [appId] __CAPGO_KEEP_0__ の形式は com.test.app ここで説明されています。 リスト.

「リスト」というセクション

__CAPGO_KEEP_0__ の形式は

npx @capgo/cli channel list [appId]

[appId] ここで説明されています。 com.test.app ここ __CAPGO_KEEP_0__.

任意に、以下の情報を指定することができます:

  • --apikey [key] API キーを指定すると、ユーザーアカウントにリンクできます。

npx @capgo/cli channel set [channelId] [appId]

[appId] あなたのアプリIDです。形式については、 ここで説明されています。.

任意に、以下の情報を指定することができます:

  • --bundle [1.2.3] あなたのアプリパッケージがすでにクラウドに送信されている場合、そのパッケージをチャンネルにリンクするために指定できます。
  • --latest パッケージバージョンを取得するには、 package.json:version使用できません。 --bundle.
  • --state [ normal | default ] チャンネル状態を設定することができます。 normal または default. 一つのチャネルが必要です default.
  • --downgrade このチャネルは、デバイスにダウングレード版を送信することを許可します。
  • --no-downgrade このチャネルは、デバイスにダウングレード版を送信することを許可しません。
  • --upgrade このチャネルは、デバイスにメジャーバージョンアップのバージョンを送信することを許可します。
  • --no-upgrade このチャネルは、デバイスにメジャーバージョンアップのバージョンを送信することを許可しません。
  • --ios このチャネルは、iOS デバイスにバージョンを送信することを許可します。
  • --no-ios このチャネルは、iOS デバイスにバージョンを送信することを許可しません。
  • --android このチャネルは、Android デバイスにバージョンを送信することを許可します。
  • --no-android このチャネルは、Android デバイスにバージョンを送信することを許可しません。
  • --self-assign このチャネルにデバイスは自分で割り当てることができます。
  • --no-self-assign このチャネルにデバイスは自分で割り当てることができません。
  • --disable-auto-update STRATEGY このチャネルの自動更新戦略を無効にします。可能なオプションは次のとおりです: メジャー、ミニ、メタデータ、なし。
  • --apikey [key] API のキーを使用してアカウントにリンクします。

古いバージョンに対して更新を無効にする方法は複数あります。
Capgo は code を更新できません。したがって、古い code の code に更新された code を持つバージョンから code を持つバージョンに更新することはできません。 その方法は複数あります。

1つ目は、 major 戦略です。この戦略は、 0.0.0 -> 1.0.0から更新することを防ぎます。 またはバージョン番号のメジャーは、10.0.0 などのようにハイライトされた数字です。 0.0.0).
2つ目は、 minor 戦略です。この戦略は、 0.0.0 -> 1.1.0 から更新することを防ぎます。 またはバージョン番号のメジャーは、 1.1.01.2.0. 注意 この戦略は、更新を防止しないことに注意してください。 0.1.0 -> 1.1.0

第三に、 patch strategy. It was added into capgo as a very strict mode. It’s not recommended to be used unless you fully understand how it works. In order for it to accept a update the following conditions must be meet:

  • この戦略は、__CAPGO_KEEP_0__ に非常に厳密なモードとして追加されました。使用することをお勧めしません。機能する方法を完全に理解している場合にのみ使用してください。
  • 更新を受け入れるには、以下の条件を満たす必要があります。
  • 新しいバージョンと古いバージョン間のメジャーは同じです。

新しいバージョンと古いバージョン間のマイナは同じです。

  • 0.0.311 -> 0.0.314 ✅
  • 0.0.0 -> 0.0.314 ✅
  • 0.0.316 -> 0.0.314 ❌
  • 0.1.312 -> 0.0.314 ❌
  • 1.0.312 -> 0.0.314 ❌

新バージョンのパッチが古バージョンのパッチよりも大きい場合。 metadata 更新が許可されるまたは拒否されるシナリオの例を示します。
最後に、最も複雑な戦略です。戦略。 WILL チャンネルに必要なメタデータが不足しているため、失敗します。
チャンネルにメタデータが不足している場合、以下のメッセージを確認します。

メタデータが見つかりません

メタデータが見つからない場合は、失敗しているチャンネルの現在のバンドルに移動し、メタデータを設定する必要があります。
まず、失敗しているチャンネルを特定する必要があります。失敗しているチャンネルを特定するには、 misconfigured

不正設定のテーブル

失敗しているチャンネルを特定したら、 Bundle numberをクリックしてください。これにより、バンドルページに移動することができます。

失敗しているチャンネルを特定

そこで、失敗しているチャンネルのメタデータを設定する必要があります。 Minimal update version field. このフィールドは semver.
値が semver である場合にエラーが発生しますが、すべて正常に実行されれば、次のような結果が得られます。

最小バージョンを設定

更新を毎回手動で設定したくない場合があります。幸いにも、CLI はこのメタデータを送信しないように防止します

CLI メタデータなしで失敗

を使用する場合に、バンドルを適切にアップロードするには、 metadata を指定する必要があります。有効な semver のようなもの --min-update-version __CAPGO_KEEP_0__ メタデータありでアップロード

CLI upload with metadata

互換性を確保するための他の方法も存在します。 --min-update-version option --auto-min-update-version. ここではどうやって動くか説明します。

1. まず、現在アップロードされているチャンネルのバージョンを確認します。互換性をチェックすることは、コマンドと同じように行います。 bundle compatibility 2. 新しいバージョンが 100% 対応している場合、最新のバージョンから "__CAPGO_KEEP_0__" を再利用します。 min_update_version 互換性がなければ、__CAPGO_KEEP_1__ を新しくアップロードされたバージョンの "__CAPGO_KEEP_2__" に設定します。 min_update_version このオプションを使用すると、常に "__CAPGO_KEEP_3__" の情報を取得できます。表示される例は次のようになります: "__CAPGO_KEEP_4__"

新しいバージョンが互換性がない場合、表示される例は次のようになります: "__CAPGO_KEEP_5__" min_update_version 信頼できないエンドツーエンド暗号化

「信頼できないエンドツーエンド暗号化」」というセクション

Min update version

Min update version not compatible

Capgoはエンドツーエンド暗号化をサポートしています。これは、バンドル(code)がクラウドに送信される前に暗号化され、デバイスで復号化されることを意味します。 そのためには、RSA鍵ペアを生成する必要があります。次のコマンドを使用して生成できます。

__CAPGO_KEEP_1__

暗号化システムはRSAとAESの組み合わせです。RSA鍵はAES鍵を暗号化し、AES鍵はファイルを暗号化します。

暗号化のしくみ

暗号化の構造

アプリ用に鍵を作成する

アプリ用に鍵を作成する

npx @capgo/cli key create

オプションで、既存の鍵を上書きすることもできます。このコマンドは、鍵ペアを作成し、アプリに保存し、プライベート鍵を安全な場所に保存するように求めます。プライベート鍵をgitコミットしないでください。また、誰かに共有しないでください。 --force ローカルテスト後、鍵をconfigファイルから削除し、CIステップで追加する

アプリのconfigファイルに鍵を保存する key save

npx @capgo/cli key save

オプションで、以下を指定できます。

--key [/path/to/my/public_key] 公開鍵ファイルのパスを指定します。

--key-data [publicKey] インラインで使用する場合の公開鍵データを指定します。このコマンドは、推奨事項に従ってアプリの設定ファイルに鍵を含まないようにした場合に便利です。

自動化を実現するには、GitHub アクションを使用して、サーバーにデータを送信するように設定することをお勧めします。

GitHub アクションのチュートリアル

GitHub - Cap-go/demo-app

CI環境変数にAPI キーを設定することを忘れないでください。

コマンドから続けてください。

コマンドから続ける

__CAPGO_KEEP_0__を使用している場合 コマンド APIと連携してダッシュボードとAPIの操作を計画する APIの概要 APIの概要の実装詳細 導入 導入の実装詳細 APIの鍵 APIの鍵の実装詳細 デバイス デバイスの実装詳細 バンドル __CAPGO_KEEP_0__の実装詳細についてのバンドル