华为云用户手册

  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 stack_id String 资源栈(stack)的唯一Id。 此Id由 资源编排 服务在生成资源栈的时候生成,为UUID。 由于资源栈名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈,删除,再重新创建一个同名资源栈。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈就是我认为的那个,而不是其他队友删除后创建的同名资源栈。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈所对应的ID都不相同,更新不会影响ID。如果给予的stack_id和当前资源栈的ID不一致,则返回400 stack_name String 资源栈的名称。此名字在domain_id+区域+project_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 execution_plan_id String 执行计划(execution_plan)的唯一Id。 此Id由资源编排服务在生成执行计划的时候生成,为UUID。 由于执行计划名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的执行计划,删除,再重新创建一个同名执行计划。 对于团队并行开发,用户可能希望确保,当前我操作的执行计划就是我认为的那个,而不是其他队友删除后创建的同名执行计划。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的执行计划所对应的ID都不相同,更新不会影响ID。如果给予的execution_plan_id和当前执行计划的ID不一致,则返回400 注意: 创建执行计划后,资源编排服务持久化请求并立即返回,客户端不等待请求最终处理完成,用户无法实时感知请求处理结果 资源编排服务最终会将异步部署请求排队,在服务端空闲的情况下逐个处理。用户最大等待时长为1小时 execution_plan_name String 执行计划的名称。此名字在domain_id+区域+project_id+stack_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 description String 执行计划的描述。可用于客户识别自己的执行计划。 vars_structure Array of VarsStructure objects HCL参数结构。HCL模板支持参数传入,即,同一个模板可以给予不同的参数而达到不同的效果。 var_structure可以允许客户提交最简单的字符串类型的参数 资源编排服务支持vars_structure,vars_body和vars_uri,如果以上三种方式中声明了同一个变量,将报错400 vars_structure中的值只支持简单的字符串类型,如果需要使用其他类型,需要用户自己在HCL引用时转换, 或者用户可以使用vars_uri、vars_body,vars_uri和vars_body中支持HCL支持的各种类型以及复杂结构 如果vars_structure过大,可以使用vars_uri 注意:vars_structure中默认不应该含有任何敏感信息,资源编排服务会直接明文使用、log、展示、存储对应的vars。如为敏感信息,建议设置encryption字段开启加密 vars_uri_content String vars_uri对应的文件内容 vars_body String HCL参数文件的内容。HCL模板支持参数传入,即,同一个模板可以给予不同的参数而达到不同的效果。 vars_body使用HCL的tfvars格式,用户可以将“.tfvars”中的内容提交到vars_body中。 资源编排服务支持vars_structure,vars_body和vars_uri,如果以上三种方式中声明了同一个变量,将报错400 如果vars_body过大,可以使用vars_uri 如果vars中都是简单的字符串格式,可以使用var_structure 注意:vars_body中不应该含有任何敏感信息,资源编排服务会直接明文使用、log、展示、存储对应的vars。如为敏感信息,建议通过vars_structure并设置encryption字段传递 status String 执行计划的状态 * CREATION_IN_PROGRESS - 正在创建,请等待 * CREATION_FAILED - 创建失败,请从status_message获取错误信息汇总 * AVAILABLE - 创建完成,可以调用ApplyExecutionPlan API进行执行 * APPLY_IN_PROGRESS - 执行中,可通过GetStackMetadata查询资源栈状态,通过ListStackEvents获取执行过程中产生的资源栈事件 * APPLIED - 已执行 status_message String 当执行计划的状态为创建失败状态(即为 CREATION_FAILED 时),将会展示简要的错误信息总结以供debug create_time String 执行计划的生成时间 格式遵循RFC3339,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z apply_time String 执行计划的执行时间 格式遵循RFC3339,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z summary ExecutionPlanSummary object 执行计划结果的摘要信息,包括: 即将新增的资源数量 即将更新的资源数量 即将删除的资源数量 注意: 只有当执行计划状态为AVAILABLE、APPLY_IN_PROGRESS、APPLIED时,才会返回摘要信息 由于资源栈中记录的资源状态和远端的资源状态不一致而导致的Drift(资源状态漂移)产生的资源变更也将包含在本摘要信息中 表5 VarsStructure 参数 参数类型 描述 var_key String 参数的名字 var_value String 参数的值。 注意,参数需要以字符串形式存在,如果是数字,也需要以字符串形式存在,如'10'。 如果需要支持不同类型,或者复杂结构,请使用vars_uri或vars_body encryption EncryptionStructure object 如果用户传递的var_value是已经加密过的,可以通过声明此项以要求资源编排服务在使用前进行解密,目前暂时只支持KMS加解密 表6 EncryptionStructure 参数 参数类型 描述 kms KmsStructure object 如果用户给予的var_value是经过KMS加密的,可以通过传递相关加密信息,资源编排服务在使用的时候会帮助用户进行KMS解密 更多关于KMS加密以及KMS加密的样例代码请见:KMS加密使用场景介绍 注意: 请确保用户给予资源编排服务的委托中包含对指定密钥ID的操作权限 KMS每个月有免费试用的额度,如果超过,则KMS需要收费,此费用不是资源编排服务收取,具体标准见:https://www.huaweicloud.com/pricing.html?tab=detail#/dew KMS加密只代表资源编排服务在存储和传输的时候传递的是密文,但是在stack-events中依然是明文,如果希望在log中以密文形式对待,请在模板中声明sensitive,更多关于sensitive的介绍见:https://learn.hashicorp.com/tutorials/terraform/sensitive-variables 表7 KmsStructure 参数 参数类型 描述 id String 解密时,资源编排服务应该使用的KMS密钥的ID,通常是加密时所使用的密钥ID cipher_text String 数据加密 密钥所对应的密文 表8 ExecutionPlanSummary 参数 参数类型 描述 resource_add Integer 新增资源数 resource_update Integer 更新资源数 resource_delete Integer 删除资源数 resource_import Integer 导入资源数 状态码: 400 表9 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表10 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 401 表11 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表12 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 403 表13 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表14 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 404 表15 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表16 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 429 表17 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表18 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 500 表19 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表20 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息
  • 功能介绍 获取执行计划元数据(GetExecutionPlanMetadata) 该API可以获取指定执行计划的元数据,包括资源栈ID、资源栈名称、执行计划ID、执行计划名称、执行计划描述、执行计划的创建时间和执行时间、执行计划状态等信息。 具体信息见GetExecutionPlanMetadataResponseBody。 如果需要获取执行计划的具体内容,请调用GetExecutionPlan。
  • URI GET /v1/{project_id}/stacks/{stack_name}/execution-plans/{execution_plan_name}/metadata 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,可以从调用API处获取,也可以从控制台获取。 项目ID获取方式 stack_name 是 String 资源栈的名称。此名字在domain_id+区域+project_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 execution_plan_name 是 String 执行计划的名称。此名字在domain_id+区域+project_id+stack_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 表2 Query参数 参数 是否必选 参数类型 描述 stack_id 否 String 资源栈(stack)的唯一Id。 此Id由资源编排服务在生成资源栈的时候生成,为UUID。 由于资源栈名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈,删除,再重新创建一个同名资源栈。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈就是我认为的那个,而不是其他队友删除后创建的同名资源栈。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈所对应的ID都不相同,更新不会影响ID。如果给予的stack_id和当前资源栈的ID不一致,则返回400 execution_plan_id 否 String 执行计划(execution_plan)的唯一Id。 此Id由资源编排服务在生成执行计划的时候生成,为UUID。 由于执行计划名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的执行计划,删除,再重新创建一个同名执行计划。 对于团队并行开发,用户可能希望确保,当前我操作的执行计划就是我认为的那个,而不是其他队友删除后创建的同名执行计划。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的执行计划所对应的ID都不相同,更新不会影响ID。如果给予的execution_plan_id和当前执行计划的ID不一致,则返回400
  • 请求示例 获取资源栈元数据 GET https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/metadata 获取资源栈元数据,并提供资源栈id以校验是否与当前资源栈匹配 GET https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/metadata?stack_id=ea6a4f0e-ee8a-494e-b12a-8be4a1e65af2
  • 响应示例 状态码: 200 获取成功 { "stack_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7", "stack_name" : "my_hello_world_stack", "description" : "my hello world stack", "enable_deletion_protection" : false, "enable_auto_rollback" : false, "status" : "DEPLOYMENT_COMPLETE", "agencies" : [ { "agency_name" : "rf_admin_trust", "provider_name" : "huaweicloud" } ], "create_time" : "2023-03-16T03:28:20Z", "update_time" : "2023-05-24T08:56:10Z" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 stack_id String 资源栈(stack)的唯一Id。 此Id由资源编排服务在生成资源栈的时候生成,为UUID。 由于资源栈名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈,删除,再重新创建一个同名资源栈。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈就是我认为的那个,而不是其他队友删除后创建的同名资源栈。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈所对应的ID都不相同,更新不会影响ID。如果给予的stack_id和当前资源栈的ID不一致,则返回400 stack_name String 资源栈的名称。此名字在domain_id+区域+project_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 description String 资源栈的描述。可用于客户识别自己的资源栈。 vars_structure Array of VarsStructure objects HCL参数结构。HCL模板支持参数传入,即,同一个模板可以给予不同的参数而达到不同的效果。 var_structure可以允许客户提交最简单的字符串类型的参数 资源编排服务支持vars_structure,vars_body和vars_uri,如果以上三种方式中声明了同一个变量,将报错400 vars_structure中的值只支持简单的字符串类型,如果需要使用其他类型,需要用户自己在HCL引用时转换, 或者用户可以使用vars_uri、vars_body,vars_uri和vars_body中支持HCL支持的各种类型以及复杂结构 如果vars_structure过大,可以使用vars_uri 注意:vars_structure中默认不应该含有任何敏感信息,资源编排服务会直接明文使用、log、展示、存储对应的vars。如为敏感信息,建议设置encryption字段开启加密 vars_body String HCL参数文件的内容。HCL模板支持参数传入,即,同一个模板可以给予不同的参数而达到不同的效果。 vars_body使用HCL的tfvars格式,用户可以将“.tfvars”中的内容提交到vars_body中。 资源编排服务支持vars_structure,vars_body和vars_uri,如果以上三种方式中声明了同一个变量,将报错400 如果vars_body过大,可以使用vars_uri 如果vars中都是简单的字符串格式,可以使用var_structure 注意:vars_body中不应该含有任何敏感信息,资源编排服务会直接明文使用、log、展示、存储对应的vars。如为敏感信息,建议通过vars_structure并设置encryption字段传递 enable_deletion_protection Boolean 删除保护的标识位,如果不传默认为false,即默认不开启资源栈删除保护(删除保护开启后资源栈不允许被删除) 在UpdateStack API中,如果该参数未在RequestBody中给予,则不会对资源栈的删除保护属性进行更新 enable_auto_rollback Boolean 自动回滚的标识位,如果不传默认为false,即默认不开启资源栈自动回滚(自动回滚开启后,如果部署失败,则会自动回滚,并返回上一个稳定状态) 在UpdateStack API中,如果该参数未在RequestBody中给予,则不会对资源栈的自动回滚属性进行更新 该属性与使用模板导入资源功能互斥,如果堆栈的自动回滚设置为true,则不允许部署包含导入资源的模板 status String 资源栈的状态 * CREATION_COMPLETE - 生成空资源栈完成,并没有任何部署 * DEPLOYMENT_IN_PROGRESS - 正在部署,请等待 * DEPLOYMENT_FAILED - 部署失败。请从status_message获取错误信息汇总,或者调用ListStackEvents获得事件详情 * DEPLOYMENT_COMPLETE - 部署完成 * ROLLBACK_IN_PROGRESS - 部署失败,正在回滚,请等待 * ROLLBACK_FAILED - 回滚失败。请从status_message获取错误信息汇总,或者调用ListStackEvents获得事件详情 * ROLLBACK_COMPLETE - 回滚完成 * DELETION_IN_PROGRESS - 正在删除,请等待 * DELETION_FAILED - 删除失败。请从status_message获取错误信息汇总,或者调用ListStackEvents获得事件详情 agencies Array of Agency objects 委托授权的信息。 RFS 仅在创建资源栈(触发部署)、创建执行计划、部署资源栈、删除资源栈等涉及资源操作的请求中使用委托,且该委托仅作用于与之绑定的Provider对资源的操作中。如果委托中提供的权限不足,有可能导致相关资源操作失败。 创建委托及授权方式 status_message String 当资源栈的状态为任意失败状态(即以 FAILED 结尾时),将会展示简要的错误信息总结以供debug vars_uri_content String vars_uri对应的文件内容 create_time String 资源栈的生成时间 格式遵循RFC3339,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z update_time String 资源栈的更新时间(更新场景包括元数据更新场景和部署场景) 格式遵循RFC3339,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z 表5 VarsStructure 参数 参数类型 描述 var_key String 参数的名字 var_value String 参数的值。 注意,参数需要以字符串形式存在,如果是数字,也需要以字符串形式存在,如'10'。 如果需要支持不同类型,或者复杂结构,请使用vars_uri或vars_body encryption EncryptionStructure object 如果用户传递的var_value是已经加密过的,可以通过声明此项以要求资源编排服务在使用前进行解密,目前暂时只支持KMS加解密 表6 EncryptionStructure 参数 参数类型 描述 kms KmsStructure object 如果用户给予的var_value是经过KMS加密的,可以通过传递相关加密信息,资源编排服务在使用的时候会帮助用户进行KMS解密 更多关于KMS加密以及KMS加密的样例代码请见:KMS加密使用场景介绍 注意: 请确保用户给予资源编排服务的委托中包含对指定密钥ID的操作权限 KMS每个月有免费试用的额度,如果超过,则KMS需要收费,此费用不是资源编排服务收取,具体标准见:https://www.huaweicloud.com/pricing.html?tab=detail#/dew KMS加密只代表资源编排服务在存储和传输的时候传递的是密文,但是在stack-events中依然是明文,如果希望在log中以密文形式对待,请在模板中声明sensitive,更多关于sensitive的介绍见:https://learn.hashicorp.com/tutorials/terraform/sensitive-variables 表7 KmsStructure 参数 参数类型 描述 id String 解密时,资源编排服务应该使用的KMS密钥的ID,通常是加密时所使用的密钥ID cipher_text String 数据加密密钥所对应的密文 表8 Agency 参数 参数类型 描述 provider_name String 用户使用的provider的名字。如果用户给予的provider_name含有重复的值,则返回400 agency_name String 对应provider所使用的 IAM 委托名称,资源编排服务会使用此委托的权限去访问、创建对应provider的资源。agency_name和agency_urn必须有且只有一个存在 agency_urn String 委托URN 当用户定义Agency时,agency_name和agency_urn 必须有且只有一个存在。 推荐用户在使用信任委托时给予agency_urn,agency_name只支持接收普通委托名称,如果给予了信任委托名称,则会在部署模板时失败。 状态码: 400 表9 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表10 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 401 表11 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表12 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 403 表13 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表14 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 404 表15 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表16 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 429 表17 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表18 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 500 表19 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表20 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息
  • 功能介绍 获取资源栈元数据(GetStackMetadata) 此API用于获取指定资源栈的元数据,包括资源栈ID、资源栈名称、资源栈描述、创建时间、更新时间、资源栈状态、委托授权等信息。 具体信息见GetStackMetadataResponseBody。 注: 当资源栈状态处于非终态(即以IN_PROGRESS结尾,详细见下方)状态时,资源栈的元数据信息处于转变阶段,可能为部署前的状态,也可能为部署后的状态。 只有当资源栈状态处于终态(即以COMPLETE或FAILED结尾,详细见下方)时,资源栈的元数据信息才是部署后的状态 非终态状态包括但不限于以下状态: 正在部署(DEPLOYMENT_IN_PROGRESS) 正在回滚(ROLLBACK_IN_PROGRESS) 正在删除(DELETION_IN_PROGRESS) 终态状态包括但不限于以下状态: 生成空资源栈完成(CREATION_COMPLETE) 部署失败(DEPLOYMENT_FAILED) 部署完成(DEPLOYMENT_COMPLETE) 回滚失败(ROLLBACK_FAILED) 回滚完成(ROLLBACK_COMPLETE) 删除失败(DELETION_FAILED)
  • URI GET /v1/{project_id}/stacks/{stack_name}/metadata 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,可以从调用API处获取,也可以从控制台获取。 项目ID获取方式 stack_name 是 String 资源栈的名称。此名字在domain_id+区域+project_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 表2 Query参数 参数 是否必选 参数类型 描述 stack_id 否 String 资源栈(stack)的唯一Id。 此Id由资源编排服务在生成资源栈的时候生成,为UUID。 由于资源栈名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈,删除,再重新创建一个同名资源栈。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈就是我认为的那个,而不是其他队友删除后创建的同名资源栈。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈所对应的ID都不相同,更新不会影响ID。如果给予的stack_id和当前资源栈的ID不一致,则返回400
  • URI GET /v1/{project_id}/stacks/{stack_name}/outputs 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,可以从调用API处获取,也可以从控制台获取。 项目ID获取方式 stack_name 是 String 资源栈的名称。此名字在domain_id+区域+project_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 表2 Query参数 参数 是否必选 参数类型 描述 stack_id 否 String 资源栈(stack)的唯一Id。 此Id由资源编排服务在生成资源栈的时候生成,为UUID。 由于资源栈名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈,删除,再重新创建一个同名资源栈。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈就是我认为的那个,而不是其他队友删除后创建的同名资源栈。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈所对应的ID都不相同,更新不会影响ID。如果给予的stack_id和当前资源栈的ID不一致,则返回400
  • 请求示例 列举资源栈输出 GET https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/outputs 列举资源栈输出,并提供资源栈id以校验是否与当前资源栈匹配 GET https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/outputs?stack_id=ea6a4f0e-ee8a-494e-b12a-8be4a1e65af2
  • 功能介绍 列举资源栈输出(ListStackOutputs) 此API用于列举该资源栈的所有输出 资源栈输出为用户在模板中定义的 output 语句块在部署结束后所产生的返回信息,用户可在部署结束后,调用此API获取其具体的输出信息 当资源栈状态处于非终态(状态以IN_PROGRESS结尾)状态时,此API将返回空。非终态包括但不限于以下状态: 正在部署(DEPLOYMENT_IN_PROGRESS) 正在删除(DELETION_IN_PROGRESS) 正在回滚(ROLLBACK_IN_PROGRESS) output为HCL官方定义的语法,其返回信息类似于常见编程语言中的返回值,详细定义请参考HCL官方的说明
  • 请求示例 获取指定资源栈集的元数据 GET https://{endpoint}/v1/stack_sets/my_hello_world_stack_set/metadata 获取资源栈集元数据,并提供资源栈集id以校验是否与当前资源栈集匹配 GET https://{endpoint}/v1/stack_sets/my_hello_world_stack_set/metadata?stack_set_id=ea6a4f0e-ee8a-494e-b12a-8be4a1e65af2
  • 响应示例 状态码: 200 获取资源栈集元数据成功 { "stack_set_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7", "stack_set_name" : "my_hello_world_stack_set", "stack_set_description" : "my first stack set", "initial_stack_description" : "my stack created by stack set", "permission_model" : "SELF_MANAGED", "managed_agency_name" : "my_managed_agency_name", "administration_agency_name" : "my_administration_agency_name", "status" : "OPERATION_IN_PROGRESS", "create_time" : "2023-03-16T03:28:20.210Z", "update_time" : "2023-05-24T08:56:10.210Z", "managed_operation" : { "enable_parallel_operation" : false } }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 stack_set_id String 资源栈集(stack_set)的唯一ID。 此ID由资源编排服务在生成资源栈集的时候生成,为UUID。 由于资源栈集名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈集,删除,再重新创建一个同名资源栈集。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈集就是我以为的那个,而不是被其他队友删除后创建的同名资源栈集。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈集所对应的ID都不相同,更新不会影响ID。如果给予的stack_set_id和当前资源栈集的ID不一致,则返回400 stack_set_name String 资源栈集(stack_set)的名字。此名字在domain_id+region下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 stack_set_description String 资源栈集的描述。可用于客户识别自己的资源栈集。 initial_stack_description String 初始化资源栈描述。可用于客户识别被资源栈集所管理的资源栈。 资源栈集下的资源栈仅在创建时统一使用该描述。客户想要更新初始化资源栈描述,可以通过UpdateStackSet API。 后续更新资源栈集描述将不会同步更新已管理的资源栈描述。 permission_model String 权限模型,定义了RFS操作资源栈集时所需委托的创建方式,枚举值,默认为SELF_MANAGED。用户可以使用创建资源栈集(CreateStackSet)API 指定该参数。该参数暂不支持更新。用户如果想要更新权限模型,可以通过先删除再创建同名资源栈集实现。 SELF_MANAGED - 自我管理,基于部署需求,用户需要提前手动创建委托,既包含管理账号授权给RFS的委托,也包含成员账号授权给管理账号的委托。如果委托不存在或权限不足,创建资源栈集不会失败,创建资源栈实例时才会报错。 SERVICE_MANAGED - 服务管理,基于Organization服务,RFS会自动创建部署Organization 成员账号时所需的全部 IAM 委托。用户需要提前在Organization可信服务列表中将”资源编排资源栈集服务“启用,且只有Organization的管理账号或”资源编排资源栈集服务“的委托管理员,才允许指定SERVICE_MANAGED创建资源栈集,否则会报错。 administration_agency_name String 管理委托名称 资源编排服务使用该委托获取成员账号委托给管理账号的权限。该委托中必须含有iam:tokens:assume权限,用以后续获取被管理委托凭证。如果不包含,则会在新增或者部署实例时报错。 当用户定义SELF_MANAGED权限类型时,administration_agency_name和administration_agency_urn 必须有且只有一个存在。 推荐用户在使用信任委托时给予administration_agency_urn,administration_agency_name只支持接收委托名称,如果给予了信任委托名称,则会在部署模板时失败。 当用户使用SERVICE_MANAGED权限类型时,指定该参数将报错400。 创建委托及授权方式 managed_agency_name String 被管理的委托名称。 资源编排服务会使用该委托获取实际部署资源所需要的权限 不同成员账号委托给管理账号的委托名称需要保持一致。暂不支持根据不同provider定义不同委托权限 当用户定义SELF_MANAGED权限类型时,必须指定该参数。当用户使用SERVICE_MANAGED权限类型时,指定该参数将报错400 创建委托及授权方式 status String 资源栈集的状态 IDLE - 资源栈集空闲 OPERATION_IN_PROGRESS - 资源栈集操作中 DEACTIVATED - 资源栈集禁用 vars_uri_content String vars_uri对应的文件内容 vars_body String HCL参数文件的内容。HCL模板支持参数传入,即,同一个模板可以给予不同的参数而达到不同的效果。 vars_body使用HCL的tfvars格式,用户可以将“.tfvars”中的内容提交到vars_body中 资源编排服务支持vars_body和vars_uri,如果以上两种方式中声明了同一个变量,将报错400 如果vars_body过大,可以使用vars_uri 资源栈集不支持敏感数据加密,资源编排服务会直接明文使用、log、展示、存储对应的vars_body。 create_time String 资源栈集的创建时间,格式为YYYY-MM-DDTHH:mm:ss.SSSZ,精确到毫秒,UTC时区,即,如1970-01-01T00:00:00.000Z。 update_time String 资源栈集的更新时间,格式为YYYY-MM-DDTHH:mm:ss.SSSZ,精确到毫秒,UTC时区,即,如1970-01-01T00:00:00.000Z。 administration_agency_urn String 管理委托URN 资源编排服务使用该委托获取成员账号委托给管理账号的权限。该委托中必须含有sts:tokens:assume权限,用以后续获取被管理委托凭证。如果不包含,则会在新增或者部署实例时报错。 当用户定义SELF_MANAGED权限类型时,administration_agency_name和administration_agency_urn 必须有且只有一个存在。 推荐用户在使用信任委托时给予administration_agency_urn,administration_agency_name只支持接收委托名称,如果给予了信任委托名称,则会在部署模板时失败。 当用户使用SERVICE_MANAGED权限类型时,指定该参数将报错400。 managed_operation managed_operation object 用于定义管理资源栈集操作的一系列属性。 organizational_unit_ids Array of strings 组织单元(Organizational Unit,缩写OU)ID列表,仅在资源栈集权限模型是SERVICE_MANAGED时,才允许指定该参数。 用户指定的Organization组织部署的ID列表,可以是根组织(Root)ID,也可以是某些组织单元的ID。 创建资源栈实例 (CreateStackInstances)API 必须指定该参数,该API 会异步校验OU IDs 的合法性,校验有效的OU IDs 及其所有非空子OU ID 都会被资源栈集记录管理。该API允许指定没有或者已经被资源栈集管理的OU IDs。 若资源栈集不自动部署,空子OU不会被资源栈集记录管理(特指子OU下无成员账号或部署排除其下所有成员账号)。* 【暂不支持】若资源栈集开启自动部署,空子OU也会被资源栈集记录管理(特指子OU下无成员账号或部署排除其下所有成员账号),自动部署仅针对成员账号变动,不针对其他组织结构变化,例如新增OU等,新增OU不会自动被资源栈集管理。* 部署或删除资源栈实例(DeployStackSet、UpdateStackInstances、DeleteStackInstances) API,只允许指定已经被资源栈集管理的OU IDs。若指定了没有被资源栈集记录管理的OU IDs,则会报错。 删除资源栈实例 (DeleteStackInstances)API 必须指定该参数。 用户可以通过获取资源栈集元数据(ShowStackSetMetadata)API ,获取通过创建资源栈实例(CreateStackInstances)API 请求指定过的OU IDs。 资源栈集不仅会部署到目标 OU 中的用户,同时还会部署所有子 OU 下的用户。指定该参数后,资源栈集会根据用户输入的 OU 列表下所有的用户信息(包含子 OU 下的用户)和region列表,以笛卡尔积的形式,选择资源栈实例进行创建或部署。 资源栈集不会选择组织管理员作为部署目标,进行资源栈实例的创建或部署,即使组织管理员位于给与的组织或组织的 OU 中。 表5 managed_operation 参数 参数类型 描述 enable_parallel_operation Boolean 资源栈集(stack_set)是否可以并发地创建多个资源栈集操作。该参数作为资源栈集属性,可以通过创建资源栈集API(CreateStackSet)指定,通过更新资源栈集API(UpdateStackSet)更新该参数。 该参数默认为false,资源栈集只允许以串行的方式生成并执行资源栈集操作。同一时刻,资源栈集中只会存在一个处于运行态,即QUEUE_IN_PROGRESS或OPERATION_IN_PROGRESS状态的资源栈集操作,该操作执行完成后,下一个资源栈集操作才允许被创建。 该参数如果设定为true,资源栈集允许并发地生成多个资源栈集操作,执行非冲突操作,并将冲突操作进行排队处理。当冲突操作执行完毕,资源栈集按请求顺序继续执行排队操作。当前同一资源栈集下最多允许创建10个并发的资源栈集操作。 注:冲突操作指资源栈集允许多个操作同时执行的条件下,如果超过一个以上的操作包含了同一资源栈实例,此时在该资源栈实例上的多个操作被称为冲突操作。 当资源栈集状态为OPERATION_IN_PROGRESS时,不允许用户通过更新资源栈集(UpdateStackSet)来更新该参数。 当前,一个资源栈集下仅允许同时最多存在10个处于运行态的资源栈集操作* 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表7 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 401 表8 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表9 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 403 表10 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表11 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 404 表12 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表13 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 429 表14 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表15 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 500 表16 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表17 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息
  • URI GET /v1/stack-sets/{stack_set_name}/metadata 表1 路径参数 参数 是否必选 参数类型 描述 stack_set_name 是 String 资源栈集的名称。此名字在domain_id+region下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 表2 Query参数 参数 是否必选 参数类型 描述 stack_set_id 否 String 资源栈集(stack_set)的唯一ID。 此ID由资源编排服务在生成资源栈集的时候生成,为UUID。 由于资源栈集名称仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈集,删除,再重新创建一个同名资源栈集。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈集就是我认为的那个,而不是其他队友删除后创建的同名资源栈集。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈集所对应的ID都不相同,更新不会影响ID。如果给予的stack_set_id和当前资源栈集的ID不一致,则返回400 call_identity 否 String 仅支持资源栈集权限模式为SERVICE_MANAGED时指定该参数。用于指定用户是以组织管理账号还是成员账号中的服务委托管理员身份调用资源栈集。默认为SELF。 无论指定何种用户身份,创建或部署的资源栈集始终在组织管理账号名下。* SELF - 以组织管理账号身份调用。 DELEGATED_ADMIN - 以服务委托管理员身份调用。用户的华为云账号必须在组织中已经被注册为”资源编排资源栈集服务“的委托管理员。
  • 请求示例 获取指定模板的指定版本内容 GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1 获取指定模板的指定版本内容,并提供模板id以校验是否与当前模板匹配 GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1?template_id=1b15e005-bdbb-4bd7-8f9a-a09b6774b4b3 获取指定模板的指定版本内容,并提供access_control_source_ips以控制允许访问资源模板的ip GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1?access_control_source_ips=100.11.5.100/24&access_control_source_ips=100.22.5.100/24 获取指定模板的指定版本内容,并提供access_control_source_vpc_ids以控制允许访问资源模板的vpc id GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1?access_control_source_vpc_ids=d42a8768-ad3c-4bca-91t8-53870f3402a9&access_control_source_vpc_ids=d42a8768-ad3c-4bca-91t8-53870f3402a8
  • 响应参数 状态码: 307 表4 响应Header参数 参数 参数类型 描述 Location String HTTP重定向指定头域,客户端可通过此头域重定向至新地址。其内容为模板下载链接,为OBS Pre Signed地址,有效期为10分钟 表5 响应Body参数 参数 参数类型 描述 - String 空响应体 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表7 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 401 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表9 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 403 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表11 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 404 表12 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表13 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 429 表14 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表15 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 500 表16 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表17 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息
  • 功能介绍 获取模板版本内容(ShowTemplateVersionContent) 此API用于获取用户的模板版本内容 template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的模板,删除,再重新创建一个同名模板。对于团队并行开发,用户可能希望确保,当前我操作的模板就是我认为的那个,而不是其他队友删除后创建的同名模板。因此,使用ID就可以做到强匹配。资源编排服务保证每次创建的模板所对应的ID都不相同,更新不会影响ID。如果给予的template_id和当前模板管理的ID不一致,则返回400 此api会以临时重定向形式返回模板内容的下载链接,用户通过下载获取模板版本内容(OBS Pre Signed地址,有效期为5分钟) 如果手动访问重定向的obs下载链接,请求时不可以携带任何的Request-Header,否则会导致签名失败 ShowTemplateVersionContent返回的信息只包含模板版本内容,如果想知道模板版本的元数据,请调用ShowTemplateVersionMetadata
  • URI GET /v1/{project_id}/templates/{template_name}/versions/{version_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,可以从调用API处获取,也可以从控制台获取。 项目ID获取方式 template_name 是 String 用户希望创建的模板名称 version_id 是 String 模板版本ID,以大写V开头,每次创建模板版本,模板版本ID数字部分会自增加一 表2 Query参数 参数 是否必选 参数类型 描述 template_id 否 String 模板的ID。当template_id存在时,模板服务会检查template_id是否和template_name匹配,不匹配会返回400 access_control_source_vpc_ids 否 Array of strings 允许访问资源栈模板的source vpc id列表, source vpc id应仅包含小写字母、数字或中划线。 access_control_source_ips 否 Array of strings 允许访问资源栈模板的source ip列表,source ip应是具有CIDR表示法且带有子网掩码的IPv4地址。
  • 请求示例 执行指定资源栈下的执行计划 POST https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/execution-plans/my_first_execution_plan 执行指定资源栈下的执行计划,并提供资源栈id以校验是否与当前资源栈匹配 POST https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/execution-plans/my_first_execution_plan { "stack_id" : "f689e9fd-97e7-4185-bd8a-7d5f708d45d7" }
  • 功能介绍 执行执行计划(ApplyExecutionPlan) 此API用于执行一个执行计划 当执行请求接受后,执行计划状态将变为APPLY_IN_PROGRESS,后台会进行异步处理。 当执行结束后,执行计划状态将变为APPLIED。 用户可以调用GetStackMetadata查询资源栈的状态(status)来跟踪资源栈部署情况以及确认本次执行结果是否成功。 如果不希望通过执行计划进行部署操作,也可以选择调用DeployStack进行直接部署 关于执行计划的过期失效: 如果指定资源栈下有多个执行计划,则在执行某个执行计划后(无论结果是否成功),剩余所有的执行计划将过期失效; 如果调用ApplyExecutionPlan时,指定的执行计划已经过期失效,则返回403 如果资源栈状态处于非终态(即以IN_PROGRESS结尾,详细见下方)状态时,则不允许执行执行计划,并返回403。非终态状态包括但不限于以下状态: 正在部署(DEPLOYMENT_IN_PROGRESS) 正在删除(DELETION_IN_PROGRESS) 正在回滚(ROLLBACK_IN_PROGRESS)
  • URI POST /v1/{project_id}/stacks/{stack_name}/execution-plans/{execution_plan_name} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,可以从调用API处获取,也可以从控制台获取。 项目ID获取方式 stack_name 是 String 资源栈的名称。此名字在domain_id+区域+project_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 execution_plan_name 是 String 执行计划的名称。此名字在domain_id+区域+project_id+stack_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。
  • 响应参数 状态码: 202 表4 响应Body参数 参数 参数类型 描述 deployment_id String 标识部署的唯一Id,此Id由资源编排服务在触发部署、回滚等操作时生成,为UUID。 接受请求,进行异步处理。可以调用GetStackMetadata来获取异步请求的部署状态 注意: 部署资源栈后,资源编排服务持久化请求并立即返回,客户端不等待请求最终处理完成,用户无法实时感知请求处理结果 资源编排服务最终会将异步部署请求排队,在服务端空闲的情况下逐个处理。用户最大等待时长为6小时 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表6 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表8 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 403 表9 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表10 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 404 表11 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表12 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 409 表13 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表14 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 429 表15 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表16 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 500 表17 响应Body参数 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表18 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Client-Request-Id 是 String 用户指定的,对于此请求的唯一ID,用于定位某个请求,推荐使用UUID 表3 请求Body参数 参数 是否必选 参数类型 描述 execution_plan_id 否 String 执行计划(execution_plan)的唯一Id。 此Id由资源编排服务在生成执行计划的时候生成,为UUID。 由于执行计划名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的执行计划,删除,再重新创建一个同名执行计划。 对于团队并行开发,用户可能希望确保,当前我操作的执行计划就是我认为的那个,而不是其他队友删除后创建的同名执行计划。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的执行计划所对应的ID都不相同,更新不会影响ID。如果给予的execution_plan_id和当前执行计划的ID不一致,则返回400 注意: 创建执行计划后,资源编排服务持久化请求并立即返回,客户端不等待请求最终处理完成,用户无法实时感知请求处理结果 资源编排服务最终会将异步部署请求排队,在服务端空闲的情况下逐个处理。用户最大等待时长为1小时 stack_id 否 String 资源栈(stack)的唯一Id。 此Id由资源编排服务在生成资源栈的时候生成,为UUID。 由于资源栈名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈,删除,再重新创建一个同名资源栈。 对于团队并行开发,用户可能希望确保,当前我操作的资源栈就是我认为的那个,而不是其他队友删除后创建的同名资源栈。因此,使用ID就可以做到强匹配。 资源编排服务保证每次创建的资源栈所对应的ID都不相同,更新不会影响ID。如果给予的stack_id和当前资源栈的ID不一致,则返回400
  • 请求示例 删除指定模板版本 DELETE https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1 删除指定模板版本,并提供模板id以校验是否与当前模板匹配 DELETE https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1?template_id=1b15e005-bdbb-4bd7-8f9a-a09b6774b4b3
  • 功能介绍 删除模板版本(DeleteTemplateVersion) 此API用于删除某个模板版本 template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的模板,删除,再重新创建一个同名模板。对于团队并行开发,用户可能希望确保,当前我操作的模板就是我认为的那个,而不是其他队友删除后创建的同名模板。因此,使用ID就可以做到强匹配。资源编排服务保证每次创建的模板所对应的ID都不相同,更新不会影响ID。如果给予的template_id和当前模板管理的ID不一致,则返回400 如果模板下只存在唯一模板版本,此模板版本将无法被删除,如果需要删除此模板版本,请调用DeleteTemplate。模板服务不允许存在没有模板版本的模板 请谨慎操作
  • URI DELETE /v1/{project_id}/templates/{template_name}/versions/{version_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,可以从调用API处获取,也可以从控制台获取。 项目ID获取方式 template_name 是 String 用户希望创建的模板名称 version_id 是 String 模板版本ID,以大写V开头,每次创建模板版本,模板版本ID数字部分会自增加一 表2 Query参数 参数 是否必选 参数类型 描述 template_id 否 String 模板的ID。当template_id存在时,模板服务会检查template_id是否和template_name匹配,不匹配会返回400
  • 响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表5 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表7 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表9 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 404 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表11 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 429 表12 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表13 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息 状态码: 500 表14 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 包含有关未经授权请求的信息。 details Array of Detail objects 权限拒绝时服务返回的详细错误信息。 表15 Detail 参数 参数类型 描述 error_code String 响应码 error_msg String 响应消息
  • 请求示例 删除模板 DELETE https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template 删除模板,并提供模板id以校验是否与当前模板匹配 DELETE https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template?template_id=1b15e005-bdbb-4bd7-8f9a-a09b6774b4b3
  • URI DELETE /v1/{project_id}/templates/{template_name} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,可以从调用API处获取,也可以从控制台获取。 项目ID获取方式 template_name 是 String 用户希望创建的模板名称 表2 Query参数 参数 是否必选 参数类型 描述 template_id 否 String 模板的ID。当template_id存在时,模板服务会检查template_id是否和template_name匹配,不匹配会返回400
共100000条