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  | 
     
       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 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 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: cloud_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 ECS
    type: Cloud.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 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: Cloud.ECS.CloudServer
    properties:
      availabilityZone: ae-ad-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: Cloud.ECS.CloudServer
    properties:
      name: my-ecs
      instances:
        get_input: instance
      imageId:
        get_input: image
      flavor: s3.small.1
      vpcId:
        get_input: vpc
      availabilityZone: ae-ad-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.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot