Skip to main content
PATCH
更新一个蓝图的内容、位置、来源和/或 commit 构建设置

权限

要求服务用户或个人访问令牌在组织级别具备 ManageRepoBlueprints 权限。创建或更新组织级蓝图需要 ManageOrgSnapshots 权限。

行为

更新蓝图的内容和/或位置。不会自动触发构建。

授权

Authorization
string
header
必填

服务用户凭据(前缀:cog_)

路径参数

blueprint_id
string
必填
org_id
string
必填

组织 ID(前缀:org-)

示例:

"org-abc123def456"

请求体

application/json

对组织层级或代码仓库层级的蓝图进行部分更新。

可提供任意字段子集。未设置的字段将保持不变。 如果为组织层级蓝图提供 position、source 或 commit 构建设置,则会返回 400 —— 只有代码仓库层级蓝图才有这些字段。不会触发构建。

build_on_default_branch_commit
boolean | null

设置此字段可开启或关闭在每次向默认分支推送时构建环境的功能。仅 github.com 代码仓库的根蓝图支持此设置。每次此类推送都会将一次构建加入队列。

contents
string | null

如果设置,则会用新版本替换该蓝图的 YAML 内容。

position
integer | null

如果设置,则更新此代码仓库层级蓝图的执行位置。位置不要求唯一;执行排序时如出现并列,服务器会任意决定先后顺序。

report_check_runs
boolean | null

设置此字段可开启或关闭将每次 commit 构建上报为 GitHub 检查运行的功能。启用此功能前,必须先开启 'build_on_default_branch_commit'。

source
enum<string> | null

设置此字段可切换代码仓库的蓝图来源。此字段仅适用于代码仓库的根蓝图(作用域蓝图会继承此设置)。'git' 从默认分支拉取 .devin/blueprint.yaml(文件不存在时返回 404),且不能与 'contents' 同时使用;'database' 保留当前 YAML(如果提供了 'contents',则使用其内容),并停止从代码仓库同步。如果蓝图已处于该模式,则不执行任何操作。

可用选项:
git,
database

响应

成功响应

公开的 Blueprint 资源结构。

注意:type 枚举未来可能会扩展;客户端 MUST 以优雅方式 处理未知值。YAML 内容需通过 GET /blueprints/{id}/contents 单独获取。

blueprint_id
string
必填
created_at
integer
必填
repo_name
string | null
必填
type
enum<string>
必填
可用选项:
enterprise,
org,
repo
updated_at
integer
必填
build_on_default_branch_commit
boolean | null

是否在每次向代码仓库的默认分支推送时构建环境。仅当此蓝图为代码仓库的根蓝图时有效,否则为 null。

report_check_runs
boolean | null

是否将每次 commit 构建作为 GitHub 检查运行上报至对应的 commit。仅当此蓝图为代码仓库的根蓝图时有效,否则为 null。

source
enum<string> | null

YAML 的编写位置:'git'(从代码仓库中的 .devin/blueprint.yaml 同步)或 'database'(通过 API/UI 编辑)。企业级和组织级蓝图的此值始终为 null。

可用选项:
git,
database