更新时间:2024-12-04 GMT+08:00
分享

根据环境ID更新环境资源

功能介绍

此API用于根据环境ID更新环境资源。

URI

PUT /v3/{project_id}/cas/environments/{environment_id}/iac-resources/{resource_id}

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户项目ID。获取方法,请参考获取项目ID

environment_id

String

环境ID。获取方法,请参考获取所有环境

resource_id

String

资源ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值。Token获取方式,请参考认证鉴权

Content-Type

String

消息体的类型(格式),默认取值为“application/json;charset=utf8”。

表3 请求Body参数

参数

是否必选

参数类型

描述

id

String

资源ID。

name

String

资源名称。

type

String

资源类型。

custom_hcl

String

自定义HCL模板。

vars_body

Map<String, Object>

变量请求体。

vars_structure

Array of var_structure objects

变量结构,请参考表4

表4 var_structure

参数

是否必选

参数类型

描述

var_key

String

变量名。

var_value

String

变量值。

响应参数

表5 响应Body参数

参数

参数类型

描述

id

String

环境ID。

name

String

环境名称。

description

String

环境描述。

project_id

String

项目ID。

enterprise_project_id

String

企业项目ID。

deploy_mode

String

环境类型。

  • virtualmachine:虚拟机。
  • container:Kubernetes。
  • mixed :虚拟机和Kubernetes。

vpc_id

String

虚拟私有云ID。

creator

String

创建人。

create_time

Integer

创建时间。

update_time

Integer

修改时间。

labels

Array of objects

标签,可使用标签管理服务通过标签过滤查询资源信息,请参考表7

type

String

Kubernetes环境是否高可用类型。

  • normal:非高可用环境。
  • high:高可用环境。

resource_create_mode

String

资源配置模式。

  • none:纳管资源。
  • iac:创建资源。

iac_resources

Array of objects

资源模板,请参考表7

iac_task_status

String

任务状态。

  • Init:初始化
  • ExecutionPlanCreating:执行发布创建中
  • ExecutionPlanCreateSuccess:执行计划创建成功
  • ExecutionPlanCreateFailed:执行计划创建失败
  • ExecutionPlanApplying:执行计划部署中
  • ExecutionPlanApplySuccess:执行计划部署成功
  • ExecutionPlanApplyFailed:执行计划部署失败
  • ResourceExceed:资源超过限制

availability_zone

Array of String

可用区列表。

表6 iac_resources

参数

参数类型

描述

id

String

资源ID。

name

String

资源名称。

type

String

资源类型。

  • vpc,虚拟私有云。
  • subnet,子网。
  • eip,弹性公网IP。
  • elb,弹性负载均衡。
  • cce,云容器引擎。
  • ecs,弹性云服务器。
  • acl,网络ACL。
  • ccenamespace,云容器引擎命名空间。

status

String

环境资源开通状态。

  • CREATION_IN_PROGRESS,环境资源创建中。
  • CREATION_FAILED,环境资源创建失败。
  • CREATION_COMPLETE,环境资源创建成功。
  • UPDATE_IN_PROGRESS,环境资源更新中。
  • UPDATE_FAILED,环境资源更新失败。
  • UPDATE_COMPLETE,环境资源更新成功。
  • DELETION_IN_PROGRESS,环境资源删除中。
  • DELETION_FAILED,环境资源删除失败。
  • DELETION_COMPLETE,环境资源删除成功。

resource_id

String

资源实例ID。

custom_tf

String

Terraform模板。

vars_body

Map<String, Object>

资源变量。

vars_structure

Array of objects

变量结构,请参考表8

表7 labels

参数

参数类型

描述

key

String

标签名称。

value

String

标签值。

表8 var_structure

参数

参数类型

描述

var_key

String

变量名。

var_value

String

变量值。

请求示例

更新名称为rds123的RDS资源属性。

{
      "name": "rds123",
      "type": "rds",
      "custom_hcl": "string",
      "vars_structure": [{
        "var_key": "www",
        "var_value": ""
      }],
       "vars_body": {
	"var_key": "11qwqqw"
       },
        "deploy_vars_body": {
	"var_key": "11qwqqw"
       }
}

响应示例

{
	"id" : "17a5baa0-8352-4fa9-94e7-fad2569a20a2",
	"name" : "hldtest1",
	"alias" : null,
	"description" : "",
	"project_id" : "0ada17d53d00d5cc2f8ac00ca4b5b119",
	"enterprise_project_id" : "0",
	"charge_mode" : "provided",
	"vpc_id" : "0000653d-e8b9-47ce-91d2-2c728f3338a4",
	"base_resources" : [],
	"optional_resources" : null,
	"creator" : "paas_roma_c00283024",
	"create_time" : 1708915381226,
	"update_time" : 1709103342541,
	"deploy_mode" : "virtualmachine",
	"vm_cluster_size" : 50,
	"status" : null,
	"broker_id" : null,
	"labels" : [],
	"offline_hosts" : null,
	"alert_status" : null,
	"resource_create_mode" : "iac",
	"iac_resources" : [{
			"id" : "a12345",
			"name" : "cce12323qq",
			"type" : "rds",
			"status" : "INIT",
			"vars_structure" : [{
					"var_key" : "www",
					"var_value" : ""
				}
			],
			"vars_body" : {
				"var_key" : "11qwqqw"
			}
		}
	],
	"iac_task_status" : null,
	"component_count" : 0
}

状态码

状态码

描述

200

操作成功。

400

错误的请求。

404

请求对象不存在。

500

内部错误。

错误码

错误码格式为:SVCSTG.00100.[Error_ID],例如:SVCSTG.00100400。错误码说明请参考ServiceStage错误码

相关文档