这是一个 Terraform CNB 插件,用于管理代码仓库。
curl https://cnb.cool/cnb/sdk/terraform-cnb/-/git/raw/main/install.sh -sSfL | sh

使用前需要事先创建好根组织。
使用前需要事先准备好 cnb 的 api token 或者平台 token。
使用该插件删除仓库的时候,需要打开所属组织的 "允许通过 OpenAPI 删除组织下资源开关"。组织管理员可以通过 "组织设置" -> "组织管控" 来开启或关闭该功能。

如下分别展示了使用个人 token 和 使用平台 token 的 tf 代码。可使用如下命令进行测试。
cd test/use_personal_token
terraform init # 初始化
terraform plan # 查看执行计划
terraform apply # 应用配置(创建代码仓库)
terraform destroy # 销毁资源(删除代码仓库)
需要事先准备好 cnb 的 api token,用户可以通过"个人设置" -> "访问令牌" 创建 token,所需的权限为:
repo-basic-info:r,repo-manage:rw,repo-delete:rw,group-manage:rw,group-resource:rw
需要事先准备好 cnb 的 平台 token,创建入口在 cnb 的管理后台中的 “系统管理" -> "平台令牌配置" -> "新建令牌"。
terraform
授权范围所需的权限为:
repo-basic-info:r,repo-manage:rw,repo-delete:rw,group-manage:rw,group-resource:rw,system-token:rw