A ação ACS::Template incorpora um modelo em outro como modelo filho.
Descrição
A ação ACS::Template incorpora um modelo em outro como modelo filho. Use essa ação para modularizar um modelo complexo e dividi-lo em vários modelos filhos reutilizáveis. Você também pode definir operações comuns de O&M como modelos filhos. O CloudOps Orchestration Service (OOS) fornece ações de produtos de nuvem como modelos de operação para serviços comuns que você pode incorporar diretamente.
Sintaxe
Incorporar um modelo criado pelo nome do modelo
-
Formato geral (aplica-se a todos os modelos incorporáveis)
Tasks: - Name: callChildTemplate1 Action: ACS::Template Properties: TemplateName: child_template_name # Required. The name of the child template. TemplateVersion: v2 # Optional. By default, the latest version is used. Parameters: # Optional. The parameters that are required for executing the child template. ParameterName1: value1{ "Tasks": [ { "Name": "callChildTemplate1", "Action": "ACS::Template", "Properties": { "TemplateName": "child_template_name", "TemplateVersion": "v2", "Parameters": { "ParameterName1": "value1" } } } ] } -
Formato simplificado (aplica-se apenas a ações de produtos de nuvem)
Tasks: - Name: taskName # Required. The name of the task. Example: runMyInstances. Action: CloudProductActionName1 # Required. The name of the cloud product action. Example: ACS::ECS::RunInstances. Properties: ParameterName1: value1 # Optional. The parameter that is required for executing the cloud product action. Example: ImageId.{ "Tasks": [ { "Name": "taskName", "Action": "CloudProductActionName1", "Properties": { "ParameterName1": "parameterName1" } } ] }
Incorporar um novo modelo pelo conteúdo do modelo
Tasks:
- Name: callChildTemplate1
Action: ACS::Template
Properties:
TemplateContent:
FormatVersion: OOS-2019-06-01 # Required. The version of the template.
Parameters: # Optional. The parameters that are required for executing the child template.
Tasks: # Optional. The action that is performed by the child template.
{
"Tasks": [
{
"Name": "callChildTemplate1",
"Action": "ACS::Template",
"Properties": {
"TemplateContent": {
"FormatVersion": "OOS-2019-06-01",
"Parameters": null,
"Tasks": null
}
}
}
]
}
Limites
A ação de incorporação tem os seguintes limites:
Um modelo não pode incorporar a si mesmo.
Não é permitido fazer incorporações circulares. Por exemplo, o modelo A incorpora B, B incorpora C e C incorpora A.
O número total de camadas de incorporação não pode exceder três.
Incorporar uma ação de produto de nuvem conta como uma camada de incorporação. Tarefas em loop não contam como incorporação.