如何通过编程方式创建并注册BitBucket Pipelines的Runner
BitBucket Pipelines 自托管runner编程式创建注册方案
核心结论
完全可以通过BitBucket官方REST API实现全流程编程式创建、注册runner,无需预先在UI操作,也不需要手动获取UUID。
具体操作步骤
- 第一步:准备权限凭证
首先生成具有Pipelines - Write权限的个人访问令牌(PAT),确保你对目标工作区/项目/仓库具备管理员权限。 - 第二步:调用API创建runner
根据你需要创建的runner层级(工作区级/项目级/仓库级)调用对应创建接口,以下是仓库级runner的curl调用示例:
调用成功后返回的报文中会直接包含curl -X POST \ -H "Content-Type: application/json" \ -H "Authorization: Bearer 你的PAT令牌" \ https://api.bitbucket.org/2.0/repositories/工作区名/仓库名/pipelines/runners \ -d '{ "name": "自定义runner名称", "labels": ["self-hosted", "linux"] }'runnerUuid、oauthClientId、oauthClientSecret等注册所需的全部参数,不需要通过UI生成。 - 第三步:直接执行注册命令
拿到返回的参数后,替换官方docker注册命令中的对应字段即可完成注册,全程无需人工操作UI。
你之前认为UUID只能通过UI获取的认知存在偏差,BitBucket目前已经支持和GitHub Actions自托管runner类似的逻辑:API创建返回的注册凭据仅可用于单次注册,注册完成后即失效,完全满足自动化批量部署runner的需求。
内容的提问来源于stack exchange,提问作者Molenpad
相关产品推荐
相关产品推荐

