REST Resource: projects.locations.targets

资源:Target

Cloud Deploy API 中的 Target 资源。

Target 定义可部署 Skaffold 配置的位置。

JSON 表示法
{
  "name": string,
  "targetId": string,
  "uid": string,
  "description": string,
  "annotations": {
    string: string,
    ...
  },
  "labels": {
    string: string,
    ...
  },
  "requireApproval": boolean,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "executionConfigs": [
    {
      object (ExecutionConfig)
    }
  ],
  "deployParameters": {
    string: string,
    ...
  },

  // Union field deployment_target can be only one of the following:
  "gke": {
    object (GkeCluster)
  },
  "anthosCluster": {
    object (AnthosCluster)
  },
  "run": {
    object (CloudRunLocation)
  },
  "multiTarget": {
    object (MultiTarget)
  },
  "customTarget": {
    object (CustomTarget)
  }
  // End of list of possible types for union field deployment_target.
}
字段
name

string

可选。Target 的名称。格式为 projects/{project}/locations/{location}/targets/{target}target 组成部分必须与 [a-z]([a-z0-9-]{0,61}[a-z0-9])? 一致

targetId

string

仅限输出。Target 的资源 ID。

uid

string

仅限输出。Target 的唯一标识符。

description

string

可选。Target 的说明。长度上限为 255 个字符。

annotations

map (key: string, value: string)

可选。用户注释。这些属性只能由用户设置和使用,Cloud Deploy 不能进行设置和使用。如需了解详情(例如格式和大小限制),请参阅 https://google.aip.dev/128#annotations

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

labels

map (key: string, value: string)

可选。标签是用户和 Cloud Deploy 可以设置和使用的属性。标签必须满足以下限制条件:

  • 键和值只能包含小写字母、数字字符、下划线和短划线。
  • 所有字符都必须使用 UTF-8 编码,且允许使用国际字符。
  • 键必须以小写字母或国际字符开头。
  • 每项资源最多可包含 64 个标签。

此外,键和值均被限制为小于等于 128 个字节。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

requireApproval

boolean

可选。Target 是否需要批准。

createTime

string (Timestamp format)

仅限输出。Target 的创建时间。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

仅限输出。Target 的最近更新时间。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

etag

string

可选。此校验和由服务器根据其他字段的值计算,并且可能会在更新和删除请求时发送,以确保客户端在继续操作之前拥有最新的值。

executionConfigs[]

object (ExecutionConfig)

与此 Target 相关的所有执行的配置。每个 ExecutionEnvironmentUsage 值只能在一项配置中使用;多次使用相同的值是错误的。如果指定了一项或多项配置,这些配置必须包含 RENDERDEPLOY ExecutionEnvironmentUsage 值。如果未指定任何配置,执行将使用 DefaultPool 中指定的默认值。

deployParameters

map (key: string, value: string)

可选。要用于此目标的部署参数。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

联合字段 deployment_target。在发布期间应用 Skaffold 配置的目标位置。deployment_target 只能是下列其中一项:
gke

object (GkeCluster)

可选。指定 GKE 集群的信息。

anthosCluster

object (AnthosCluster)

可选。指定 Anthos 集群的信息。

run

object (CloudRunLocation)

可选。指定 Cloud Run 部署目标的信息。

multiTarget

object (MultiTarget)

可选。指定 multiTarget 的信息。

customTarget

object (CustomTarget)

可选。指定自定义目标的信息。

GkeCluster

指定 GKE 集群的信息。

JSON 表示法
{
  "cluster": string,
  "internalIp": boolean
}
字段
cluster

string

可选。指定 GKE 集群的信息。格式为 projects/{projectId}/locations/{locationId}/clusters/{cluster_id}

internalIp

boolean

可选。如果为 true,系统会使用控制平面端点的专用 IP 地址访问 cluster。否则,将使用控制平面端点的默认 IP 地址。对于具有专用控制平面端点的集群,默认 IP 地址是专用 IP 地址,否则是公共 IP 地址。

仅当 cluster专用 GKE 集群时,才指定此选项。

AnthosCluster

指定 Anthos 集群的信息。

JSON 表示法
{
  "membership": string
}
字段
membership

string

可选。要应用 Skaffold 配置的 GKE Hub 注册集群的成员。格式为 projects/{project}/locations/{location}/memberships/{membership_name}

CloudRunLocation

指定 Cloud Run 服务部署位置的信息。

JSON 表示法
{
  "location": string
}
字段
location

string

必需。Cloud Run 服务的位置。格式必须为 projects/{project}/locations/{location}

MultiTarget

指定 multiTarget 的信息。

JSON 表示法
{
  "targetIds": [
    string
  ]
}
字段
targetIds[]

string

必需。此 multiTarget 的 targetId。

CustomTarget

指定自定义目标的信息。

JSON 表示法
{
  "customTargetType": string
}
字段
customTargetType

string

必需。CustomTargetType 的名称。格式必须为 projects/{project}/locations/{location}/customTargetTypes/{customTargetType}

ExecutionConfig

配置调用 Skaffold 时使用的环境。

JSON 表示法
{
  "usages": [
    enum (ExecutionEnvironmentUsage)
  ],
  "workerPool": string,
  "serviceAccount": string,
  "artifactStorage": string,
  "executionTimeout": string,
  "verbose": boolean,

  // Union field execution_environment can be only one of the following:
  "defaultPool": {
    object (DefaultPool)
  },
  "privatePool": {
    object (PrivatePool)
  }
  // End of list of possible types for union field execution_environment.
}
字段
usages[]

enum (ExecutionEnvironmentUsage)

必需。应该应用此配置时使用的使用情况。

workerPool

string

可选。WorkerPool 的资源名称,格式为 projects/{project}/locations/{location}/workerPools/{workerPool}。如果未指定此可选字段,系统将使用默认 Cloud Build 池。

serviceAccount

string

可选。用于执行的 Google 服务帐号。如果未指定,则使用项目执行服务帐号 (-compute@developer.gserviceaccount.com)

artifactStorage

string

可选。用于存储执行输出的 Cloud Storage 位置。这可以是存储桶(“gs://my-bucket”)或存储桶中的路径(“gs://my-bucket/my-dir”)。如果未指定,系统将使用位于同一区域的默认存储桶。

executionTimeout

string (Duration format)

可选。Cloud Build 执行的执行超时。该值必须介于 10 分钟到 24 小时之间(以秒为单位)。如果未指定,则使用默认超时时间为 1 小时。

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"

verbose

boolean

可选。如果为 true,系统将为在此执行环境中运行的 Cloud Build 执行作业启用其他日志记录功能。

联合字段 execution_environment。环境的详细信息。execution_environment 只能是下列其中一项:
defaultPool

object (DefaultPool)

可选。使用默认 Cloud Build 池。

privatePool

object (PrivatePool)

可选。使用专用 Cloud Build 池。

ExecutionEnvironmentUsage

此配置的可能用法。

枚举
EXECUTION_ENVIRONMENT_USAGE_UNSPECIFIED 默认值。此值未使用。
RENDER 用于渲染。
DEPLOY 用于部署和部署钩子。
VERIFY 用于部署验证。
PREDEPLOY 用于部署前作业执行。
POSTDEPLOY 用于部署后作业执行。

DefaultPool

使用默认 Cloud Build 池执行。

JSON 表示法
{
  "serviceAccount": string,
  "artifactStorage": string
}
字段
serviceAccount

string

可选。用于执行的 Google 服务帐号。如果未指定,系统将使用项目执行服务帐号 (-compute@developer.gserviceaccount.com)

artifactStorage

string

可选。应存储执行输出的 Cloud Storage 位置。这可以是存储桶(“gs://my-bucket”)或存储桶中的路径(“gs://my-bucket/my-dir”)。如果未指定,系统将使用位于同一区域的默认存储桶。

PrivatePool

使用专用 Cloud Build 池执行。

JSON 表示法
{
  "workerPool": string,
  "serviceAccount": string,
  "artifactStorage": string
}
字段
workerPool

string

必需。要使用的 Cloud Build 工作器池的资源名称。格式为 projects/{project}/locations/{location}/workerPools/{pool}

serviceAccount

string

可选。用于执行的 Google 服务帐号。如果未指定,系统将使用项目执行服务帐号 (-compute@developer.gserviceaccount.com)

artifactStorage

string

可选。应存储执行输出的 Cloud Storage 位置。这可以是存储桶(“gs://my-bucket”)或存储桶中的路径(“gs://my-bucket/my-dir”)。如果未指定,系统将使用位于同一区域的默认存储桶。

方法

create

在给定的项目和位置中创建新目标。

delete

删除单个目标。

get

获取单个目标的详细信息。

getIamPolicy

获取资源的访问权限控制政策。

list

列出给定项目和位置中的目标。

patch

更新单个目标的参数。

setIamPolicy

设置指定资源的访问权限控制政策。

testIamPermissions

返回调用者对指定资源拥有的权限。