v1

package
v0.1.115 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2024 License: Apache-2.0, BSD-2-Clause, BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AosClientBuilder

func AosClientBuilder() *httpclient.HcHttpClientBuilder

func GenReqDefForApplyExecutionPlan

func GenReqDefForApplyExecutionPlan() *def.HttpRequestDef

func GenReqDefForContinueDeployStack added in v0.1.39

func GenReqDefForContinueDeployStack() *def.HttpRequestDef

func GenReqDefForContinueRollbackStack

func GenReqDefForContinueRollbackStack() *def.HttpRequestDef

func GenReqDefForCreateExecutionPlan

func GenReqDefForCreateExecutionPlan() *def.HttpRequestDef

func GenReqDefForCreatePrivateHook added in v0.1.109

func GenReqDefForCreatePrivateHook() *def.HttpRequestDef

func GenReqDefForCreatePrivateHookVersion added in v0.1.109

func GenReqDefForCreatePrivateHookVersion() *def.HttpRequestDef

func GenReqDefForCreatePrivateProvider added in v0.1.80

func GenReqDefForCreatePrivateProvider() *def.HttpRequestDef

func GenReqDefForCreatePrivateProviderVersion added in v0.1.80

func GenReqDefForCreatePrivateProviderVersion() *def.HttpRequestDef

func GenReqDefForCreateStack

func GenReqDefForCreateStack() *def.HttpRequestDef

func GenReqDefForCreateStackInstance added in v0.1.61

func GenReqDefForCreateStackInstance() *def.HttpRequestDef

func GenReqDefForCreateStackSet added in v0.1.61

func GenReqDefForCreateStackSet() *def.HttpRequestDef

func GenReqDefForDeleteExecutionPlan added in v0.1.15

func GenReqDefForDeleteExecutionPlan() *def.HttpRequestDef

func GenReqDefForDeletePrivateHook added in v0.1.109

func GenReqDefForDeletePrivateHook() *def.HttpRequestDef

func GenReqDefForDeletePrivateHookVersion added in v0.1.109

func GenReqDefForDeletePrivateHookVersion() *def.HttpRequestDef

func GenReqDefForDeleteStack added in v0.1.12

func GenReqDefForDeleteStack() *def.HttpRequestDef

func GenReqDefForDeleteStackEnhanced added in v0.1.58

func GenReqDefForDeleteStackEnhanced() *def.HttpRequestDef

func GenReqDefForDeleteStackInstance added in v0.1.61

func GenReqDefForDeleteStackInstance() *def.HttpRequestDef

func GenReqDefForDeleteStackInstanceDeprecated added in v0.1.71

func GenReqDefForDeleteStackInstanceDeprecated() *def.HttpRequestDef

func GenReqDefForDeleteStackSet added in v0.1.61

func GenReqDefForDeleteStackSet() *def.HttpRequestDef

func GenReqDefForDeleteTemplate added in v0.1.30

func GenReqDefForDeleteTemplate() *def.HttpRequestDef

func GenReqDefForDeleteTemplateVersion added in v0.1.30

func GenReqDefForDeleteTemplateVersion() *def.HttpRequestDef

func GenReqDefForDeployStack

func GenReqDefForDeployStack() *def.HttpRequestDef

func GenReqDefForDeployStackSet added in v0.1.61

func GenReqDefForDeployStackSet() *def.HttpRequestDef

func GenReqDefForEstimateExecutionPlanPrice

func GenReqDefForEstimateExecutionPlanPrice() *def.HttpRequestDef

func GenReqDefForGetExecutionPlan added in v0.1.15

func GenReqDefForGetExecutionPlan() *def.HttpRequestDef

func GenReqDefForGetExecutionPlanMetadata added in v0.1.30

func GenReqDefForGetExecutionPlanMetadata() *def.HttpRequestDef

func GenReqDefForGetStackMetadata added in v0.1.15

func GenReqDefForGetStackMetadata() *def.HttpRequestDef

func GenReqDefForGetStackTemplate

func GenReqDefForGetStackTemplate() *def.HttpRequestDef

func GenReqDefForListExecutionPlans

func GenReqDefForListExecutionPlans() *def.HttpRequestDef

func GenReqDefForListStackEvents added in v0.1.12

func GenReqDefForListStackEvents() *def.HttpRequestDef

func GenReqDefForListStackInstances added in v0.1.61

func GenReqDefForListStackInstances() *def.HttpRequestDef

func GenReqDefForListStackOutputs

func GenReqDefForListStackOutputs() *def.HttpRequestDef

func GenReqDefForListStackResources added in v0.1.12

func GenReqDefForListStackResources() *def.HttpRequestDef

func GenReqDefForListStackSetOperations added in v0.1.61

func GenReqDefForListStackSetOperations() *def.HttpRequestDef

func GenReqDefForListStackSets added in v0.1.61

func GenReqDefForListStackSets() *def.HttpRequestDef

func GenReqDefForListStacks

func GenReqDefForListStacks() *def.HttpRequestDef

func GenReqDefForListTemplateVersions added in v0.1.46

func GenReqDefForListTemplateVersions() *def.HttpRequestDef

func GenReqDefForListTemplates added in v0.1.30

func GenReqDefForListTemplates() *def.HttpRequestDef

func GenReqDefForParseTemplateVariables

func GenReqDefForParseTemplateVariables() *def.HttpRequestDef

func GenReqDefForShowPrivateHookMetadata added in v0.1.109

func GenReqDefForShowPrivateHookMetadata() *def.HttpRequestDef

func GenReqDefForShowPrivateHookVersionMetadata added in v0.1.109

func GenReqDefForShowPrivateHookVersionMetadata() *def.HttpRequestDef

func GenReqDefForShowStackInstance added in v0.1.63

func GenReqDefForShowStackInstance() *def.HttpRequestDef

func GenReqDefForShowStackSetMetadata added in v0.1.61

func GenReqDefForShowStackSetMetadata() *def.HttpRequestDef

func GenReqDefForShowStackSetOperationMetadata added in v0.1.61

func GenReqDefForShowStackSetOperationMetadata() *def.HttpRequestDef

func GenReqDefForShowStackSetTemplate added in v0.1.61

func GenReqDefForShowStackSetTemplate() *def.HttpRequestDef

func GenReqDefForShowTemplateMetadata added in v0.1.30

func GenReqDefForShowTemplateMetadata() *def.HttpRequestDef

func GenReqDefForShowTemplateVersionContent added in v0.1.30

func GenReqDefForShowTemplateVersionContent() *def.HttpRequestDef

func GenReqDefForShowTemplateVersionMetadata added in v0.1.30

func GenReqDefForShowTemplateVersionMetadata() *def.HttpRequestDef

func GenReqDefForUpdatePrivateHookMetadata added in v0.1.109

func GenReqDefForUpdatePrivateHookMetadata() *def.HttpRequestDef

func GenReqDefForUpdateStack added in v0.1.24

func GenReqDefForUpdateStack() *def.HttpRequestDef

func GenReqDefForUpdateStackInstances added in v0.1.63

func GenReqDefForUpdateStackInstances() *def.HttpRequestDef

func GenReqDefForUpdateStackSet added in v0.1.61

func GenReqDefForUpdateStackSet() *def.HttpRequestDef

func GenReqDefForUpdateTemplateMetadata added in v0.1.30

func GenReqDefForUpdateTemplateMetadata() *def.HttpRequestDef

Types

type AosClient

type AosClient struct {
	HcClient *httpclient.HcHttpClient
}

func NewAosClient

func NewAosClient(hcClient *httpclient.HcHttpClient) *AosClient

func (*AosClient) ApplyExecutionPlan

func (c *AosClient) ApplyExecutionPlan(request *model.ApplyExecutionPlanRequest) (*model.ApplyExecutionPlanResponse, error)

ApplyExecutionPlan 执行执行计划

执行执行计划(ApplyExecutionPlan)

此API用于执行一个执行计划

* 当执行请求接受后,执行计划状态将变为`APPLY_IN_PROGRESS`,后台会进行异步处理。 * 当执行结束后,执行计划状态将变为`APPLIED`。 * 用户可以调用GetStackMetadata查询资源栈的状态(status)来跟踪资源栈部署情况以及确认本次执行结果是否成功。

如果不希望通过执行计划进行部署操作,也可以选择调用DeployStack进行直接部署

关于执行计划的过期失效:

  1. 如果指定资源栈下有多个执行计划,则在执行某个执行计划后(无论结果是否成功),剩余所有的执行计划将过期失效;
  2. 如果调用ApplyExecutionPlan时,指定的执行计划已经过期失效,则返回403

如果资源栈状态处于非终态(即以`IN_PROGRESS`结尾,详细见下方)状态时,则不允许执行执行计划,并返回403。非终态状态包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)
  • 正在删除(DELETION_IN_PROGRESS)
  • 正在回滚(ROLLBACK_IN_PROGRESS)

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ApplyExecutionPlanInvoker

func (c *AosClient) ApplyExecutionPlanInvoker(request *model.ApplyExecutionPlanRequest) *ApplyExecutionPlanInvoker

ApplyExecutionPlanInvoker 执行执行计划

func (*AosClient) ContinueDeployStack added in v0.1.39

ContinueDeployStack 继续部署资源栈

继续部署资源栈(ContinueDeployStack)

此API用于继续部署一个已有的资源栈

* 如果资源栈当前可以继续部署,即处于`DEPLOYMENT_FAILED`,则返回202与对应生成的deploymentId,否则将不允许继续部署并返回相应的错误码

* 继续部署操作依然有可能部署失败,用户可以从ListStackEvents获取对应的log,解决后可再次调用此API触发继续部署

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ContinueDeployStackInvoker added in v0.1.39

func (c *AosClient) ContinueDeployStackInvoker(request *model.ContinueDeployStackRequest) *ContinueDeployStackInvoker

ContinueDeployStackInvoker 继续部署资源栈

func (*AosClient) ContinueRollbackStack

ContinueRollbackStack 继续回滚资源栈

继续回滚资源栈(ContinueRollbackStack)

此API用于继续回滚一个已有的资源栈

如果资源栈开启了自动回滚,在部署失败的时候则会自动回滚。但是自动回滚依然有可能失败,用户可以根据错误信息修复后,调用ContinueRollbackStack触发继续回滚,即重试回滚

* 如果资源栈当前可以回滚,即处于`ROLLBACK_FAILED`,则返回202与对应生成的deploymentId,否则将不允许回滚并返回响应的错误码 * 继续回滚也有可能会回滚失败。如果失败,用户可以从ListStackEvents获取对应的log,解决后可再次调用ContinueRollbackStack去继续触发回滚

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ContinueRollbackStackInvoker

func (c *AosClient) ContinueRollbackStackInvoker(request *model.ContinueRollbackStackRequest) *ContinueRollbackStackInvoker

ContinueRollbackStackInvoker 继续回滚资源栈

func (*AosClient) CreateExecutionPlan

CreateExecutionPlan 创建执行计划

创建执行计划(CreateExecutionPlan)

此API用于在指定的资源栈下生成一个执行计划,执行计划描述了当前资源栈中记录的资源状态和模板描述的目的资源状态之间的区别(如,资源A将以以下配置文件生成,资源B将以下参数从XXX修改成YYY)

调用此API触发创建执行计划之后,可以通过GetExecutionPlanMetadata来跟踪执行计划的状态 当执行计划状态为`AVAILABLE`时,可以通过GetExecutionPlan获取本次执行计划的结果

执行计划不会做过多深层的检查和校验,如用户是否有权限生成、修改资源等

**注意:**

  • 创建执行计划时,指定的资源栈必须存在。如果指定的资源栈不存在,则返回404,用户可通过调用创建资源栈(CreateStack)API来创建资源栈。
  • 如果请求中不含有template_body和template_uri,则返回400
  • 如果资源栈进行了某次部署操作,则在该次部署操作前生成的执行计划将全部失效
  • 执行计划只代表生成时刻的结果,如果执行计划生成后,用户手动修改资源状态,则执行计划不会自动更新
  • 如果资源栈状态处于`DEPLOYMENT_IN_PROGRESS`、`ROLLBACK_IN_PROGRESS`、`DELETION_IN_PROGRESS`等状态时,则不允许创建执行计划,并返回403

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreateExecutionPlanInvoker

func (c *AosClient) CreateExecutionPlanInvoker(request *model.CreateExecutionPlanRequest) *CreateExecutionPlanInvoker

CreateExecutionPlanInvoker 创建执行计划

func (*AosClient) CreatePrivateHook added in v0.1.109

func (c *AosClient) CreatePrivateHook(request *model.CreatePrivateHookRequest) (*model.CreatePrivateHookResponse, error)

CreatePrivateHook 创建私有hook

创建私有hook(CreatePrivateHook)

创建一个带有初始默认版本的私有hook,创建私有hook的时候需要同时创建一个初始化的默认版本,不允许空私有hook的创建。 设置配置(Configuration)后的私有hook才会在触发资源栈部署时生效,资源栈使用私有hook的默认版本。若创建私有hook时未指定配置项,则该私有hook在资源栈部署时不生效,后续可通过UpdatePrivateHook API更新配置。

  • 支持hook策略模板检验的资源栈服务API: DeployStack DeleteStack
  • 创建私有hook时指定的版本为初始默认版本。
  • 如果同名的私有hook在当前domain_id+region下已经存在,则会返回409。
  • 私有hook版本号遵循语义化版本号(Semantic Version),为用户自定义。
  • 资源编排服务会对私有hook进行校验,如文件大小,策略文件语法校验等。若存在错误,则会创建失败。
  • 当前仅支持部署资源前的检测,不支持部署资源过程中的检测。如果通过了部署资源前的检测,资源栈则会继续部署资源。反之会停止部署资源,并记录资源栈事件(stack events)。
  • 仅支持OPA开源引擎识别的,以Rego(https://www.openpolicyagent.org/docs/latest/policy-language/)语言编写的策略模板(用户可以通过policy_uri或policy_body给与策略文件内容)。
  • 策略模板中的决策结果使用object类型的hook_result,hook_result所在包的包名必须使用policy。hook_result格式如下: ``` hook_result := { \"is_passed\": Bool, \"err_msg\": String, } ``` 其中is_passed必选,err_msg可选。RFS通过查询policy.hook_result[is_passed]判断是否通过策略校验。
  • 如果policy.hook_result[is_passed]的结果是true,则表示通过策略校验,资源编排服务会继续部署资源。
  • 如果policy.hook_result[is_passed]的结果是false,则表示没有通过策略校验,资源编排服务会停止部署资源。并记录资源栈事件信息,信息的内容为policy.hook_result[err_msg]。如果没有设置err_msg,则资源栈事件信息内容为默认错误信息(校验私有hook失败)。
  • 如果没有使用policy.hook_result,则该策略不会生效,资源编排服务会继续部署资源。
  • 策略模板中不支持调用其他服务API等方式获取数据、不支持任何形式的网络访问、不支持以任何形式的自定义函数或者方法等、不支持读取本地文件以及系统操作。

私有hook的策略模板语法如下: ``` package policy

import rego.v1

hook_result := {
  \"is_passed\": input.message == \"world\",
  \"err_msg\": \"The error msg when private hook is not passed the validation\",
}

```

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreatePrivateHookInvoker added in v0.1.109

func (c *AosClient) CreatePrivateHookInvoker(request *model.CreatePrivateHookRequest) *CreatePrivateHookInvoker

CreatePrivateHookInvoker 创建私有hook

func (*AosClient) CreatePrivateHookVersion added in v0.1.109

CreatePrivateHookVersion 创建私有hook版本

创建私有hook版本(CreatePrivateHookVersion)

创建私有hook版本,创建私有hook版本后需要调用UpdatePrivateHook API设置为默认版本才能生效。

  • 版本号遵循语义化版本号(Semantic Version),为用户自定义。
  • 若hook_name和hook_id同时存在,则资源编排服务会检查是否两个匹配,如果不匹配则会返回400。
  • 资源编排服务会对私有hook进行校验,如文件大小,策略文件语法校验等。若存在错误,则会创建失败。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreatePrivateHookVersionInvoker added in v0.1.109

func (c *AosClient) CreatePrivateHookVersionInvoker(request *model.CreatePrivateHookVersionRequest) *CreatePrivateHookVersionInvoker

CreatePrivateHookVersionInvoker 创建私有hook版本

func (*AosClient) CreatePrivateProvider added in v0.1.80

CreatePrivateProvider 创建私有provider

创建私有provider(CreatePrivateProvider)

创建一个私有的空provider。如果用户给予了provider_version和function_graph_urn,则在创建私有provider的同时,还会在私有provider下创建一个私有provider版本。

  • 私有provider允许用户将自定义的provider注册到RFS中,并仅提供给当前用户使用。
  • 如果同名私有provider在当前账户中已经存在,则会返回409。
  • 版本号遵循语义化版本号(Semantic Version),为用户自定义。
  • 在本API中,provider_version和function_graph_urn需要搭配使用,如果只指定其中一个参数,则会返回400。
  • 资源编排服务只会对function_graph_urn进行浅校验,如是否符合正则,是否仅指定为当前region等。并不会深度校验,即用户是否存在权限调用,是否真实存在等。
  • 该API会返回provider_source字段,该字段按照“huawei.com/private-provider/{provider_name}”的形式拼接。关于provider_name和provider_source字段在模板中的使用细节,详见下方描述中。
  • 如果用户期望使用名称中不含有大写英文的provider,可以按照如下展示将provider_source字段指定为模板中定义的required_providers中的source参数。
  • 如果用户期望使用名称含有大写英文的provider,需要将provider_name完全转化为小写英文创建。同时用户既可以在模板中使用API返回的provider_source参数,也可以在模板中以 “huawei.com/private-provider”为固定前缀,按照原含大写英文的provider_name,拼写provider_source参数。

以HCL格式的模板为例,模板中引用私有provider的语法如下: ```

Provider \"{provider_name}\" {
  source = \"{provider_source}\"
  version = \"{provider_version}\"
}

```

以JSON格式的模板为例,模板中引用私有provider的语法如下: ```

{
  \"terraform\":{
    \"required_providers\":[
      {
        \"{provider_name}\":{
          \"source\":\"{provider_source}\",
          \"version\":\"{provider_version}\"
        }
      }
    ]
  }
}

```

RFS在支持用户使用FunctionGraph(以下简称:FG)的HTTP函数运行私有Provider时,定义了一套详细的对接规则,以实现RFS与私有Provider之间的成功交互。 其中关于FG的HTTP函数使用,请参考官网文档: https://support.huaweicloud.com/productdesc-functiongraph/functiongraph_02_1002.html。 用户需要在提供的FG的HTTP函数方法中,按照如下规则实现一系列对应方法:

  1. 用户需要首先在FG中启动一个HTTP Server,用于接受来自RFS的HTTP请求,请求的Path固定为\"/provider\",请求方法为\"POST\"。RFS规定了发送给FG的HTTP请求体,请求体格式如下所示: ``` { \"method_name\": String, \"request_data\": String, \"context\":{ \"session_id\": String, \"config_data\": String } } ``` 用户提供的FG的HTTP函数需要能够接收如上请求。否则会调用私有Provider失败,导致资源编排失败。
  2. 下面对FG中如何使用请求体中的各个参数,以实现FG与RFS的成功交互做详细解释: \"method_name\":RFS期望FG的HTTP函数中调用的私有provider的gRPC方法名。RFS会在请求体中,根据实际业务场景,每次从如下方法中选择一个进行传递。其中每个方法名需要与provider中原生的gRPC方法一一对应。在收到携带有某个方法名的请求后,FG的HTTP函数内能够调用对应的私有provider的原生gRPC方法,实现具体资源的处理逻辑。 provider内提供的原生gRPC协议请参考:tfplugin5.proto和grpc_controller.proto。方法名列表如下: ``` tfplugin5.proto: \"/tfplugin5.Provider/GetSchema\" \"/tfplugin5.Provider/PrepareProviderConfig\" \"/tfplugin5.Provider/ValidateResourceTypeConfig\" \"/tfplugin5.Provider/ValidateDataSourceConfig\" \"/tfplugin5.Provider/UpgradeResourceState\" \"/tfplugin5.Provider/Configure\" \"/tfplugin5.Provider/ReadResource\" \"/tfplugin5.Provider/PlanResourceChange\" \"/tfplugin5.Provider/ApplyResourceChange\" \"/tfplugin5.Provider/ImportResourceState\" \"/tfplugin5.Provider/ReadDataSource\" \"/tfplugin5.Provider/Stop\" grpc_controller.proto: \"/plugin.GRPCController/Shutdown\" ``` \"request_data\":RFS传递给FG的HTTP函数中每个方法的请求内容。在每个方法的处理逻辑中,需要先将request_data中的数据使用base64解码,然后作为私有provider的gRPC方法的数据传入。 \"config_data\":用于自定义provider处理实际请求前的初始化,如果context中config_data非空,FG的HTTP函数需要先将config_data作为输入调用/tfplugin5.Provider/Configure方法,进行初始化,再根据method_name调用对应的方法获取响应。 \"session_id\":表示请求是否来自同一个模板中的同一批编排任务。session_id相同,表示请求来自同一个模板中的同一批编排任务。 注意:用户启动的同一个provider进程不能接受多个来自RFS的请求。RFS推荐用户处理请求时,每次都启动新的进程处理相关请求。
  3. 在FG的HTTP函数中实现的请求响应按照固定格式进行返回,响应体的格式如下,成功响应码固定为200,任何其他响应码均视为失败请求,会导致资源编排失败。 ``` { \"response_data\": String, \"error\": String } ``` \"response_data\":调用私有provider的gRPC方法返回的内容。在FG的HTTP函数中,需要将gRPC方法返回的响应序列化后使用base64编码返回。 \"error\":调用gRPC方法返回的错误信息。

**约束与限制:**

  1. 私有provider为用户自行定义,提供给RFS的provider插件,RFS不负责校验其内部逻辑是否正确。
  2. RFS不负责维护私有provider的生命周期。用户使用私有provider部署的资源栈,由于私有provider缺失或问题,导致资源栈无法继续部署管理的,RFS不负责提供解决方案。
  3. RFS不负责保障私有provider的信息安全。用户使用私有provider部署的资源栈,由于模板中存在敏感数据,进而导致敏感信息泄露给第三方相关资源的,RFS不承担其相关责任。
  4. 当前调用私有provider过程中增加了网络因素,因此使用私有provider部署的失败概率会增加。如果出现因网络原因导致的部署失败,可以增加重试操作。
  5. 当前RFS会同步调用用户在FG中定义的一系列方法,单次方法需要确保运行时间不超过30s,否则会极大增加失败概率。
  6. 当前仅支持在模板中固定私有provider版本,不支持>,>=,<,<=,~>等定义宽松版本的表达式。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreatePrivateProviderInvoker added in v0.1.80

func (c *AosClient) CreatePrivateProviderInvoker(request *model.CreatePrivateProviderRequest) *CreatePrivateProviderInvoker

CreatePrivateProviderInvoker 创建私有provider

func (*AosClient) CreatePrivateProviderVersion added in v0.1.80

CreatePrivateProviderVersion 创建私有provider版本

创建私有provider版本(CreatePrivateProviderVersion)

  • provider的版本号需遵循语义化版本号(Semantic Version),为用户自定义。
  • 如果provider_name和provider_id同时存在,则资源编排服务会检查是否两个匹配,如果不匹配则会返回400。
  • 资源编排服务只会对function_graph_urn进行浅校验,如是否符合正则,是否仅指定为当前region等。并不会深度校验,即用户是否存在权限调用,是否真实存在等。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreatePrivateProviderVersionInvoker added in v0.1.80

func (c *AosClient) CreatePrivateProviderVersionInvoker(request *model.CreatePrivateProviderVersionRequest) *CreatePrivateProviderVersionInvoker

CreatePrivateProviderVersionInvoker 创建私有provider版本

func (*AosClient) CreateStack

func (c *AosClient) CreateStack(request *model.CreateStackRequest) (*model.CreateStackResponse, error)

CreateStack 创建资源栈

CreateStack用于生成一个资源栈

* 当请求中不含有模板(template)、参数(vars)等信息,将生成一个无任何资源的空资源栈,返回资源栈ID(stack_id) * 当请求中携带了模板(template)、参数(vars)等信息,则会同时创建并部署资源栈,返回资源栈ID(stack_id)和部署ID(deployment_id)

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreateStackInstance added in v0.1.61

CreateStackInstance 创建资源栈实例

创建资源栈实例(CreateStackInstance)

此API用于在指定资源栈集下生成多个资源栈实例,并返回资源栈集操作ID(stack_set_operation_id)

此API可以通过var_overrides参数,指定创建资源栈实例的参数值,进行参数覆盖。如果var_overrides参数未给予,则默认使用当前资源栈集中记录的参数进行部署,详见:var_overrides参数描述。

通过DeployStackSet API更新资源栈集参数后,资源栈实例中已经被覆盖的参数不会被更新,仍然保留覆盖值。

用户只能覆盖已经在资源栈集中记录的参数,如果用户想要增加可以覆盖的参数,需要先通过DeployStackSet API更新资源栈集记录的参数集合。

* 用户可以根据资源栈集操作ID(stack_set_operation_id),通过ShowStackSetOperationMetadata API获取资源栈集操作状态

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreateStackInstanceInvoker added in v0.1.61

func (c *AosClient) CreateStackInstanceInvoker(request *model.CreateStackInstanceRequest) *CreateStackInstanceInvoker

CreateStackInstanceInvoker 创建资源栈实例

func (*AosClient) CreateStackInvoker

func (c *AosClient) CreateStackInvoker(request *model.CreateStackRequest) *CreateStackInvoker

CreateStackInvoker 创建资源栈

func (*AosClient) CreateStackSet added in v0.1.61

func (c *AosClient) CreateStackSet(request *model.CreateStackSetRequest) (*model.CreateStackSetResponse, error)

CreateStackSet 创建资源栈集

创建资源栈集(CreateStackSet)

此API为同步API,用于生成一个空资源栈集,即不包含任何一个资源栈实例,并返回资源栈集ID(stack_set_id)

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) CreateStackSetInvoker added in v0.1.61

func (c *AosClient) CreateStackSetInvoker(request *model.CreateStackSetRequest) *CreateStackSetInvoker

CreateStackSetInvoker 创建资源栈集

func (*AosClient) DeleteExecutionPlan added in v0.1.15

DeleteExecutionPlan 删除执行计划

删除执行计划(DeleteExecutionPlan)

删除指定的执行计划

如果执行计划状态处于`CREATION_IN_PROGRESS`、`APPLY_IN_PROGRESS`状态时,则不允许删除并返回403

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteExecutionPlanInvoker added in v0.1.15

func (c *AosClient) DeleteExecutionPlanInvoker(request *model.DeleteExecutionPlanRequest) *DeleteExecutionPlanInvoker

DeleteExecutionPlanInvoker 删除执行计划

func (*AosClient) DeletePrivateHook added in v0.1.109

func (c *AosClient) DeletePrivateHook(request *model.DeletePrivateHookRequest) (*model.DeletePrivateHookResponse, error)

DeletePrivateHook 删除私有hook

删除私有hook(DeletePrivateHook)

删除某个私有hook以及私有hook下的全部hook版本

  • 默认版本只能调用本API删除,除默认版本外的其它版本可以调用DeletePrivateHookVersion API删除。
  • 若hook_name和hook_id同时存在,则资源编排服务会检查是否两个匹配,如果不匹配则会返回400。

**请谨慎操作,删除私有hook将会删除该私有hook和该私有hook下的所有私有hook版本。**

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeletePrivateHookInvoker added in v0.1.109

func (c *AosClient) DeletePrivateHookInvoker(request *model.DeletePrivateHookRequest) *DeletePrivateHookInvoker

DeletePrivateHookInvoker 删除私有hook

func (*AosClient) DeletePrivateHookVersion added in v0.1.109

DeletePrivateHookVersion 删除私有hook版本

删除私有hook版本(DeletePrivateHookVersion)

删除某个私有hook版本

  • 默认版本只能调用DeletePrivateHook API删除,除默认版本外的其它版本都可以调用本API删除。
  • 若hook_name和hook_id同时存在,则资源编排服务会检查是否两个匹配,如果不匹配则会返回400。

**请谨慎操作**

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeletePrivateHookVersionInvoker added in v0.1.109

func (c *AosClient) DeletePrivateHookVersionInvoker(request *model.DeletePrivateHookVersionRequest) *DeletePrivateHookVersionInvoker

DeletePrivateHookVersionInvoker 删除私有hook版本

func (*AosClient) DeleteStack added in v0.1.12

func (c *AosClient) DeleteStack(request *model.DeleteStackRequest) (*model.DeleteStackResponse, error)

DeleteStack 删除资源栈

删除资源栈(DeleteStack)

此API用于删除某个资源栈 **请谨慎操作,删除资源栈将会删除与该资源栈相关的所有数据和资源,如:执行计划、资源栈事件、资源栈输出、资源等。**

* 此API会触发删除资源栈,并以最终一致性删除所有数据,用户可以调用GetStackMetadata或ListStacks跟踪资源栈删除情况 * 如果资源栈状态处于非终态(状态以`IN_PROGRESS`结尾)状态时,则不允许删除。包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)
  • 正在删除(DELETION_IN_PROGRESS)
  • 正在回滚(ROLLBACK_IN_PROGRESS)

* 如果资源栈开启了删除保护,则不允许删除。用户可调用GetStackMetadata,查看返回中的`enable_deletion_protection`字段判断删除保护是否开启。用户可通过调用UpdateStack关闭删除保护。 * 如果资源栈删除失败,可以根据StackEvents提示信息修复当前模板中的错误后,部署成功后再次删除资源栈。有以下两种方式触发部署:

  • 调用CreateExecutionPlan创建执行计划,执行计划创建成功后调用ApplyExecutionPlan部署资源栈。
  • 调用DeployStack部署资源栈

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteStackEnhanced added in v0.1.58

DeleteStackEnhanced 条件删除资源栈

条件删除资源栈(DeleteStackEnhanced)

此API用于删除某个资源栈,可以选择是否保留资源。 **请谨慎操作,删除资源栈将默认删除与该资源栈相关的所有数据,如:执行计划、资源栈事件、资源栈输出、资源等。** **如果希望删除资源栈保留资源,可以在请求中设置`retain_all_resources`对资源进行保留。

* 此API会触发删除资源栈,并以最终一致性删除数据,用户可以调用GetStackMetadata或ListStacks跟踪资源栈删除情况。当删除完成后,被删除资源栈将不会在上述API中返回。 * 如果资源栈状态处于非终态(状态以`IN_PROGRESS`结尾)状态时,则不允许删除。包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)
  • 正在删除(DELETION_IN_PROGRESS)
  • 正在回滚(ROLLBACK_IN_PROGRESS)

* 如果资源栈开启了删除保护,则不允许删除。用户可调用GetStackMetadata,查看返回中的`enable_deletion_protection`字段判断删除保护是否开启。用户可通过调用UpdateStack关闭删除保护。 * 如果资源栈删除失败,可以根据StackEvents提示信息修复当前模板中的错误后,部署成功后再次删除资源栈。有以下两种方式触发部署:

  • 调用CreateExecutionPlan创建执行计划,执行计划创建成功后调用ApplyExecutionPlan部署资源栈。
  • 调用DeployStack部署资源栈。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteStackEnhancedInvoker added in v0.1.58

func (c *AosClient) DeleteStackEnhancedInvoker(request *model.DeleteStackEnhancedRequest) *DeleteStackEnhancedInvoker

DeleteStackEnhancedInvoker 条件删除资源栈

func (*AosClient) DeleteStackInstance added in v0.1.61

DeleteStackInstance 删除资源栈实例

删除资源栈实例(DeleteStackInstance)

此API用于删除指定资源栈集下指定局点(region)或指定成员账户(domain_id)的资源栈实例,并返回资源栈集操作ID(stack_set_operation_id)

**请谨慎操作,删除资源栈实例将会删除与该资源栈实例相关的堆栈以及堆栈所管理的一切资源。**

* 用户可以根据资源栈集操作ID(stack_set_operation_id),通过ShowStackSetOperationMetadata API获取资源栈集操作状态

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteStackInstanceDeprecated added in v0.1.71

DeleteStackInstanceDeprecated 删除资源栈实例-已废弃

删除资源栈实例-被废弃(DeleteStackInstanceDeprecated)

此API用于删除指定资源栈集下指定局点(region)或指定成员账户(domain_id)的资源栈实例,并返回资源栈集操作ID(stack_set_operation_id)

**请谨慎操作,删除资源栈实例将会删除与该资源栈实例相关的堆栈以及堆栈所管理的一切资源。**

* 用户可以根据资源栈集操作ID(stack_set_operation_id),通过ShowStackSetOperationMetadata API获取资源栈集操作状态

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteStackInstanceDeprecatedInvoker added in v0.1.71

func (c *AosClient) DeleteStackInstanceDeprecatedInvoker(request *model.DeleteStackInstanceDeprecatedRequest) *DeleteStackInstanceDeprecatedInvoker

DeleteStackInstanceDeprecatedInvoker 删除资源栈实例-已废弃

func (*AosClient) DeleteStackInstanceInvoker added in v0.1.61

func (c *AosClient) DeleteStackInstanceInvoker(request *model.DeleteStackInstanceRequest) *DeleteStackInstanceInvoker

DeleteStackInstanceInvoker 删除资源栈实例

func (*AosClient) DeleteStackInvoker added in v0.1.12

func (c *AosClient) DeleteStackInvoker(request *model.DeleteStackRequest) *DeleteStackInvoker

DeleteStackInvoker 删除资源栈

func (*AosClient) DeleteStackSet added in v0.1.61

func (c *AosClient) DeleteStackSet(request *model.DeleteStackSetRequest) (*model.DeleteStackSetResponse, error)

DeleteStackSet 删除资源栈集

删除资源栈集(DeleteStackSet)

**请谨慎操作,删除资源栈集将会删除与该资源栈集相关的所有数据,如:资源栈集操作、资源栈集操作事件等。**

当且仅当指定的资源栈集满足以下所有条件时,资源栈集才能被成功删除,否则会报错:

  • 资源栈集下没有资源栈实例
  • 资源栈集状态处于空闲(`IDLE`)状态

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteStackSetInvoker added in v0.1.61

func (c *AosClient) DeleteStackSetInvoker(request *model.DeleteStackSetRequest) *DeleteStackSetInvoker

DeleteStackSetInvoker 删除资源栈集

func (*AosClient) DeleteTemplate added in v0.1.30

func (c *AosClient) DeleteTemplate(request *model.DeleteTemplateRequest) (*model.DeleteTemplateResponse, error)

DeleteTemplate 删除模板

删除模板(DeleteTemplate)

此API用于删除某个模板以及模板下的全部模板版本 **请谨慎操作,删除模板将会删除模板下的所有模板版本。**

  • template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的模板,删除,再重新创建一个同名模板。对于团队并行开发,用户可能希望确保,当前我操作的模板就是我认为的那个,而不是其他队友删除后创建的同名模板。因此,使用ID就可以做到强匹配。资源编排服务保证每次创建的模板所对应的ID都不相同,更新不会影响ID。如果给予的template_id和当前模板管理的ID不一致,则返回400

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteTemplateInvoker added in v0.1.30

func (c *AosClient) DeleteTemplateInvoker(request *model.DeleteTemplateRequest) *DeleteTemplateInvoker

DeleteTemplateInvoker 删除模板

func (*AosClient) DeleteTemplateVersion added in v0.1.30

DeleteTemplateVersion 删除模板版本

删除模板版本(DeleteTemplateVersion)

此API用于删除某个模板版本

  • template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的模板,删除,再重新创建一个同名模板。对于团队并行开发,用户可能希望确保,当前我操作的模板就是我认为的那个,而不是其他队友删除后创建的同名模板。因此,使用ID就可以做到强匹配。资源编排服务保证每次创建的模板所对应的ID都不相同,更新不会影响ID。如果给予的template_id和当前模板管理的ID不一致,则返回400
  • 如果模板下只存在唯一模板版本,此模板版本将无法被删除,如果需要删除此模板版本,请调用DeleteTemplate。模板服务不允许存在没有模板版本的模板

**请谨慎操作**

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeleteTemplateVersionInvoker added in v0.1.30

func (c *AosClient) DeleteTemplateVersionInvoker(request *model.DeleteTemplateVersionRequest) *DeleteTemplateVersionInvoker

DeleteTemplateVersionInvoker 删除模板版本

func (*AosClient) DeployStack

func (c *AosClient) DeployStack(request *model.DeployStackRequest) (*model.DeployStackResponse, error)

DeployStack 部署资源栈

部署资源栈(DeployStack)

此API用于部署一个已有的资源栈

* 用户可以使用此API更新模板、参数等并触发一个新的部署

* 此API会直接触发部署,如果用户希望先确认部署会发生的时间,请使用执行计划,即使用CreateExecutionPlan以创建执行计划、使用GetExecutionPlan以获取执行计划

* 此API为全量API,即用户每次部署都需要给予所想要使用的template、vars的全量

* 当触发的部署失败时,如果资源栈开启了自动回滚,会触发自动回滚的流程,否则就会停留在部署失败时的状态

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeployStackInvoker

func (c *AosClient) DeployStackInvoker(request *model.DeployStackRequest) *DeployStackInvoker

DeployStackInvoker 部署资源栈

func (*AosClient) DeployStackSet added in v0.1.61

func (c *AosClient) DeployStackSet(request *model.DeployStackSetRequest) (*model.DeployStackSetResponse, error)

DeployStackSet 部署资源栈集

部署资源栈集(DeployStackSet)

此API用于部署一个已有的资源栈集,并返回资源栈集操作ID(stack_set_operation_id)

* 用户可以使用此API更新资源栈集的模板、参数并进行部署。

* 此API会直接触发资源栈实例部署。用户既可以部署资源栈集下所有的资源栈实例,也可以部署指定资源栈实例。

* 此API为全量API,即用户每次部署都需要给予所想要使用的template、vars的全量

* 当触发的部署失败时,资源栈集不会自动回滚模板和参数,但部署失败的资源栈会根据资源栈的回滚配置决定是否进行回滚,已经部署成功的资源栈不会触发回滚。

* 用户可以根据资源栈集操作ID(stack_set_operation_id),通过ShowStackSetOperationMetadata API获取资源栈集操作状态

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) DeployStackSetInvoker added in v0.1.61

func (c *AosClient) DeployStackSetInvoker(request *model.DeployStackSetRequest) *DeployStackSetInvoker

DeployStackSetInvoker 部署资源栈集

func (*AosClient) EstimateExecutionPlanPrice

EstimateExecutionPlanPrice 预估执行计划价格

预估执行计划价格(EstimateExecutionPlanPrice)

此API可以基于一份已有的执行计划中增量的资源进行询价,当前支持询价的计费模式有包周期计费、按需计费、免费,暂不支持其他形式的计费模式,例如竞价计费模式等。

注:

  • 由于某些资源的属性值含有默认值,且该属性和询价参数相关。如果用户的模板中描述的资源没有声明这些属性,则询价结果可能存在偏差。
  • 询价结果仅为预估结果,具体请以实际为准。
  • 如果用户在模板中使用了depends_on参数,如A资源询价必要字段依赖于B资源的创建,则A资源不支持询价。
  • 暂不支持传入data sources的flavor.id的场景的询价。
  • 暂不支持镜像询价。
  • 如果A资源的询价必要字段设置了sensitive = true,则A资源不支持询价。
  • 模板中询价的资源的个数是有限制的。当前一个模板中最多支持12个包周期计费资源和24个按需计费资源。
  • 支持询价的资源列表和询价必要参数
  • huaweicloud_cce_cluster:
  • 支持的计费模式:包周期、按需
  • huaweicloud_css_cluster:
  • 支持的计费模式:按需
  • huaweicloud_evs_volume:
  • 支持的计费模式:包周期、按需
  • 询价必要参数:size(磁盘规格)
  • huaweicloud_compute_instance:
  • 支持的计费模式:包周期、按需
  • 询价必要参数:flavor_id(规格ID)、flavor_name(规格名称,flavor_id和flavor_name至少给出一个)、system_disk_size(系统磁盘大小)
  • huaweicloud_vpc_bandwidth:
  • 支持的计费模式:按需
  • 询价必要参数:charge_mode仅支持bandwidth
  • huaweicloud_vpc_eip:
  • 支持的计费模式:包周期、按需
  • 询价必要参数:bandwidth.size(带宽大小)
  • huaweicloud_gaussdb_redis_instance:
  • 支持的计费模式:包周期、按需
  • huaweicloud_nat_gateway:
  • 支持的计费模式:按需
  • huaweicloud_rds_instance:
  • 支持的计费模式:包周期、按需
  • 支持的数据库类型:MySQL、PostgreSQL、Microsoft SQL Server
  • huaweicloud_sfs_turbo:
  • 支持的计费模式:按需
  • 询价必要参数:share_type(文件系统类型)
  • huaweicloud_dms_kafka_instance:
  • 支持的计费模式:按需
  • 询价必要参数:flavor_id(规格ID)、product_id(产品ID。flavor_id和product_id至少给出一个。)、storage_space(存储容量)
  • huaweicloud_dcs_instance:
  • 支持的计费模式:包周期、按需
  • huaweicloud_gaussdb_mysql_instance:
  • 支持的计费模式:包周期、按需
  • 询价必要参数:proxy_node_number(代理节点数量)、volume_size(挂载卷的存储空间)
  • huaweicloud_vpc:
  • 支持的计费模式:免费
  • huaweicloud_drs_job:
  • 支持的计费模式:按需
  • huaweicloud_apig_instance:
  • 支持的计费模式:按需

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) EstimateExecutionPlanPriceInvoker

func (c *AosClient) EstimateExecutionPlanPriceInvoker(request *model.EstimateExecutionPlanPriceRequest) *EstimateExecutionPlanPriceInvoker

EstimateExecutionPlanPriceInvoker 预估执行计划价格

func (*AosClient) GetExecutionPlan added in v0.1.15

func (c *AosClient) GetExecutionPlan(request *model.GetExecutionPlanRequest) (*model.GetExecutionPlanResponse, error)

GetExecutionPlan 获取执行计划

获取执行计划(GetExecutionPlan)

此API用于获取指定执行计划的详细内容(即执行计划项目),用户可通过此API得知指定执行计划在执行后,资源栈中的资源会发生何种变化

如果执行计划状态为`CREATION_IN_PROGRESS`或`CREATION_FAILED`,则不返回执行计划项目列表

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) GetExecutionPlanInvoker added in v0.1.15

func (c *AosClient) GetExecutionPlanInvoker(request *model.GetExecutionPlanRequest) *GetExecutionPlanInvoker

GetExecutionPlanInvoker 获取执行计划

func (*AosClient) GetExecutionPlanMetadata added in v0.1.30

GetExecutionPlanMetadata 获取执行计划元数据

获取执行计划元数据(GetExecutionPlanMetadata)

该API可以获取指定执行计划的元数据,包括资源栈ID、资源栈名称、执行计划ID、执行计划名称、执行计划描述、执行计划的创建时间和执行时间、执行计划状态等信息。

具体信息见GetExecutionPlanMetadataResponseBody。

如果需要获取执行计划的具体内容,请调用GetExecutionPlan。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) GetExecutionPlanMetadataInvoker added in v0.1.30

func (c *AosClient) GetExecutionPlanMetadataInvoker(request *model.GetExecutionPlanMetadataRequest) *GetExecutionPlanMetadataInvoker

GetExecutionPlanMetadataInvoker 获取执行计划元数据

func (*AosClient) GetStackMetadata added in v0.1.15

func (c *AosClient) GetStackMetadata(request *model.GetStackMetadataRequest) (*model.GetStackMetadataResponse, error)

GetStackMetadata 获取资源栈元数据

获取资源栈元数据(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)

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) GetStackMetadataInvoker added in v0.1.15

func (c *AosClient) GetStackMetadataInvoker(request *model.GetStackMetadataRequest) *GetStackMetadataInvoker

GetStackMetadataInvoker 获取资源栈元数据

func (*AosClient) GetStackTemplate

func (c *AosClient) GetStackTemplate(request *model.GetStackTemplateRequest) (*model.GetStackTemplateResponse, error)

GetStackTemplate 获取资源栈模板

获取资源栈模板(GetStackTemplate)

此API用于获取资源栈最近一次部署终态使用的模板。

注: 当资源栈状态处于非终态(即以`IN_PROGRESS`结尾,详细见下方)状态时,资源栈处于转变阶段,此API获取资源栈上一次部署使用的模板。 只有当资源栈状态处于终态(即以`COMPLETE`或`FAILED`结尾,详细见下方)时,此API获取当前最新一次部署使用的模板。CREATION_COMPLETE除外,此时资源栈没有模板,返回404,并提示模板不存在

非终态状态包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)
  • 正在回滚(ROLLBACK_IN_PROGRESS)
  • 正在删除(DELETION_IN_PROGRESS)

终态状态包括但不限于以下状态:

  • 生成空资源栈完成(CREATION_COMPLETE)
  • 部署失败(DEPLOYMENT_FAILED)
  • 部署完成(DEPLOYMENT_COMPLETE)
  • 回滚失败(ROLLBACK_FAILED)
  • 回滚完成(ROLLBACK_COMPLETE)
  • 删除失败(DELETION_FAILED)

如果获取成功,则以临时重定向形式返回模板下载链接(OBS Pre Signed地址,有效期为5分钟),大多数的客户端会进行自动重定向并下载模板; 如果未进行自动重定向,请参考HTTP的重定向规则获取模板下载链接,手动下载模板。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) GetStackTemplateInvoker

func (c *AosClient) GetStackTemplateInvoker(request *model.GetStackTemplateRequest) *GetStackTemplateInvoker

GetStackTemplateInvoker 获取资源栈模板

func (*AosClient) ListExecutionPlans

func (c *AosClient) ListExecutionPlans(request *model.ListExecutionPlansRequest) (*model.ListExecutionPlansResponse, error)

ListExecutionPlans 列举执行计划

列举执行计划(ListExecutionPlans)

列举当前局点下用户指定资源栈下所有的执行计划

  • 默认按照生成时间降序排序,最新生成的在最前
  • 注意:目前暂时返回全量执行计划信息,即不支持分页
  • 如果指定的资源栈下没有任何执行计划,则返回空list
  • 如果指定的资源栈不存在,则返回404

ListExecutionPlans返回的只有摘要信息(具体摘要信息见ListExecutionPlansResponseBody),如果用户需要详细的执行计划元数据请调用GetExecutionPlanMetadata

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListExecutionPlansInvoker

func (c *AosClient) ListExecutionPlansInvoker(request *model.ListExecutionPlansRequest) *ListExecutionPlansInvoker

ListExecutionPlansInvoker 列举执行计划

func (*AosClient) ListStackEvents added in v0.1.12

func (c *AosClient) ListStackEvents(request *model.ListStackEventsRequest) (*model.ListStackEventsResponse, error)

ListStackEvents 列举资源栈事件

列举资源栈事件(ListStackEvents)

此API用于列举资源栈某一次或全部的部署事件

* 如果给予deployment_id,则会将deployment_id作为查询条件,返回对应某一次部署的资源栈事件;如果不给予deployment_id,则返回全量的资源栈事件 * 如果给定的deployment_id对应的部署不存在,则返回404 * 可以使用filter作为过滤器,过滤出指定事件类型(event_type)、资源类型(resource_type)、资源名称(resource_name)的资源栈事件 * 可以使用field选择数据应返回的属性,属性事件类型(event_type)不可配置,一定会返回,可选择的属性有逝去时间(elapsed_seconds)、事件消息(event_message)、 资源ID键(resource_id_key)、资源ID值(resource_id_value)、资源键(resource_key)、资源类型(resource_type)、资源名称(resource_name)和时间戳(timestamp) * 事件返回将以时间降序排列

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListStackEventsInvoker added in v0.1.12

func (c *AosClient) ListStackEventsInvoker(request *model.ListStackEventsRequest) *ListStackEventsInvoker

ListStackEventsInvoker 列举资源栈事件

func (*AosClient) ListStackInstances added in v0.1.61

func (c *AosClient) ListStackInstances(request *model.ListStackInstancesRequest) (*model.ListStackInstancesResponse, error)

ListStackInstances 列举资源栈实例

列举资源栈实例(ListStackInstances)

此API用于列举指定资源栈集下指定局点(region)或指定成员账户(stack_domain_id)或全部资源栈实例

* 可以使用filter作为过滤器,过滤出指定局点(region)或指定成员账户(stack_domain_id)下的资源栈实例 * 可以使用sort_key和sort_dir两个关键字对返回结果按创建时间(create_time)进行排序。给予的sort_key和sort_dir数量须一致,否则返回400。如果未给予sort_key和sort_dir,则默认按照创建时间降序排序。 * 如果指定资源栈集下没有任何资源栈实例,则返回空list

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListStackInstancesInvoker added in v0.1.61

func (c *AosClient) ListStackInstancesInvoker(request *model.ListStackInstancesRequest) *ListStackInstancesInvoker

ListStackInstancesInvoker 列举资源栈实例

func (*AosClient) ListStackOutputs

func (c *AosClient) ListStackOutputs(request *model.ListStackOutputsRequest) (*model.ListStackOutputsResponse, error)

ListStackOutputs 列举资源栈输出

列举资源栈输出(ListStackOutputs)

此API用于列举该资源栈的所有输出

资源栈输出为用户在模板中定义的 output 语句块在部署结束后所产生的返回信息,用户可在部署结束后,调用此API获取其具体的输出信息

当资源栈状态处于非终态(状态以`IN_PROGRESS`结尾)状态时,此API将返回空。非终态包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)
  • 正在删除(DELETION_IN_PROGRESS)
  • 正在回滚(ROLLBACK_IN_PROGRESS)

output为HCL官方定义的语法,其返回信息类似于常见编程语言中的返回值,详细定义请参考HCL官方的说明

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListStackOutputsInvoker

func (c *AosClient) ListStackOutputsInvoker(request *model.ListStackOutputsRequest) *ListStackOutputsInvoker

ListStackOutputsInvoker 列举资源栈输出

func (*AosClient) ListStackResources added in v0.1.12

func (c *AosClient) ListStackResources(request *model.ListStackResourcesRequest) (*model.ListStackResourcesResponse, error)

ListStackResources 列举资源栈资源

列举资源栈资源(ListStackResources)

此API用于列举资源栈中当前管理的所有资源的信息

当资源栈处于非终态时,仅输出资源栈下资源的简要信息,包含逻辑资源名称(logical_resource_name),逻辑资源类型(logical_resource_type),物理资源id(physical_resource_id),物理资源名称(physical_resource_name),资源状态(status)等信息;当资源栈处于终态时,将额外输出具体信息,如资源属性(resource_attributes)

非终态包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)
  • 正在删除(DELETION_IN_PROGRESS)
  • 正在回滚(ROLLBACK_IN_PROGRESS)

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListStackResourcesInvoker added in v0.1.12

func (c *AosClient) ListStackResourcesInvoker(request *model.ListStackResourcesRequest) *ListStackResourcesInvoker

ListStackResourcesInvoker 列举资源栈资源

func (*AosClient) ListStackSetOperations added in v0.1.61

ListStackSetOperations 列举资源栈集操作

列举资源栈集操作(ListStackSetOperations)

列举指定资源栈集下所有的资源栈集的操作。

可以使用filter作为过滤器,过滤出指定操作状态(status)或操作类型(action)下的资源栈集操作。 可以使用sort_key和sort_dir两个关键字对返回结果按创建时间(create_time)进行排序。给予的sort_key和sort_dir数量须一致,否则返回400。如果未给予sort_key和sort_dir,则默认按照创建时间降序排序。 如果指定资源栈集下没有任何资源栈集操作,则返回空list。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListStackSetOperationsInvoker added in v0.1.61

func (c *AosClient) ListStackSetOperationsInvoker(request *model.ListStackSetOperationsRequest) *ListStackSetOperationsInvoker

ListStackSetOperationsInvoker 列举资源栈集操作

func (*AosClient) ListStackSets added in v0.1.61

func (c *AosClient) ListStackSets(request *model.ListStackSetsRequest) (*model.ListStackSetsResponse, error)

ListStackSets 列举资源栈集

列举资源栈集(ListStackSets)

此API用于列举当前用户(domain)当前局点(region)下全部资源栈集。

* 可以使用filter作为过滤器,过滤出指定权限模型(permission_model)下的资源栈集。 * 可以使用sort_key和sort_dir两个关键字对返回结果按创建时间(create_time)进行排序。给予的sort_key和sort_dir数量须一致,否则返回400。如果未给予sort_key和sort_dir,则默认按照创建时间降序排序。 * 注意:目前暂时返回全量资源栈集信息,即不支持分页 * 如果没有任何资源栈集,则返回空list

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListStackSetsInvoker added in v0.1.61

func (c *AosClient) ListStackSetsInvoker(request *model.ListStackSetsRequest) *ListStackSetsInvoker

ListStackSetsInvoker 列举资源栈集

func (*AosClient) ListStacks

func (c *AosClient) ListStacks(request *model.ListStacksRequest) (*model.ListStacksResponse, error)

ListStacks 列举资源栈

列举资源栈(ListStacks)

此API用于列举当前局点下用户所有的资源栈

  • 默认按照生成时间降序排序,最新生成的在最前
  • 注意:目前暂时返回全量资源栈信息,即不支持分页
  • 如果没有任何资源栈,则返回空list

ListStacks返回的只有摘要信息(具体摘要信息见ListStacksResponseBody),如果用户需要详细的资源栈元数据请调用GetStackMetadata

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListStacksInvoker

func (c *AosClient) ListStacksInvoker(request *model.ListStacksRequest) *ListStacksInvoker

ListStacksInvoker 列举资源栈

func (*AosClient) ListTemplateVersions added in v0.1.46

ListTemplateVersions 列举模板版本

列举模板版本信息(ListTemplateVersions)

此API用于列举模板下所有的模板版本信息

  • 默认按照生成时间降序排序,最新生成的模板排列在最前面
  • 注意:目前返回全量模板版本信息,即不支持分页
  • 如果没有任何模板版本,则返回空list
  • template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的模板,删除,再重新创建一个同名模板。对于团队并行开发,用户可能希望确保,当前我操作的模板就是我认为的那个,而不是其他队友删除后创建的同名模板。因此,使用ID就可以做到强匹配。资源编排服务保证每次创建的模板所对应的ID都不相同,更新不会影响ID。如果给予的template_id和当前模板管理的ID不一致,则返回400
  • 如果模板不存在则返回404

ListTemplateVersions返回的信息只包含模板版本摘要信息(具体摘要信息见ListTemplateVersionsResponseBody),如果用户需要了解模板版本内容,请调用ShowTemplateVersionContent

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListTemplateVersionsInvoker added in v0.1.46

func (c *AosClient) ListTemplateVersionsInvoker(request *model.ListTemplateVersionsRequest) *ListTemplateVersionsInvoker

ListTemplateVersionsInvoker 列举模板版本

func (*AosClient) ListTemplates added in v0.1.30

func (c *AosClient) ListTemplates(request *model.ListTemplatesRequest) (*model.ListTemplatesResponse, error)

ListTemplates 列举模板

列举模板(ListTemplates)

此API用于列举当前局点下用户所有的模板

  • 默认按照生成时间降序排序,最新生成的模板排列在最前面
  • 注意:目前返回全量模板信息,即不支持分页
  • 如果没有任何模板,则返回空list
  • 如果用户需要详细的模板版本信息,请调用ListTemplateVersions

ListTemplates返回的信息只包含模板摘要信息(具体摘要信息见ListTemplatesResponseBody),如果用户需要详细的某个模板信息,请调用ShowTemplateMetadata

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ListTemplatesInvoker added in v0.1.30

func (c *AosClient) ListTemplatesInvoker(request *model.ListTemplatesRequest) *ListTemplatesInvoker

ListTemplatesInvoker 列举模板

func (*AosClient) ParseTemplateVariables

ParseTemplateVariables 解析模板参数

解析模板参数(ParseTemplateVariables)

此API用于解析用户输入的模板中的参数(variable),将解析模板中的所有variable块并返回

* 如果用户传入的模板中定义了variable参数,则返回200和所有variable * 如果用户传入的模板中没有定义variable参数,则返回200和空对象 * 如果用户请求非法或传入的模板非法,则返回400

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ParseTemplateVariablesInvoker

func (c *AosClient) ParseTemplateVariablesInvoker(request *model.ParseTemplateVariablesRequest) *ParseTemplateVariablesInvoker

ParseTemplateVariablesInvoker 解析模板参数

func (*AosClient) ShowPrivateHookMetadata added in v0.1.109

ShowPrivateHookMetadata 获取私有hook元数据

获取私有hook元数据(ShowPrivateHookMetadata)

获取某个私有hook的元数据信息

  • 具体返回的信息见ShowPrivateHookMetadataResponseBody,若想查看私有hook下全部版本,请调用ListPrivateHookVersions。
  • 若hook_name和hook_id同时存在,则资源编排服务会检查两个是否匹配,如果不匹配则会返回400。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowPrivateHookMetadataInvoker added in v0.1.109

func (c *AosClient) ShowPrivateHookMetadataInvoker(request *model.ShowPrivateHookMetadataRequest) *ShowPrivateHookMetadataInvoker

ShowPrivateHookMetadataInvoker 获取私有hook元数据

func (*AosClient) ShowPrivateHookVersionMetadata added in v0.1.109

ShowPrivateHookVersionMetadata 获取私有hook版本的元数据

获取私有hook版本的元数据(ShowPrivateHookVersionMetadata)

获取当前私有hook对应版本的元数据信息

  • 具体返回的信息见ShowPrivateHookVersionMetadataResponseBody。
  • 如果hook_name和hook_id同时存在,则资源编排服务会检查是否两个匹配,如果不匹配则会返回400。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowPrivateHookVersionMetadataInvoker added in v0.1.109

func (c *AosClient) ShowPrivateHookVersionMetadataInvoker(request *model.ShowPrivateHookVersionMetadataRequest) *ShowPrivateHookVersionMetadataInvoker

ShowPrivateHookVersionMetadataInvoker 获取私有hook版本的元数据

func (*AosClient) ShowStackInstance added in v0.1.63

func (c *AosClient) ShowStackInstance(request *model.ShowStackInstanceRequest) (*model.ShowStackInstanceResponse, error)

ShowStackInstance 获取资源栈实例

获取资源栈实例(ShowStackInstance)

用户可以使用此API获取资源栈实例的详细信息,包括关联资源栈名称与id,创建时间,参数覆盖等

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowStackInstanceInvoker added in v0.1.63

func (c *AosClient) ShowStackInstanceInvoker(request *model.ShowStackInstanceRequest) *ShowStackInstanceInvoker

ShowStackInstanceInvoker 获取资源栈实例

func (*AosClient) ShowStackSetMetadata added in v0.1.61

ShowStackSetMetadata 获取资源栈集元数据

获取资源栈集元数据(ShowStackSetMetadata)

* 用户可以使用此API获取资源栈集的元数据

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowStackSetMetadataInvoker added in v0.1.61

func (c *AosClient) ShowStackSetMetadataInvoker(request *model.ShowStackSetMetadataRequest) *ShowStackSetMetadataInvoker

ShowStackSetMetadataInvoker 获取资源栈集元数据

func (*AosClient) ShowStackSetOperationMetadata added in v0.1.61

ShowStackSetOperationMetadata 获取资源栈集操作的元数据

获取资源栈集操作元数据(ShowStackSetOperationMetadata)

此API用于获取指定资源栈集操作的元数据,包括资源栈集操作ID、资源栈集ID、资源栈集名称、资源栈集操作状态、创建时间、更新时间、部署目标等信息。

具体信息见ShowStackSetOperationMetadataResponseBody。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowStackSetOperationMetadataInvoker added in v0.1.61

func (c *AosClient) ShowStackSetOperationMetadataInvoker(request *model.ShowStackSetOperationMetadataRequest) *ShowStackSetOperationMetadataInvoker

ShowStackSetOperationMetadataInvoker 获取资源栈集操作的元数据

func (*AosClient) ShowStackSetTemplate added in v0.1.61

ShowStackSetTemplate 获取资源栈集模板

获取资源栈集模板(ShowStackSetTemplate)

此API用于获取指定资源栈集的模板。

如果获取成功,则以临时重定向形式返回模板下载链接(OBS Pre Signed地址,有效期为5分钟),大多数的客户端会进行自动重定向并下载模板; 如果未进行自动重定向,请参考HTTP的重定向规则获取模板下载链接,手动下载模板。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowStackSetTemplateInvoker added in v0.1.61

func (c *AosClient) ShowStackSetTemplateInvoker(request *model.ShowStackSetTemplateRequest) *ShowStackSetTemplateInvoker

ShowStackSetTemplateInvoker 获取资源栈集模板

func (*AosClient) ShowTemplateMetadata added in v0.1.30

ShowTemplateMetadata 获取模板元数据

获取模板元数据(ShowTemplateMetadata)

此API用于获取当前模板的元数据信息

具体信息见ShowTemplateMetadataResponseBody,如果想查看模板下全部模板版本,请调用ListTemplateVersions。

  • template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的模板,删除,再重新创建一个同名模板。对于团队并行开发,用户可能希望确保,当前我操作的模板就是我认为的那个,而不是其他队友删除后创建的同名模板。因此,使用ID就可以做到强匹配。资源编排服务保证每次创建的模板所对应的ID都不相同,更新不会影响ID。如果给予的template_id和当前模板管理的ID不一致,则返回400

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowTemplateMetadataInvoker added in v0.1.30

func (c *AosClient) ShowTemplateMetadataInvoker(request *model.ShowTemplateMetadataRequest) *ShowTemplateMetadataInvoker

ShowTemplateMetadataInvoker 获取模板元数据

func (*AosClient) ShowTemplateVersionContent added in v0.1.30

ShowTemplateVersionContent 获取模板版本内容

获取模板版本内容(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

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowTemplateVersionContentInvoker added in v0.1.30

func (c *AosClient) ShowTemplateVersionContentInvoker(request *model.ShowTemplateVersionContentRequest) *ShowTemplateVersionContentInvoker

ShowTemplateVersionContentInvoker 获取模板版本内容

func (*AosClient) ShowTemplateVersionMetadata added in v0.1.30

ShowTemplateVersionMetadata 获取模板版本元数据

获取模板版本元数据(ShowTemplateVersionMetadata)

此API用于展示某一版本模板的元数据

  • template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的模板,删除,再重新创建一个同名模板。对于团队并行开发,用户可能希望确保,当前我操作的模板就是我认为的那个,而不是其他队友删除后创建的同名模板。因此,使用ID就可以做到强匹配。资源编排服务保证每次创建的模板所对应的ID都不相同,更新不会影响ID。如果给予的template_id和当前模板管理的ID不一致,则返回400

ShowTemplateVersionMetadata返回的信息只包含模板版本元数据信息(具体摘要信息见ShowTemplateVersionMetadataResponseBody),如果用户需要了解模板版本内容,请调用ShowTemplateVersionContent

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) ShowTemplateVersionMetadataInvoker added in v0.1.30

func (c *AosClient) ShowTemplateVersionMetadataInvoker(request *model.ShowTemplateVersionMetadataRequest) *ShowTemplateVersionMetadataInvoker

ShowTemplateVersionMetadataInvoker 获取模板版本元数据

func (*AosClient) UpdatePrivateHookMetadata added in v0.1.109

UpdatePrivateHookMetadata 更新私有hook元数据

更新私有hook元数据(UpdatePrivateHookMetadata)

更新当前私有hook的元数据信息

  • 目前支持更新私有hook的描述、默认版本、配置。
  • 如果需要创建新的版本,请调用CreatePrivateHookVersion。
  • 更新为增量更新,即如果某个参数不提供,则保持原始值。
  • 如果请求中没有需要被更新的参数(如请求中没有任何内容,或仅有hook_id),则返回400。注意:即使更新原始值和目标值一致也被认为是有效更新
  • 更新后私有hook的更新时间(update_time)也会被更新
  • 若hook_name和hook_id同时存在,则资源编排服务会检查是否两个匹配,如果不匹配则会返回400。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) UpdatePrivateHookMetadataInvoker added in v0.1.109

func (c *AosClient) UpdatePrivateHookMetadataInvoker(request *model.UpdatePrivateHookMetadataRequest) *UpdatePrivateHookMetadataInvoker

UpdatePrivateHookMetadataInvoker 更新私有hook元数据

func (*AosClient) UpdateStack added in v0.1.24

func (c *AosClient) UpdateStack(request *model.UpdateStackRequest) (*model.UpdateStackResponse, error)

UpdateStack 更新资源栈

更新资源栈(UpdateStack)

更新资源栈的属性,该API可以根据用户给予的信息对资源栈的属性进行更新,可以更新资源栈的“description”、“enable_deletion_protection”、\"enable_auto_rollback\"、\"agencies\"四个属性中的一个或多个

该API只会更新用户给予的信息中所涉及的字段;如果某字段未给予,则不会对该资源栈属性进行更新

注:所有属性的更新都是覆盖式更新。即,所给予的参数将被完全覆盖至资源栈已有的属性上

例如,如果要新增agencies,请通过GetStackMetadata获取该资源栈原有的agencies信息,将新旧agencies信息进行整合后再调用UpdateStack

* 如果资源栈状态处于非终态(状态以`IN_PROGRESS`结尾)状态时,则不允许更新。包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)
  • 正在删除(DELETION_IN_PROGRESS)
  • 正在回滚(ROLLBACK_IN_PROGRESS)

* 对于“enable_auto_rollback”属性从false到true的更新操作,资源栈状态判定将更加严格,在失败(状态以`_FAILED`结尾)状态时也不允许更新,包括但不限于以下状态:

  • 部署失败(DEPLOYMENT_FAILED)
  • 回滚失败(ROLLBACK_FAILED)
  • 删除失败(DELETION_FAILED)

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) UpdateStackInstances added in v0.1.63

UpdateStackInstances 更新资源栈实例

更新资源栈实例(UpdateStackInstances)

此API用于更新并部署指定资源栈实例集合,并返回资源栈集操作ID(stack_set_operation_id)

此API可以通过var_overrides参数,更新指定资源栈实例的参数值,进行参数覆盖。如果var_overrides参数未给予,则默认使用当前资源栈集中记录的参数进行部署,详见:var_overrides参数描述。用户只可以更新已经存在的资源栈实例,如果用户想要增加额外的资源栈实例,请使用CreateStackInstances API。

通过DeployStackSet API更新资源栈集参数后,资源栈实例中已经被覆盖的参数不会被更新,仍然保留覆盖值。

用户只能覆盖已经在资源栈集中记录的参数,如果用户想要增加可以覆盖的参数,需要先通过DeployStackSet API更新资源栈集记录的参数集合。

* 当触发的部署失败时,资源栈实例不会自动回滚参数覆盖,但部署失败的资源栈会默认自动回滚,已经部署成功的资源栈不会触发回滚。

* 用户可以根据资源栈集操作ID(stack_set_operation_id),通过ShowStackSetOperationMetadata API获取资源栈集操作状态。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) UpdateStackInstancesInvoker added in v0.1.63

func (c *AosClient) UpdateStackInstancesInvoker(request *model.UpdateStackInstancesRequest) *UpdateStackInstancesInvoker

UpdateStackInstancesInvoker 更新资源栈实例

func (*AosClient) UpdateStackInvoker added in v0.1.24

func (c *AosClient) UpdateStackInvoker(request *model.UpdateStackRequest) *UpdateStackInvoker

UpdateStackInvoker 更新资源栈

func (*AosClient) UpdateStackSet added in v0.1.61

func (c *AosClient) UpdateStackSet(request *model.UpdateStackSetRequest) (*model.UpdateStackSetResponse, error)

UpdateStackSet 更新资源栈集

更新资源栈集(UpdateStackSet)

该API可以根据用户给予的信息对资源栈集的属性进行更新,可以更新资源栈集的“stack_set_description”、\"initial_stack_description\"、\"permission_model\"、“administration_agency_name”、\"managed_agency_name\"、“administration_agency_urn”六个属性中的一个或多个。

该API只会更新用户给予的信息中所涉及的字段;如果某字段未给予,则不会对该资源栈集属性进行更新。

注:

  • 所有属性的更新都是覆盖式更新。即,所给予的参数将被完全覆盖至资源栈已有的属性上。
  • 只有在permission_model=SELF_MANAGED时,才可更新administration_agency_name、managed_agency_name和administration_agency_urn。
  • permission_model目前只支持更新SELF_MANAGED
  • 如果资源栈集的状态是OPERATION_IN_PROGRESS,不允许更新资源栈集。

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) UpdateStackSetInvoker added in v0.1.61

func (c *AosClient) UpdateStackSetInvoker(request *model.UpdateStackSetRequest) *UpdateStackSetInvoker

UpdateStackSetInvoker 更新资源栈集

func (*AosClient) UpdateTemplateMetadata added in v0.1.30

UpdateTemplateMetadata 更新模板元数据

更新模板元数据(UpdateTemplateMetadata)

此API用于更新模板元数据

* 此api只支持更新模板描述

Please refer to HUAWEI cloud API Explorer for details.

func (*AosClient) UpdateTemplateMetadataInvoker added in v0.1.30

func (c *AosClient) UpdateTemplateMetadataInvoker(request *model.UpdateTemplateMetadataRequest) *UpdateTemplateMetadataInvoker

UpdateTemplateMetadataInvoker 更新模板元数据

type ApplyExecutionPlanInvoker

type ApplyExecutionPlanInvoker struct {
	*invoker.BaseInvoker
}

func (*ApplyExecutionPlanInvoker) Invoke

type ContinueDeployStackInvoker added in v0.1.39

type ContinueDeployStackInvoker struct {
	*invoker.BaseInvoker
}

func (*ContinueDeployStackInvoker) Invoke added in v0.1.39

type ContinueRollbackStackInvoker

type ContinueRollbackStackInvoker struct {
	*invoker.BaseInvoker
}

func (*ContinueRollbackStackInvoker) Invoke

type CreateExecutionPlanInvoker

type CreateExecutionPlanInvoker struct {
	*invoker.BaseInvoker
}

func (*CreateExecutionPlanInvoker) Invoke

type CreatePrivateHookInvoker added in v0.1.109

type CreatePrivateHookInvoker struct {
	*invoker.BaseInvoker
}

func (*CreatePrivateHookInvoker) Invoke added in v0.1.109

type CreatePrivateHookVersionInvoker added in v0.1.109

type CreatePrivateHookVersionInvoker struct {
	*invoker.BaseInvoker
}

func (*CreatePrivateHookVersionInvoker) Invoke added in v0.1.109

type CreatePrivateProviderInvoker added in v0.1.80

type CreatePrivateProviderInvoker struct {
	*invoker.BaseInvoker
}

func (*CreatePrivateProviderInvoker) Invoke added in v0.1.80

type CreatePrivateProviderVersionInvoker added in v0.1.80

type CreatePrivateProviderVersionInvoker struct {
	*invoker.BaseInvoker
}

func (*CreatePrivateProviderVersionInvoker) Invoke added in v0.1.80

type CreateStackInstanceInvoker added in v0.1.61

type CreateStackInstanceInvoker struct {
	*invoker.BaseInvoker
}

func (*CreateStackInstanceInvoker) Invoke added in v0.1.61

type CreateStackInvoker

type CreateStackInvoker struct {
	*invoker.BaseInvoker
}

func (*CreateStackInvoker) Invoke

type CreateStackSetInvoker added in v0.1.61

type CreateStackSetInvoker struct {
	*invoker.BaseInvoker
}

func (*CreateStackSetInvoker) Invoke added in v0.1.61

type DeleteExecutionPlanInvoker added in v0.1.15

type DeleteExecutionPlanInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteExecutionPlanInvoker) Invoke added in v0.1.15

type DeletePrivateHookInvoker added in v0.1.109

type DeletePrivateHookInvoker struct {
	*invoker.BaseInvoker
}

func (*DeletePrivateHookInvoker) Invoke added in v0.1.109

type DeletePrivateHookVersionInvoker added in v0.1.109

type DeletePrivateHookVersionInvoker struct {
	*invoker.BaseInvoker
}

func (*DeletePrivateHookVersionInvoker) Invoke added in v0.1.109

type DeleteStackEnhancedInvoker added in v0.1.58

type DeleteStackEnhancedInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteStackEnhancedInvoker) Invoke added in v0.1.58

type DeleteStackInstanceDeprecatedInvoker added in v0.1.71

type DeleteStackInstanceDeprecatedInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteStackInstanceDeprecatedInvoker) Invoke added in v0.1.71

type DeleteStackInstanceInvoker added in v0.1.61

type DeleteStackInstanceInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteStackInstanceInvoker) Invoke added in v0.1.61

type DeleteStackInvoker added in v0.1.12

type DeleteStackInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteStackInvoker) Invoke added in v0.1.12

type DeleteStackSetInvoker added in v0.1.61

type DeleteStackSetInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteStackSetInvoker) Invoke added in v0.1.61

type DeleteTemplateInvoker added in v0.1.30

type DeleteTemplateInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteTemplateInvoker) Invoke added in v0.1.30

type DeleteTemplateVersionInvoker added in v0.1.30

type DeleteTemplateVersionInvoker struct {
	*invoker.BaseInvoker
}

func (*DeleteTemplateVersionInvoker) Invoke added in v0.1.30

type DeployStackInvoker

type DeployStackInvoker struct {
	*invoker.BaseInvoker
}

func (*DeployStackInvoker) Invoke

type DeployStackSetInvoker added in v0.1.61

type DeployStackSetInvoker struct {
	*invoker.BaseInvoker
}

func (*DeployStackSetInvoker) Invoke added in v0.1.61

type EstimateExecutionPlanPriceInvoker

type EstimateExecutionPlanPriceInvoker struct {
	*invoker.BaseInvoker
}

func (*EstimateExecutionPlanPriceInvoker) Invoke

type GetExecutionPlanInvoker added in v0.1.15

type GetExecutionPlanInvoker struct {
	*invoker.BaseInvoker
}

func (*GetExecutionPlanInvoker) Invoke added in v0.1.15

type GetExecutionPlanMetadataInvoker added in v0.1.30

type GetExecutionPlanMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*GetExecutionPlanMetadataInvoker) Invoke added in v0.1.30

type GetStackMetadataInvoker added in v0.1.15

type GetStackMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*GetStackMetadataInvoker) Invoke added in v0.1.15

type GetStackTemplateInvoker

type GetStackTemplateInvoker struct {
	*invoker.BaseInvoker
}

func (*GetStackTemplateInvoker) Invoke

type ListExecutionPlansInvoker

type ListExecutionPlansInvoker struct {
	*invoker.BaseInvoker
}

func (*ListExecutionPlansInvoker) Invoke

type ListStackEventsInvoker added in v0.1.12

type ListStackEventsInvoker struct {
	*invoker.BaseInvoker
}

func (*ListStackEventsInvoker) Invoke added in v0.1.12

type ListStackInstancesInvoker added in v0.1.61

type ListStackInstancesInvoker struct {
	*invoker.BaseInvoker
}

func (*ListStackInstancesInvoker) Invoke added in v0.1.61

type ListStackOutputsInvoker

type ListStackOutputsInvoker struct {
	*invoker.BaseInvoker
}

func (*ListStackOutputsInvoker) Invoke

type ListStackResourcesInvoker added in v0.1.12

type ListStackResourcesInvoker struct {
	*invoker.BaseInvoker
}

func (*ListStackResourcesInvoker) Invoke added in v0.1.12

type ListStackSetOperationsInvoker added in v0.1.61

type ListStackSetOperationsInvoker struct {
	*invoker.BaseInvoker
}

func (*ListStackSetOperationsInvoker) Invoke added in v0.1.61

type ListStackSetsInvoker added in v0.1.61

type ListStackSetsInvoker struct {
	*invoker.BaseInvoker
}

func (*ListStackSetsInvoker) Invoke added in v0.1.61

type ListStacksInvoker

type ListStacksInvoker struct {
	*invoker.BaseInvoker
}

func (*ListStacksInvoker) Invoke

type ListTemplateVersionsInvoker added in v0.1.46

type ListTemplateVersionsInvoker struct {
	*invoker.BaseInvoker
}

func (*ListTemplateVersionsInvoker) Invoke added in v0.1.46

type ListTemplatesInvoker added in v0.1.30

type ListTemplatesInvoker struct {
	*invoker.BaseInvoker
}

func (*ListTemplatesInvoker) Invoke added in v0.1.30

type ParseTemplateVariablesInvoker

type ParseTemplateVariablesInvoker struct {
	*invoker.BaseInvoker
}

func (*ParseTemplateVariablesInvoker) Invoke

type ShowPrivateHookMetadataInvoker added in v0.1.109

type ShowPrivateHookMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowPrivateHookMetadataInvoker) Invoke added in v0.1.109

type ShowPrivateHookVersionMetadataInvoker added in v0.1.109

type ShowPrivateHookVersionMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowPrivateHookVersionMetadataInvoker) Invoke added in v0.1.109

type ShowStackInstanceInvoker added in v0.1.63

type ShowStackInstanceInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowStackInstanceInvoker) Invoke added in v0.1.63

type ShowStackSetMetadataInvoker added in v0.1.61

type ShowStackSetMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowStackSetMetadataInvoker) Invoke added in v0.1.61

type ShowStackSetOperationMetadataInvoker added in v0.1.61

type ShowStackSetOperationMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowStackSetOperationMetadataInvoker) Invoke added in v0.1.61

type ShowStackSetTemplateInvoker added in v0.1.61

type ShowStackSetTemplateInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowStackSetTemplateInvoker) Invoke added in v0.1.61

type ShowTemplateMetadataInvoker added in v0.1.30

type ShowTemplateMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowTemplateMetadataInvoker) Invoke added in v0.1.30

type ShowTemplateVersionContentInvoker added in v0.1.30

type ShowTemplateVersionContentInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowTemplateVersionContentInvoker) Invoke added in v0.1.30

type ShowTemplateVersionMetadataInvoker added in v0.1.30

type ShowTemplateVersionMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*ShowTemplateVersionMetadataInvoker) Invoke added in v0.1.30

type UpdatePrivateHookMetadataInvoker added in v0.1.109

type UpdatePrivateHookMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*UpdatePrivateHookMetadataInvoker) Invoke added in v0.1.109

type UpdateStackInstancesInvoker added in v0.1.63

type UpdateStackInstancesInvoker struct {
	*invoker.BaseInvoker
}

func (*UpdateStackInstancesInvoker) Invoke added in v0.1.63

type UpdateStackInvoker added in v0.1.24

type UpdateStackInvoker struct {
	*invoker.BaseInvoker
}

func (*UpdateStackInvoker) Invoke added in v0.1.24

type UpdateStackSetInvoker added in v0.1.61

type UpdateStackSetInvoker struct {
	*invoker.BaseInvoker
}

func (*UpdateStackSetInvoker) Invoke added in v0.1.61

type UpdateTemplateMetadataInvoker added in v0.1.30

type UpdateTemplateMetadataInvoker struct {
	*invoker.BaseInvoker
}

func (*UpdateTemplateMetadataInvoker) Invoke added in v0.1.30

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL