Itero
手动API

手动上传 API

如果您希望使用自己的构建器 CI/CD 管道,而不是利用 Itero 的 GitHub 应用 集成,那么本页面适合您!通过手动将 zip 文件提交到 Itero,您的 CI 管道将不会受到 Itero 上的席位许可证数量限制而触发云构建。

🚨

此流程仅适用于专业计划。API 按原样提供。有关与系统的集成支持,我们提供咨询服务。请发送邮件至 support@plasmo.com 以获取更多详细信息。

下载 API 密钥

转到扩展的设置页面并下载 API 密钥。该密钥是一个 JSON 文件,其结构如下:

{
  "itero": {}
}

通过 GitHub Action 提交

您可以使用密钥与 BPP GitHub Action 自动将扩展上传到 Itero。只需将 itero 密钥添加到现有的 BPP 密钥中,或作为单独的秘密工作流。

确保您的 BPP 版本为 v3.3.0 (opens in a new tab) 或更高版本。

通过 API 调用提交

首先,创建扩展的 zip 文件。然后按照以下流程操作:

1. POST https://itero.plasmo.com/api/submit/upload

此端点会为您提供一个签名 URL,用于上传您的扩展。

请求体必须包含 keys.itero 对象,例如:

const keys = JSON.parse(await readFile("./keys.json", "utf8")) // 其中 keys.json 是您从设置页面下载的文件
 
...
 
const resp = await fetch("https://itero.plasmo.com/api/submit/upload", {
  method: "POST",
  headers: {
      "Content-Type": "application/json"
    },
  body: JSON.stringify(keys.itero)
})
 
const data = await resp.json()
 
console.log(data)

响应是一个包含上传 URL 的 JSON:

{
  "url": "signed-upload-url"
}

2. PUT signed-upload-url

取步骤 1 的响应 URL,并向其发出 PUT 请求,附带 zip 文件。确保 Content-Type 头为 application/zip

3. POST https://itero.plasmo.com/api/submit/sign

上传完成后,您需要调用签名端点以完成流程并更新将提供给测试人员的扩展包。

请求体必须包含像步骤 1 中的 keys.itero 对象。