适用于部署分支策略的 REST API 终结点
使用 REST API 管理自定义部署分支策略。
关于部署分支策略
可以使用 REST API 指定分支必须匹配才能部署到环境的自定义名称模式。 环境的 deployment_branch_policy.custom_branch_policies
属性必须设置为 true
才能使用这些终结点。 若要更新环境的 deployment_branch_policy
,请参阅“适用于部署环境的 REST API 终结点”。
有关将环境部署限制为某些分支的详细信息,请参阅“管理部署环境”。
List deployment branch policies
Lists the deployment branch policies for an environment.
Anyone with read access to the repository can use this endpoint.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint with a private repository.
“List deployment branch policies”的细粒度访问令牌
此端点支持以下精细令牌类型:
精细令牌必须具有以下权限集:
- "Actions" repository permissions (read)
如果仅请求公共资源,则无需身份验证或上述权限即可使用此终结点。
“List deployment branch policies”的参数
名称, 类型, 说明 |
---|
accept string Setting to |
名称, 类型, 说明 |
---|
owner string 必须The account owner of the repository. The name is not case sensitive. |
repo string 必须The name of the repository without the |
environment_name string 必须The name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
名称, 类型, 说明 |
---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." 默认: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." 默认: |
“List deployment branch policies”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
“List deployment branch policies”的示例代码
如果你通过 GHE.com 访问 GitHub,请将 api.github.com
替换为你的企业在 api.SUBDOMAIN.ghe.com
上的专用子域。
请求示例
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies
Response
Create a deployment branch policy
Creates a deployment branch or tag policy for an environment.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
“Create a deployment branch policy”的细粒度访问令牌
此端点支持以下精细令牌类型:
精细令牌必须具有以下权限集:
- "Administration" repository permissions (write)
“Create a deployment branch policy”的参数
名称, 类型, 说明 |
---|
accept string Setting to |
名称, 类型, 说明 |
---|
owner string 必须The account owner of the repository. The name is not case sensitive. |
repo string 必须The name of the repository without the |
environment_name string 必须The name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
名称, 类型, 说明 |
---|
name string 必须The name pattern that branches or tags must match in order to deploy to the environment. Wildcard characters will not match |
type string Whether this rule targets a branch or tag 可以是以下选项之一: |
“Create a deployment branch policy”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
303 | Response if the same branch name pattern already exists |
404 | Not Found or |
“Create a deployment branch policy”的示例代码
如果你通过 GHE.com 访问 GitHub,请将 api.github.com
替换为你的企业在 api.SUBDOMAIN.ghe.com
上的专用子域。
请求示例
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies \
-d '{"name":"release/*"}'
Response
Get a deployment branch policy
Gets a deployment branch or tag policy for an environment.
Anyone with read access to the repository can use this endpoint.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint with a private repository.
“Get a deployment branch policy”的细粒度访问令牌
此端点支持以下精细令牌类型:
精细令牌必须具有以下权限集:
- "Actions" repository permissions (read)
如果仅请求公共资源,则无需身份验证或上述权限即可使用此终结点。
“Get a deployment branch policy”的参数
名称, 类型, 说明 |
---|
accept string Setting to |
名称, 类型, 说明 |
---|
owner string 必须The account owner of the repository. The name is not case sensitive. |
repo string 必须The name of the repository without the |
environment_name string 必须The name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
branch_policy_id integer 必须The unique identifier of the branch policy. |
“Get a deployment branch policy”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
“Get a deployment branch policy”的示例代码
如果你通过 GHE.com 访问 GitHub,请将 api.github.com
替换为你的企业在 api.SUBDOMAIN.ghe.com
上的专用子域。
请求示例
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies/BRANCH_POLICY_ID
Response
Update a deployment branch policy
Updates a deployment branch or tag policy for an environment.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
“Update a deployment branch policy”的细粒度访问令牌
此端点支持以下精细令牌类型:
精细令牌必须具有以下权限集:
- "Administration" repository permissions (write)
“Update a deployment branch policy”的参数
名称, 类型, 说明 |
---|
accept string Setting to |
名称, 类型, 说明 |
---|
owner string 必须The account owner of the repository. The name is not case sensitive. |
repo string 必须The name of the repository without the |
environment_name string 必须The name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
branch_policy_id integer 必须The unique identifier of the branch policy. |
名称, 类型, 说明 |
---|
name string 必须The name pattern that branches must match in order to deploy to the environment. Wildcard characters will not match |
“Update a deployment branch policy”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
“Update a deployment branch policy”的示例代码
如果你通过 GHE.com 访问 GitHub,请将 api.github.com
替换为你的企业在 api.SUBDOMAIN.ghe.com
上的专用子域。
请求示例
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies/BRANCH_POLICY_ID \
-d '{"name":"release/*"}'
Response
Delete a deployment branch policy
Deletes a deployment branch or tag policy for an environment.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
“Delete a deployment branch policy”的细粒度访问令牌
此端点支持以下精细令牌类型:
精细令牌必须具有以下权限集:
- "Administration" repository permissions (write)
“Delete a deployment branch policy”的参数
名称, 类型, 说明 |
---|
accept string Setting to |
名称, 类型, 说明 |
---|
owner string 必须The account owner of the repository. The name is not case sensitive. |
repo string 必须The name of the repository without the |
environment_name string 必须The name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
branch_policy_id integer 必须The unique identifier of the branch policy. |
“Delete a deployment branch policy”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
“Delete a deployment branch policy”的示例代码
如果你通过 GHE.com 访问 GitHub,请将 api.github.com
替换为你的企业在 api.SUBDOMAIN.ghe.com
上的专用子域。
请求示例
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies/BRANCH_POLICY_ID
Response
Status: 204