📦 打包
复制一个包含安装步骤和本插件的完整 Markdown 指南的配置提示。
📦 在 Capgo 云中管理应用程序包的部署,包括上传、兼容性检查和加密。
⬆️ 上传
标题: ⬆️ 上传别名: u
npx @capgo/cli@latest bundle upload⬆️ 将应用程序包上传到 Capgo 云以进行分发。 版本号必须大于 0.0.0 并且唯一。 已删除的版本不能重用以保证安全。 外部选项:仅存储一个 URL 链接(对于大于 200MB 的应用程序或隐私要求有用)。 Capgo 不会检查外部内容。添加加密以实现无信任安全。
示例:
npx @capgo/cli@latest bundle upload com.example.app --path ./dist --channel production选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -a, | string | API账户关联的关键 |
| -p, | string | 要上传的文件夹路径,如果未提供将使用capacitor.config中的webDir |
| -c, | string | 关联的频道 |
| -e, | string | 将链接指向Capgo Cloud以外的外部URL |
| --iv-session-key | string | 设置 IV 和会话密钥为捆绑 URL外部 |
| —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系统) |
| —bundle-url | boolean | 将bundle URL打印到stdout |
| —no-key | boolean | 忽略签名密钥并发送清晰更新 |
| —no-code-check | boolean | 忽略检查 notifyAppReady() 在源 code 和根目录中的索引是否被调用 |
| —显示 IV 会话 | boolean | 在控制台中显示用于加密更新的 IV 和会话密钥 |
| -b, | string | 要上传的捆绑包版本号 |
| —链接 | string | 链接到外部资源(例如 GitHub 发布) |
| —评论 | string | 关于此版本的评论,可以是发布说明、提交哈希、提交消息等 |
| —最小更新版本 | string | 仅当在渠道中设置禁用自动更新时,用于更新到此版本所需的最小版本 |
| —自动最小更新版本 | boolean | 根据本地包设置最小更新版本 |
| —忽略元数据检查 | boolean | 上传时忽略元数据(node_modules)检查 |
| —忽略校验和检查 | boolean | 上传时忽略校验和检查 |
| —强制CRC32校验和 | boolean | 强制CRC32校验和上传(覆盖自动检测) |
| —超时 | string | 上传过程的超时时间(以秒为单位) |
| —多部分 | boolean | (已弃用)使用 —tus 代替。使用多部分协议进行 S3 上传 |
| —zip | boolean | 将打包文件上传到 Capgo 云 (旧版) |
| —tus | boolean | 将打包文件上传到 Capgo 云 (使用 TUS) |
| —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 | 加密校验和(签名)。仅在上传外部打包时使用 |
| —auto-set-bundle | boolean | 在capacitor.config.json中设置打包 |
| —dry-upload | boolean | 干燥上传打包过程,表示不会上传文件但会在数据库中添加条目(由Capgo用于内部测试) |
| —package-json | string | 多包仓库的package.json文件路径(以逗号分隔) |
| —node-modules | string | node_modules 目录的路径(逗号分隔) |
| —部分加密 | boolean | 加密delta更新文件(自动启用于更新器 > 6.14.4) |
| —上传时删除关联的包 | boolean | 在您尝试上传的频道中定位当前链接的捆绑包,并删除它 |
| —no-brotli-模式 | string | 不压缩的文件(逗号分隔的模式,例如,“*.js”).jpg.png |
| —禁用Brotli | boolean | 完全禁用 brotli 压缩,即使更新器版本支持它 |
| —存在版本-OK | boolean | 如果捆绑版本已存在,则退出,适用于 CI/CD 工作流程中的多个仓库 |
| —自我分配 | boolean | 允许设备自动加入此频道(更新频道设置) |
| —supa-host | string | 自定义 Supabase 主机 URL(用于自主托管或 Capgo 开发) |
| —supa-anon | string | 自定义 Supabase 匿名密钥(用于自主托管) |
| —verbose | boolean | 启用详细日志的详细输出 |
🧪 兼容性
兼容性(🧪)npx @capgo/cli@latest bundle compatibility🧪 在 Capgo 云中检查一个捆绑包与特定频道的兼容性,以确保更新是安全的。
示例:
npx @capgo/cli@latest bundle compatibility com.example.app --channel production选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -a, | string | API 键连接到您的帐户 |
| -c, | string | 检查兼容性通道 |
| —text | boolean | 输出文本而非表情符号 |
| —package-json | string | 多包仓库的package.json文件路径(逗号分隔) |
| —node-modules | string | 多包仓库的node_modules目录路径(逗号分隔) |
| —supa-host | string | 自主托管或开发环境下的自定义Supabase主机URL(Capgo) |
| —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 Cloud 删除特定包,选项性地目标单个版本。
示例:
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, | string | 强制删除 |
| —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选项:
| __CAPGO_KEEP_0__ | __CAPGO_KEEP_1__ | __CAPGO_KEEP_2__ |
|---|---|---|
| __CAPGO_KEEP_3__ | string | 自定义私钥路径 |
| __CAPGO_KEEP_4__ | string | 输出 JSON |
| __CAPGO_KEEP_5__ | string | 多包仓库的 package.json 文件路径 (逗号分隔) |
| —key | string | —key-data |
🔓 解密
标题:解密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文件路径(逗号分隔) |
🔹 压缩包
标题:压缩包npx @capgo/cli@latest bundle zip🗜️ 打包您的应用程序包文件。 返回用于加密的校验和。使用 —json 以获取机器可读输出。
示例:
npx @capgo/cli@latest bundle zip com.example.app --path ./dist选项:
| 参数 | 类型 | 描述 |
|---|---|---|
| -p, | string | 要上传的文件夹路径,如果未提供,则使用 capacitor.config 中的 webDir |
| -b, | string | 打包的版本号以命名 zip 文件 |
| -n, | string | 应用包名 |
| -j, | string | 输出为 JSON |
| —no-code-check | boolean | 忽略源代码code和根目录中的index文件是否被调用 |
| —key-v2 | boolean | 使用加密 v2 |
| —package-json | string | 多包仓库的package.json文件路径(以逗号分隔) |