📦 打包
复制一个包含安装步骤和本插件完整 Markdown 指南的配置提示。
📦 为在 Capgo 云中部署应用程序包管理,包括上传、兼容性检查和加密。
⬆️ 上传
标题: ⬆️ 上传别名: u
npx @capgo/cli@latest bundle upload⬆️ 将新应用程序包上传到 Capgo 云以进行分发。 版本必须大于 0.0.0且唯一。已删除的版本不能重用以保证安全。 外部选项:仅存储 URL 链接(对于大于 200MB 的应用程序或隐私要求有用)。 Capgo never 检查外部内容。添加加密以实现无信任安全。
示例:
npx @capgo/cli@latest bundle upload com.example.app --path ./dist --channel production,beta选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -a | string | API用于链接到您的帐户 |
| -p | string | 要上传的文件夹路径,如果未提供,则将使用capacitor.config中的webDir |
| -c | string | 要链接的频道。使用逗号分隔多个频道,例如production,beta |
| —rollout | string | 将上传的包作为此频道的滚动发布目标,百分比范围为0到100 |
| —rollout-percentage-bps | string | 设置上传的包裹滚动百分比,范围为 0 到 10000 |
| —rollout-cache-ttl-seconds | string | Cloudflare 滚动决策缓存 TTL 秒 |
| -e | string | 将链接指向外部 URL 而不是上传到 Capgo 云 |
| —iv-session-key | string | 设置包裹 URL 外部的 IV 和会话密钥 |
| —s3-region | string | 您的 S3 存储桶所在的区域 |
| —s3-apikey | string | API 的 S3 端点密钥 |
| —s3-apisecret | string | API S3 端点的密钥 |
| —s3-endpoint | string | S3 端点的 URL |
| —s3-bucket-name | string | 您的 AWS S3 存储桶的名称 |
| —s3-port | string | S3 端点的端口 |
| —no-s3-ssl | boolean | 禁用 S3 上传的 SSL |
| —key-v2 | string | 自定义私钥路径(v2 系统) |
| —key-data-v2 | string | 私有签名密钥 (v2 系统) |
| __CAPGO_KEEP_0__ | boolean | 打印捆绑包 URL 到标准输出 |
| 忽略签名密钥并发送清晰更新 | boolean | 忽略检查源 __CAPGO_KEEP_0__ 和索引是否在根目录中 |
| —no-code-check | boolean | Ignore checking if notifyAppReady() is called in source code and index present in root folder |
| 显示在控制台中用于加密更新的 IV 和会话密钥 | boolean | —bundle-url |
| —no-key | string | —no-__CAPGO_KEEP_0__-check |
| —display-iv-session | string | 链接到外部资源(例如 GitHub 版本) |
| —注释 | string | 关于此版本的注释,可能是发布说明,提交哈希,提交消息等 |
| —最小更新版本 | string | 最小版本要求才能更新到此版本。仅在设置为渠道的元数据时使用 |
| —基于原生包的最小更新版本 | boolean | 忽略元数据(node_modules)检查时上传 |
| —在上传时失败(非零退出)而不是上传,当包与渠道的当前原生包不兼容时。交互式终端中仍然可以选择原生构建;拒绝失败。 | boolean | —忽略校验和检查 |
| —忽略元数据检查 | boolean | —在上传时失败(非零退出)而不是上传,当包与渠道的当前原生包不兼容时。交互式终端中仍然可以选择原生构建;拒绝失败。不能与 —ignore-metadata-check 一起使用。 |
| —忽略元数据检查 | boolean | 忽略上传时的校验和检查 |
| —force-crc32-checksum | boolean | 强制CRC32校验和上传(覆盖自动检测) |
| —timeout | string | 上传过程超时时间(以秒为单位) |
| —multipart | boolean | [已弃用] 使用 —tus 代替。使用多部分协议进行 S3 上传 |
| —zip | boolean | 使用 zip 将捆绑包上传到 Capgo 云(遗留) |
| —tus | boolean | 使用 TUS 将捆绑包上传到 Capgo 云 |
| —tus-chunk-size | string | TUS可续传上传块大小(默认:自动) |
| —partial | boolean | [已弃用] 使用 —delta 代替。上传增量更新 |
| —partial-only | boolean | [已弃用] 使用 —delta-only 代替。仅上传增量更新,跳过完整包 |
| —delta | boolean | 上传差异更新(仅更改文件)以实现实时、超快更新而不是大型zip下载 |
| —delta-only | boolean | 仅上传差异更新而不包含完整包以实现最大速度(适用于大型应用) |
| —no-delta | boolean | 即使启用了实时更新,也禁用差异更新 |
| —encrypted-checksum | string | 一个加密的校验和(签名)。仅在上传外部捆绑包时使用。 |
| —自动设置捆绑包 | boolean | 设置捆绑包在 capacitor.config.json 中 |
| —干燥上传 | boolean | 干燥上传捆绑包过程:在数据库中添加行而不上传文件或更新频道(由 Capgo 内部测试使用) |
| —package.json | string | 多包项目的package.json文件路径(用逗号分隔) |
| —node-modules | string | 多包项目的node_modules目录路径(用逗号分隔) |
| —部分加密 | boolean | 加密delta更新文件(自动启用Updater > 6.14.4) |
| —删除上传时关联的捆绑包 | boolean | 在您尝试上传的通道中定位当前链接的捆绑包,并删除它 |
| —no-brotli-patterns | string | 要排除的Brotli压缩文件(逗号分隔的模式,例如“.jpg,.png”) |
| —disable-brotli | boolean | 即使更新器版本支持它,也完全禁用Brotli压缩 |
| —version-exists-ok | boolean | 如果捆绑包版本已经存在,则在CI/CD工作流程中使用单元仓库时成功退出 |
| —self-assign | boolean | 允许设备自动加入此通道(更新通道设置) |
| —qr-preview | boolean | 打印此捆绑预览上传后终端的二维码 code |
| —发送更新通知 | boolean | 在更新关联的频道捆绑后,向设备发送本机更新检查通知 |
| —自定义主机 | string | 自定义 Supabase 主机 URL(用于自主托管或 Capgo 开发) |
| —自定义匿名 | string | 自定义 Supabase 匿名密钥(用于自主托管) |
| —详细输出 | boolean | 以详细日志形式启用详细输出 |
🧪 兼容性
标题为“ 🧪 兼容性”npx @capgo/cli@latest bundle compatibility🧪 检查 Capgo 云中的特定频道与一个捆绑包的兼容性,以确保更新是安全的。
示例:
npx @capgo/cli@latest bundle compatibility com.example.app --channel production选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -a | string | API 密钥用于链接到您的帐户 |
| -c | string | 与__CAPGO_KEEP_0__进行兼容性检查的频道 |
| ——文本 | boolean | 以文本形式输出而非表情符号 |
| ——package-json | string | 多包仓库的package.json文件路径(逗号分隔) |
| ——node-modules | string | 多包仓库的node_modules目录路径(逗号分隔) |
| ——supa-host | string | 自托管或Capgo开发时的自定义Supabase主机URL |
| ——supa-anon | string | 自托管时的自定义Supabase匿名密钥 |
🔹 发布类型
🔹 发布类型npx @capgo/cli@latest bundle releaseType🧭 根据与频道最新元数据的兼容性打印“native”或“OTA”。
例如:
npx @capgo/cli@latest bundle releaseType com.example.app --channel production选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -a | string | API key 链接到您的帐户 |
| -c | string | 与哪个频道进行比较 |
| —package-json | string | 多包仓库的package.json文件路径(逗号分隔) |
| —node-modules | string | 多包仓库的node_modules目录路径(逗号分隔) |
| —supa-host | string | 自主托管或Capgo开发时的自定义Supabase主机URL |
| —supa-anon | string | 自主托管时的自定义Supabase匿名密钥 |
别名: d
npx @capgo/cli@latest bundle delete🗑️ 从 Capgo 云中删除特定包,选项性地针对单个版本。
示例:
npx @capgo/cli@latest bundle delete BUNDLE_ID com.example.app选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -a | string | API |
| — | string | 自定义 Supabase 主机 URL(用于自主托管或Capgo开发) |
| — | string | 自定义 Supabase 匿名密钥(用于自主托管) |
📋 列表
标题:列表别名: l
npx @capgo/cli@latest bundle list📋 列出应用程序中的所有Capgo云包
示例:
npx @capgo/cli@latest bundle list com.example.app选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -a | string | API用于链接到您的帐户 |
| –supa-host | string | 自定义 Supabase 主机 URL(用于自主托管或 Capgo 开发) |
| –supa-anon | string | 自定义 Supabase 匿名密钥(用于自主托管) |
🧹 清理
标题: “ 🧹 清理”别名: c
npx @capgo/cli@latest bundle cleanup🧹 在 Capgo 云中删除旧的捆绑包,保留最近的指定版本。 与频道相关的捆绑包除非使用 —ignore-channel 选项,否则将被保留。
示例:
npx @capgo/cli@latest bundle cleanup com.example.app --bundle=1.0 --keep=3选项:
| 参数: | 类型 | 描述 |
|---|---|---|
| -b | string | 要删除的应用程序的包版本号 |
| -a | string | API 与您的帐户关联的密钥 |
| -k | string | 保留的版本号 |
| -f | boolean | 强制删除 |
| —ignore-channel | boolean | 即使与频道相关联,也删除包(警告:也会删除频道) |
| —自定义主机 | string | 自定义 Supabase 主机 URL(用于自主托管或 Capgo 开发) |
| —自定义匿名 | string | 自定义 Supabase 匿名密钥(用于自主托管) |
🔒 加密
标题:加密npx @capgo/cli@latest bundle encrypt🔒 对 zip 包进行加密以便安全地进行外部存储。 返回 ivSessionKey 用于上传/解密。使用 ‘bundle zip —json’ 获取校验和。
示例:
npx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| —key | string | 自定义私钥路径 |
| —key-data | string | 私钥 |
| -j | boolean | 以 JSON 格式输出 |
| —package-json | string | 多包仓库的 package.json 文件路径(以逗号分隔) |
🔓 解密
标题:解密npx @capgo/cli@latest bundle decrypt🔓 解密一个加密的包(主要用于测试)。 打印 base64 会话密钥以验证。
示例:
npx @capgo/cli@latest bundle decrypt ./myapp_encrypted.zip CHECKSUM选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| —key | string | 自定义私钥路径 |
| —key-data | string | 私钥 |
| —checksum | string | 包装的校验和,用于验证包装的完整性 |
| —package-json | string | 多包仓库中的package.json文件路径(用逗号分隔) |
🔹 Zip
名为“ 🔹 Zip”的部分npx @capgo/cli@latest bundle zip🗜️ 将您的应用程序包打包成 zip 文件。 返回用于加密的校验和。使用 —json 可以获得机器可读的输出。
示例:
npx @capgo/cli@latest bundle zip com.example.app --path ./dist选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -p | string | 要上传的文件夹路径,如果未提供则会使用 capacitor.config 中的 webDir |
| -b | string | 打包的 zip 文件名称 |
| -n | string | 压缩文件的名称 |
| -j | boolean | 以 JSON 格式输出 |
| —no-code-check | boolean | 忽略检查源 code 和索引文件是否在根目录中 |
| —key-v2 | boolean | 使用加密 v2 |
| —package-json | string | 多包项目的 package.json 文件路径(以逗号分隔) |