Orbit
连接Bitbucket存储库
Bitbucket connects to Orbit through OAuth: you authorise Kapsule once, Orbit lists the repositories your Bitbucket account can reach, and it registers a webhook per repository so every push triggers…
Bitbucket 通过 OAuth 连接到 Orbit: 你授权 Kapsule 一次,Orbit 列出你的 Bitbucket 账户可以访问的仓库,并为每个仓库注册一个 webhook,这样每次推送都会触发构建。本指南涵盖连接、选择仓库、创建项目,以及当仓库未出现时需要检查的内容。
开始之前
Orbit 只能看到你的 Bitbucket 账户能看到的内容。对于工作区仓库,你需要至少拥有写入权限,以及足够的权限来创建仓库 webhook。如果你的工作区限制第三方 OAuth 消费者,管理员必须在连接成功之前允许 Kapsule Orbit。
步骤 1: 连接 Bitbucket
- 在 KPanel 中,点击左侧边栏中的 Orbit。
- 点击 New project。
- 保持模式设置为 Import Git Repo。
- 在步骤 1 上,点击 Connect Bitbucket。
你将被发送到 Bitbucket 以授权 Kapsule Orbit OAuth 消费者。授予所请求的权限,Bitbucket 将你返回到 KPanel,你的仓库已加载。步骤 1 随后显示 Just connected。
如果授权失败,KPanel 会显示 Bitbucket 返回的错误。阅读它而不是盲目重试: 工作区政策阻止和取消的授权看起来相似但需要不同的修复。
步骤 2: 选择仓库
你可访问的仓库以列表形式出现。点击你要部署的仓库旁边的 Select。私有仓库带有 Private 标签;Orbit 同样可以部署公共和私有仓库。
如果仓库缺失
- 确认你在该仓库上的访问级别。读取权限不够;你需要拥有 write 权限,以便 Orbit 可以注册所需的 webhook。
- 检查该仓库是否在你实际所属的工作区中,而不是你只有链接的工作区。
- 点击步骤 1 上的 Reconnect Bitbucket,重新运行 OAuth 流程并刷新令牌和仓库列表。
如果面板显示 No repos accessible,授权成功但未返回任何内容。重新连接并确认你批准了仓库作用域。
步骤 3: 配置你的项目
| 字段 | 作用 |
|---|---|
| Project Name | KPanel 中的显示名称,例如 my-app |
| Deploy URL | kaps.run 下的子域,所以 my-app 变成 my-app.kaps.run |
点击 Create project。Orbit 克隆仓库,将第一个构建入队,并将你带到项目概览,日志正在流式传输。
Deploy URL 段一次设置(在创建时),之后无法编辑。要在不同的地址下提供服务,请附加自定义域。参见将自定义域添加到你的项目。
自动部署
Orbit 在项目创建时在你的 Bitbucket 仓库上注册一个 webhook。之后:
- 推送到你的生产分支会将生产部署入队。
- 推送到任何其他分支会在
branch-<branch-name>.kaps.run构建一个隔离的预览,如果在 Settings 下的 Runtime 中启用了 Branch previews。参见Orbit 中的分支预览部署。 - 删除分支会暂停其预览环境,存储将在约一天内回收。
你永远不需要自己创建或维护 webhook。
Orbit 中的 CI required checks 设置在 GitHub Actions 作业名称或 GitLab 管道上限制部署。它不在 Bitbucket Pipelines 上限制。如果你需要 Bitbucket Pipelines 来决定何时发生部署,请关闭该分支的推送触发部署,并改为在成功时让你的管道调用部署钩子。参见通过部署钩子触发部署。
重新连接或断开 Bitbucket
- 点击 Orbit,然后 New project。
- 在步骤 1 上,点击 Reconnect 重新运行 OAuth 流程,或点击 Disconnect 移除链接。
每当仓库列表出现问题时,重新连接是正确的第一步,因为 OAuth 令牌会过期,重新连接会生成一个新的。
断开连接会保留你的项目及其部署历史,实时部署继续提供流量。推送触发的部署停止。部署钩子也停止,因为钩子通过提供者连接读取分支头来决定要构建的内容。
相关阅读
- 部署你的项目 了解完整的部署周期、部署锁和批准
- 配置你的构建命令和输出目录 如果第一个构建失败或发布了错误的文件夹
- 连接 GitHub 仓库 和连接 GitLab 仓库 了解其他提供者