conditions
The conditions section is optional and defines conditions. By specifying conditions, you can determine whether to create and deploy elements defined in node_templates.
Format of the conditions section:
<Condition name>:
<Built-in condition function>
... The following shows how to specify conditions to control the effectiveness of properties in node_templates:
node_templates:
<Element name>:
condition: <Condition name>
... | Property | Mandatory or Not | Type | Value Constraint | Description |
|---|---|---|---|---|
| Condition name | Yes | String | The value must be 1 to 64 characters long. Only letters, digits, and hyphens (-) are allowed. | Name of the new condition, which must be unique. |
| Built-in function | Yes | - | - | Built-in condition functions are used to define conditions. For details, see Condition Function. |
| Element name | Yes | String | The value must be 1 to 48 characters long. Only lowercase letters, digits, and hyphens (-) are allowed. | Name of the new element, which must be unique. |
| Condition name | Yes | String | The value must be 1 to 64 characters long. Only letters, digits, and hyphens (-) are allowed. | Condition name defined in conditions. |
Example configuration of conditions:
When specifying conditions to determine whether to create and deploy elements, you need to define reference relationships in multiple sections such as inputs, conditions, and node_templates.
tosca_definitions_version: huaweicloud_tosca_version_1_0
conditions:
condition_vm_deploy: #The conditions can be met only when inputs parameters are matched.
cond_eq:
- get_input: vm_deploy
- true
inputs:
image:
description: ID of the image used by the Elastic Cloud Server (ECS)
type: HuaweiCloud.ECS.Image.Id
instance:
default: 1
description: number of ECSs to be created
subnet:
description: ID of the subnet to which the ECS belongs
..vm_deploy: #Determines whether to deploy the VM.
default: true
type: boolean
vpc:
description: ID of the Virtual Private Cloud (VPC) to which the ECS belongs
node_templates:
vm:
condition: condition_vm_deploy # The VM will be deployed only when the conditions are met.
type: HuaweiCloud.ECS.CloudServer
properties:
availabilityZone: cn-south-1a
imageId:
get_input: image
flavor: s3.small.1
instances:
get_input: instance
name: my-ecs
nics:
- subnetId:
get_input: subnet
rootVolume:
size: 40
volumeType: SATA
vpcId:
get_input: vpc
myecs:
type: HuaweiCloud.ECS.CloudServer
properties:
name: my-ecs
instances:
get_input: instance
imageId:
get_input: image
flavor: s3.small.1
vpcId:
get_input: vpc
availabilityZone: cn-south-1a
nics:
- subnetId:
get_input: subnet
rootVolume:
volumeType: SSD
size: 40 Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.