When you create a stack to manage resources in the Resource Orchestration Service (ROS) console, you may need to open multiple consoles to query resource parameters. In the Parameters section of a template, you can specify AssociationProperty to query the resources in a specified region and specify AssociationPropertyMetadata to add filter conditions for the parameters. This way, the ROS console can display optional values for a specified parameter and you can select a value when you create a stack in the ROS console.

Parameters

You can specify one of the following types of values for AssociationPropertyMetadata in ROS templates based on your business requirements:

  • A literal value. For example, if you set AssociationPropertyMetadata to "RegionId": "cn-hangzhou", ROS resolves this value as the literal value cn-hangzhou.
  • A variable. Specify a variable in the ${ParemeterKey} format. For example, if you set AssociationPropertyMetadata to "VpcId": "${VpcId}", ROS resolves this value as a variable that varies based on the value of the VpcId parameter in the template.
    Note
    • If you want to specify a variable in the ${ParemeterKey} format as a literal value, you can add an exclamation point (!) to ${ParemeterKey} to use the ${!ParemeterKey} format. For example, if you set a value to ${!Literal}, ROS resolves this value as ${Literal}.
    • If you want to specify a variable for a parameter in a Terraform template, add $ to ${ParemeterKey} to use the $${ParemeterKey} format. For example, if you set AssociationPropertyMetadata to "VpcId": "$${VpcId}", ROS resolves this value as a variable that varies based on the value of the VpcId parameter in the Terraform template.

The following table describes the relationship between the value of AssociationProperty and the parameters in AssociationPropertyMetadata that are supported in ROS.

Value of AssociationProperty Description Parameter in AssociationPropertyMetadata
Password The password. None.
TextArea The rich text. None.
Json The object. None.
CommaDelimitedList The array. Separate elements in the array with commas (,). None.
Code The code. None.
FileContent The content that is read from a local file. AcceptFileSuffixes: the format of the file that you can upload.
Cron The CRON expression. None.
ChargeType The billing method. None.
Auto ROS automatically generates parameters, such as AssociationProperty and AssociationPropertyMetadata, based on the original data structure of Terraform.
Note This value takes effect only for the JSON parameters in Terraform templates.
Overwrite: (Optional) appends values to or overwrites the declarations of nested parameters in the inner level.

The value of Overwrite is of the dictionary data type and consists of key-value pairs.

  • Key

    The path of nested parameters in the inner level. You must specify a path based on the following rules:

    • To specify an element in a list or set, add an asterisk (*).
    • To specify an element in an object, add the name of the element.
    • Separate multiple elements in a path with periods (.).
    • Asterisks (*) at the start of a path and in the middle of a path can be omitted. One or more asterisks (*) at the end of a path must be retained.

    Example:

    // The path of name is name. 
    // The path of address is address. 
    variable "user_information" {
      type = object({
        name    = string
        address = string
      })
    }
    
    // The path of an element in region_ids is *. 
    variable "region_ids" {
      type    = list(string)
    }
    
    // The path of internal is *.internal, which can be abbreviated as internal. 
    // The path of external is *.external, which can be abbreviated as external. 
    // The path of protocol is *.protocol, which can be abbreviated as protocol. 
    variable "docker_ports" {
      type = list(object({
        internal = number
        external = number
        protocol = string
      }))
    }
    
    // The path of b is *.b, which can be abbreviated as b. 
    // The path of an element in b is *.b.*, which can be abbreviated as b.*.
    // The path of c is *.c, which can be abbreviated as c. 
    // The path of d is *.c.*.d, which can be abbreviated as c.d. 
    // The path of an element in d is *.c.*.d.*, which can be abbreviated as c.d.*. 
    // The path of e is *.e, which can be abbreviated as e. 
    // The path of an element in e is *.e.*, which can be abbreviated as e.*. 
    // The path of an element in e is *.e.*.*, which can be abbreviated as e.*.*. You must retain the two asterisks (*) at the end of the path. 
    // The path of f is *.f, which can be abbreviated as f. 
    // The path of g is *.f.*.*.g, which can be abbreviated as f.g. 
    // The path of an element in g is *.f.*.*.g.*, which can be abbreviated as f.g.*. 
    variable "complex_type_demo" {
      type = list(object({
        b = list(string)
        c = list(object({
          d = list(string)
        }))
        e = list(list(string))
        f = list(list(object({
          g = list(string)
        })))
      }))
    }
  • Value

    The value that you want to append to the declaration of a parameter. For more information, see Overview.

List[Parameter] The list of parameters. You can click Add to add a list in the ROS console.

This value takes effect only for JSON parameters.

Parameter: the declarations of parameters.

For more information, see Overview.

Example:

  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionIds": {
          "Label": {
            "en": "ECS Region Ids",
             
          },
          "MaxLength": 100,
          "MinLength": 1,
          "Type": "Json",
          "AssociationProperty": "List[Parameter]",
          "AssociationPropertyMetadata": {
            "Parameter": {
              "Type": "String",
              "AssociationProperty": "ALIYUN::ECS::RegionId",
              "MinLength": 1,
              "MaxLength": 64
            }
          }
        }
      }
    }
  • Description

    In this example, AssociationProperty is set to List[Parameter] and AssociationPropertyMetadata is set to Parameter. This way, you can add the list of Elastic Compute Service (ECS) region IDs in the ROS console.

Null After you click Select Instances in the ROS console, a dialog box that prompts you to configure relevant parameters appears.

This value takes effect only for JSON parameters.

  • Parameters: the declarations of parameter sets. The value of Parameters is of the dictionary data type and consists of key-value pairs.
    • Key: the name of a parameter.
    • Value: the value of a parameter. For more information, see Overview.

    Example:

    • Sample code

      {
        "ROSTemplateFormatVersion": "2015-09-01",
        "Parameters": {
          "RenameECS": {
            "Label": {
              "en": "Rename ECS",
               
            },
            "MaxLength": 100,
            "MinLength": 1,
            "Type": "Json",
            "AssociationPropertyMetadata": {
              "Parameters": {
                "InstanceId": {
                  "Type": "String",
                  "Label": {
                    "en": "ECS Instance Id",
                     
                  },
                  "AssociationProperty": "ALIYUN::ECS::Instance::InstanceId",
                  "MinLength": 1,
                  "MaxLength": 64
                },
                "Name": {
                  "Type": "String",
                  "Label": {
                    "en": "New Name",
                     
                  },
                  "MinLength": 1
                }
              }
            }
          }
        }
      }
    • Description

      In this example, AssociationProperty is not specified and AssociationPropertyMetadata is set to Parameters. This way, after you click Select Instances to select an ECS instance ID in the ROS console, a dialog box that prompts you to configure relevant parameters appears.

  • Metadata: The value of Metadata is of the dictionary data type. For more information, see Metadata.
Note You can use Metadata together with List[Parameter] to nest parameters. No limit is imposed on nesting levels.
List[Parameters] The list of parameter sets. The parameter sets are displayed in a table in the ROS console.

This value takes effect only for JSON parameters.

  • Parameters: (Required) the declarations of parameter sets. The value of Parameters is of the dictionary data type and consists of key-value pairs.
    • Key: the name of a parameter.
    • Value: the value of a parameter. For more information, see Overview.
      Note Parameters of the basic data type can be easily parsed in a table. We recommend that you do not nest parameters because the parameters are displayed in a table.

    Example:

    • Sample code

      {
        "ROSTemplateFormatVersion": "2015-09-01",
        "Parameters": {
          "RenameECS": {
            "Label": {
              "en": "Rename ECS",
               
            },
            "MaxLength": 100,
            "MinLength": 1,
            "Type": "Json",
            "AssociationProperty": "List[Parameters]",
            "AssociationPropertyMetadata": {
              "Parameters": {
                "InstanceId": {
                  "Type": "String",
                  "Label": {
                    "en": "ECS Instance Id",
                     
                  },
                  "AssociationProperty": "ALIYUN::ECS::Instance::InstanceId",
                  "MinLength": 1,
                  "MaxLength": 64
                },
                "Name": {
                  "Type": "String",
                  "Label": {
                    "en": "New Name",
                     
                  },
                  "MinLength": 1
                }
              }
            }
          }
        }
      }
    • Description

      In this example, AssociationProperty is set to List[Parameters] and AssociationPropertyMetadata is set to Parameters. This way, ECS instance IDs are displayed in a table in the ROS console.

  • ListMetadata: controls whether to show the components of a table. The value of ListMetadata is of the dictionary data type.
    • ShowHeader: controls whether to show the header of the table. The value of ShowHeader is of the enumerated data type. Default value: true.
    • ShowHeader: controls whether to show the Removal icon of the table. The value of ShowHeader is of the enumerated data type. Default value: true.
    • ShowAddition: controls whether to show the Add icon of the table. The value of ShowHeader is of the enumerated data type. Default value: true.
    • Order: the order in which parameters names are displayed as column names in the table from left to right. The value of Order is of the string data type. By default, all parameter names are displayed in alphabetical order.
DateTime The date.
  • GMTZone: the Greenwich Mean Time (GMT) time zone.
  • TimeZone: the description of the time zone.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "DateTime": {
          "Type": "String",
          "AssociationProperty": "DateTime"
        }
      }
    }
  • Description

    In the example for DateTime, AssociationProperty is set to DateTime. This way, you can specify the date.

GMTZone The GMT time zone. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "GMTZone": {
          "Type": "String",
          "AssociationProperty": "GMTZone"
        }
      }
    }
  • Description

    In the example for GMTZone, AssociationProperty is set to GMTZone. This way, you can specify the GMT time zone.

OOSServiceRole The RAM role of Operation Orchestration Service (OOS). RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "OosServiceRole": {
          "Type": "String",
          "AssociationProperty": "OOSServiceRole",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for OosServiceRole, AssociationProperty is set to OOSServiceRole. This way, you can specify the RAM role of OOS.

RateControl The rate control for the execution of OOS. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RateControl": {
          "Type": "String",
          "AssociationProperty": "RateControl"
        }
      }
    }
  • Description

    In the example for RateControl, AssociationProperty is set to RateControl. This way, you can configure the rate control for the OOS execution.

Tags The tags.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ResourceType: the resource type that is used to group resources. Default value: ALIYUN::ECS::INSTANCE.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "Tags": {
          "Type": "String",
          "AssociationProperty": "Tags",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ResourceType": "ALIYUN::ECS::INSTANCE"
          }
        }
      }
    }
  • Description

    In the example for Tags, AssociationProperty is set to Tags, and RegionId and ResourceType are specified in AssociationPropertyMetadata. This way, you can query the custom tags of the ECS instance.

Targets The ECS instances that match a filter condition. You can select ECS instances based on a filter condition, such as an instance ID, a tag, or a resource group. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "Targets": {
          "Type": "String",
          "AssociationProperty": "Targets",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for Targets, AssociationProperty is set to Targets, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the ECS instances that match the filter condition.

TimeTriggerWeekly The time picker that allows you to specify the interval by weekday. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "TimeTriggerWeekly": {
          "Type": "String",
          "AssociationProperty": "TimeTriggerWeekly"
        }
      }
    }
  • Description

    In the example for TimeTriggerWeekly, AssociationProperty is set to TimeTriggerWeekly. This way, you can specify the interval by weekday.

TimeZone The time zone. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "TimeZone": {
          "Type": "String",
          "AssociationProperty": "TimeZone"
        }
      }
    }
  • Description

    In the example for TimeZone, AssociationProperty is set to TimeZone. This way, you can specify the time zone.

ALIYUN::ECS::RegionId The ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        }
      }
    }
  • Description

    In the example for RegionId, AssociationProperty is set to ALIYUN::ECS::RegionId. This way, you can query the list of available regions.

ALIYUN::ECS::ZoneId The ID of the zone.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ShowRandom: the random option that is assigned by the system.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ZoneId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for ZoneId, AssociationProperty is set to ALIYUN::ECS::ZoneId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the list of zones in the specified region.

ALIYUN::ECS::Instance::InstanceId The ID of the ECS instance. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "InstanceId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Instance::InstanceId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for InstanceId, AssociationProperty is set to ALIYUN::ECS::Instance::InstanceId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the list of existing ECS instances in the specified region.

ALIYUN::ECS::Instance::Password The component of the password of the ECS instance.
Note The password must be 8 to 30 characters in length. The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "password": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Instance::Password"
        }
      }
    }
  • Description

    In the example for password, AssociationProperty is set to ALIYUN::ECS::Instance::Password. This way, you can impose limits on the password of the ECS instance by using the component.

    Limits: The password must be 8 to 30 characters in length. The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.
ALIYUN::RDS::Instance::InstanceId The ID of the ApsaraDB RDS instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "RdsId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RDS::Instance::InstanceId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        }
      }
    }
  • Description

    In the example for RdsId, AssociationProperty is set to ALIYUN::RDS::Instance::InstanceId, and RegionId and ZoneId are specified in AssociationPropertyMetadata. This way, you can query the list of existing ApsaraDB RDS instances that belong to the specified zone in the specified region.

ALIYUN::RDS::Engine::EngineId The type of the ApsaraDB RDS database. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "Engine": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RDS::Engine::EngineId"
        }
      }
    }
  • Description

    In the example for Engine, AssociationProperty is set to ALIYUN::RDS::Engine::EngineId. This way, you can query the type of the ApsaraDB RDS database.

ALIYUN::RDS::Engine::EngineVersion The version of the ApsaraDB RDS database of a specific type. Engine: the type of the database.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "Engine": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RDS::Engine::EngineId"
        },
        "EngineVersion": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RDS::Engine::EngineVersion",
          "AssociationPropertyMetadata": {
            "Engine": "${Engine}"
          }
        }
      }
    }
  • Description

    In the example for EngineVersion, AssociationProperty is set to ALIYUN::RDS::Engine::EngineVersion, and Engine is specified in AssociationPropertyMetadata. This way, you can query the version of the ApsaraDB RDS database of a specific type.

ALIYUN::ECS::Disk::DataDiskCategory The category of the data disk.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • InstanceType: the specifications of the instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ZoneId"
        },
        "InstanceType": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        },
        "DataDiskCategory": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Disk::DataDiskCategory",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}",
            "InstanceType": "${InstanceType}"
          }
        }
      }
    }
  • Description

    In the example for DataDiskCategory, AssociationProperty is set to ALIYUN::ECS::Disk::DataDiskCategory, and RegionId, ZoneId, and InstanceType are specified in AssociationPropertyMetadata. This way, you can query the category of the ECS data disk.

ALIYUN::ECS::Disk::SystemDiskCategory The category of the system disk.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • InstanceType: the specifications of the instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ZoneId"
        },
        "InstanceType": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        },
        "SystemDiskCategory": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}",
            "InstanceType": "${InstanceType}"
          }
        }
      }
    }
  • Description

    In the example for SystemDiskCategory, AssociationProperty is set to ALIYUN::ECS::Disk::SystemDiskCategory, and RegionId, ZoneId, and InstanceType are specified in AssociationPropertyMetadata. This way, you can query the category of the ECS system disk.

ALIYUN::ECS::Disk::DiskId The ID of the disk.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • InstanceId: the ID of the instance.
  • DiskType: the type of the disk.
  • Category: the category of the instance.
  • SnapshotId: the ID of the snapshot.
  • DiskChargeType: the billing method of the disk.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "DiskId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Disk::DiskId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for DiskId, AssociationProperty is set to ALIYUN::ECS::Disk::DiskId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the ID of the ECS cloud disk in the specified zone.

ALIYUN::ECS::VPC::VPCId The ID of a virtual private cloud (VPC). RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "VpcId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for VpcId, AssociationProperty is set to ALIYUN::ECS::VPC::VPCId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the ID of the VPC in the specified region.

ALIYUN::ECS::VSwitch::VSwitchId The ID of the vSwitch.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • VpcId: the ID of the VPC.
  • InstanceType: the specifications of the instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "VSwitchId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        }
      }
    }
  • Description

    In the example for VSwitchId, AssociationProperty is set to ALIYUN::ECS::VSwitch::VSwitchId, and RegionId and ZoneId are specified in AssociationPropertyMetadata. This way, you can query the ID of the vSwitch in the specified region.

ALIYUN::ECS::Instance::InstanceType The specifications of the ECS instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • InstanceChargeType: the billing method of the instance.
  • SpotStrategy: the bidding policy for the pay-as-you-go instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "InstanceType": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        }
      }
    }
  • Description

    In the example for InstanceType, AssociationProperty is set to ALIYUN::ECS::Instance::InstanceType, and RegionId and ZoneId are specified in AssociationPropertyMetadata. This way, you can query the specifications of the ECS instance in the specified region.

ALIYUN::ECS::SecurityGroup::SecurityGroupId The ID of the security group.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • VpcId: the ID of the VPC.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "VpcId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "SecurityGroupId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "VpcId": "${VpcId}"
          }
        }
      }
    }
  • Description

    In the example for SecurityGroupId, AssociationProperty is set to ALIYUN::ECS::SecurityGroup::SecurityGroupId, and RegionId and VpcId are specified in AssociationPropertyMetadata. This way, you can query the ID of the security group in the specified VPC in the specified region.

ALIYUN::ECS::KeyPair::KeyPairName The name of the key pair. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "KeyPairName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::KeyPair::KeyPairName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for KeyPairName, AssociationProperty is set to ALIYUN::ECS::KeyPair::KeyPairName, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the ECS key pair in the specified region.

ALIYUN::ECS::Snapshot::AutoSnapshotPolicyId The ID of the automatic snapshot policy. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "AutoSnapshotPolicyId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Snapshot::AutoSnapshotPolicyId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for AutoSnapshotPolicyId, AssociationProperty is set to ALIYUN::ECS::Snapshot::AutoSnapshotPolicyId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the automatic snapshot policy of ECS in the specified region.

ALIYUN::ECS::Command::CommandId The ID of the Cloud Assistant command or the Alibaba Cloud command.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ImageId: the ID of the image.

    You can use OSType of an image to limit the command type that you want to display in the ROS console.

Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "CommandId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Command::CommandId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for CommandId, AssociationProperty is set to ALIYUN::ECS::Command::CommandId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the Cloud Assistant command or the Alibaba Cloud public command of ECS in the specified region.

ALIYUN::ECS::Image::ImageId The ID of an image.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • SupportedImageOwnerAlias: the type of supported images.
  • InstanceType: the specifications of the instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ImageId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Image::ImageId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "SupportedImageOwnerAlias": ["system", "self", "others"]
          }
        }
      }
    }
  • Description

    In the example for ImageId, AssociationProperty is set to ALIYUN::ECS::Image::ImageId, and RegionId and SupportedImageOwnerAlias are specified in AssociationPropertyMetadata. This way, you can query the ID of the ECS image in the specified zone.

ALIYUN::ECS::ResourceGroup::ResourceGroupId The ID of the resource group. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ResourceGroupId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ResourceGroup::ResourceGroupId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for ResourceGroupId, AssociationProperty is set to ALIYUN::ECS::ResourceGroup::ResourceGroupId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the resource group in the specified zone.

ALIYUN::ECS::LaunchTemplate::LaunchTemplateId The ID of the launch template of an instance. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "LaunchTemplateId":{
          "AssociationProperty":"ALIYUN::ECS::LaunchTemplate::LaunchTemplateId",
          "Type":"String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for LaunchTemplateId, AssociationProperty is set to ALIYUN::ECS::LaunchTemplate::LaunchTemplateId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the ECS launch template in the specified zone.

ALIYUN::ECS::LaunchTemplate::LaunchTemplateVersion The version of the launch template of an instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • LaunchTemplateId: the ID of the launch template.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "LaunchTemplateId": {
          "AssociationProperty": "ALIYUN::ECS::LaunchTemplate::LaunchTemplateId",
          "Type": "String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "LaunchTemplateVersion": {
          "AssociationProperty": "ALIYUN::ECS::LaunchTemplate::LaunchTemplateVersion",
          "Type": "String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "LaunchTemplateId": "${LaunchTemplateId}"
          }
        }
      }
    }
  • Description

    In the example for LaunchTemplateVersion, AssociationProperty is set to ALIYUN::ECS::LaunchTemplate::LaunchTemplateVersion, and RegionId and LaunchTemplateId are specified in AssociationPropertyMetadata. This way, you can query the version of the specified ECS launch template.

ALIYUN::RDS::Instance::InstanceType The specifications of the ApsaraDB RDS instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • InstanceChargeType: the billing method of the instance.
  • Category: the edition of the instance.
  • Engine: the type of the database.
  • EngineVersion: the version of the database.
  • DBInstanceClass: the instance type.
  • OrderType: the type of the order.
  • DBInstanceStorageType: the storage type of the instance.
  • DispenseMode: the allocation mode.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "InstanceType": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RDS::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}",
            "Engine": "MySQL"
          }
        }
      }
    }
  • Description

    In the example for InstanceType, AssociationProperty is set to ALIYUN::RDS::Instance::InstanceType, and RegionId, Engine, and ZoneId are specified in AssociationPropertyMetadata. This way, you can query the specifications of the ApsaraDB RDS instance of the specified database type in the specified zone.

ALIYUN::SLB::Instance::InstanceType The specifications of the Server Load Balancer (SLB) instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • InstanceChargeType: the metering method of the instance.
  • SpotStrategy: the bidding policy for the pay-as-you-go instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "InstanceType": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::SLB::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        }
      }
    }
  • Description

    In the example for InstanceType, AssociationProperty is set to ALIYUN::SLB::Instance::InstanceType, and RegionId and ZoneId are specified in AssociationPropertyMetadata. This way, you can query the specifications of the SLB instance in the specified zone.

ALIYUN::SLB::Certificate The certificate of the SLB instance. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "Certificate": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::SLB::Certificate",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        }
      }
    }
  • Description

    In the example for Certificate, AssociationProperty is set to ALIYUN::SLB::Certificate, and RegionId and ZoneId are specified in AssociationPropertyMetadata. This way, you can query the certificate of the SLB instance in the specified zone.

ALIYUN::SLB::Instance::InstanceId The ID of the SLB instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • VpcId: the ID of the VPC.
  • VSwitchId: the ID of the vSwitch.
  • NetworkType: the network type of the NAT gateway.
  • InstanceChargeType: the metering method of the instance.
  • AddressType: the network type.
  • MasterZoneId: the primary zone ID of the SLB instance.
  • SlaveZoneId: the secondary zone ID of the SLB instance.
  • PayType: the billing method of the SLB instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "SlbInstanceId":{
          "AssociationProperty":"ALIYUN::SLB::Instance::InstanceId",
          "Type":"String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for SlbInstanceId, AssociationProperty is set to ALIYUN::SLB::Instance::InstanceId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the ID of the SLB instance in the specified region.

ALIYUN::SLB::ACL::ACLId The access control list (ACL) ID of SLB.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • AddressIPVersion: the type of the IP address.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "SlbACLId":{
          "AssociationProperty":"ALIYUN::SLB::ACL::ACLId",
          "Type":"String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "AddressIPVersion":"${AddressIPVersion}"
          }
        }
      }
    }
  • Description

    In the example for SlbACLId, AssociationProperty is set to ALIYUN::SLB::ACL::ACLId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the SLB ACL in the specified region.

ALIYUN::OOS::Template::TemplateName The name of the OOS template. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "TemplateName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Template::TemplateName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for TemplateName, AssociationProperty is set to ALIYUN::OOS::Template::TemplateName, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the information about the OOS template in the specified region.

ALIYUN::OOS::Template::TemplateVersion The version of the OOS template.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • TemplateName: the name of the template.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "TemplateName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Template::TemplateName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "TemplateVersion": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Template::TemplateVersion",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "TemplateName": "${TemplateName}"
          }
        }
      }
    }
  • Description

    In the example for TemplateVersion, AssociationProperty is set to ALIYUN::OOS::Template::TemplateVersion, and RegionId and TemplateName are specified in AssociationPropertyMetadata. This way, you can query the version of the OOS template in the specified region.

ALIYUN::OOS::Parameter::Value The common parameter of OOS. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ParameterValue": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Parameter::Value",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for ParameterValue, AssociationProperty is set to ALIYUN::OOS::Parameter::Value, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the OOS common parameter in the specified region.

ALIYUN::OOS::SecretParameter::Value The encryption parameter of OOS. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "SecretParameter": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::SecretParameter::Value",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for SecretParameter, AssociationProperty is set to ALIYUN::OOS::SecretParameter::Value, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the OOS encryption parameter in the specified region.

ALIYUN::OOS::Package::PackageName The name of the OOS software package. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "PackageName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Package::PackageName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for PackageName, AssociationProperty is set to ALIYUN::OOS::Package::PackageName, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the information about the OOS software package in the specified region.

ALIYUN::OOS::Package::PackageVersion The version of the OOS software package.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • TemplateName: the name of the template.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "PackageName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Package::PackageName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "PackageVersion": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Package::PackageVersion",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "TemplateName": "${PackageName}"
          }
        }
      }
    }
  • Description

    In the example for PackageVersion, AssociationProperty is set to ALIYUN::OOS::Package::PackageVersion, and RegionId and TemplateName are specified in AssociationPropertyMetadata. This way, you can query the version of the OOS software package in the specified region.

ALIYUN::OOS::Command::CommandContent The script of the execution in OOS. CommandType: the type of the command.
Valid values:
  • RunBatScript
  • RunPowerShellScript
  • RunShellScript
  • RunPythonScript
  • RunPerlScript
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "CommandContent": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Command::CommandContent",
          "AssociationPropertyMetadata": {
            "CommandType": "RunPythonScript"
          }
        }
      }
    }
  • Description

    In the example for CommandContent, AssociationProperty is set to ALIYUN::OOS::Command::CommandContent, and CommandType is specified in AssociationPropertyMetadata. This way, you can run the script of the OOS execution.

ALIYUN::OOS::Component::CleanUpInfo The component that you want to use for the disk cleanup rule. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "CleanUpInfo": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Component::CleanUpInfo"
        }
      }
    }
  • Description

    In the example for CleanUpInfo, AssociationProperty is set to ALIYUN::OOS::Component::CleanUpInfo. This way, you can configure the cleanup rule for the disk in OOS.

ALIYUN::OOS::File::FileUrl The URL to which you want to upload the file.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • FileType: the export format of the file.

    Valid values: local, https, gitub, and oss.

Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "FileUrl": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::File::FileUrl",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for FileUrl, AssociationProperty is set to ALIYUN::OOS::File::FileUrl. This way, you can upload the file to Object Storage Service (OSS).

ALIYUN::OSS::Bucket::BucketName The name of the OSS bucket. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "BucketName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OSS::Bucket::BucketName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for BucketName, AssociationProperty is set to ALIYUN::OSS::Bucket::BucketName, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the OSS bucket in the specified region.

ALIYUN::OSS::Object::ObjectName The name of the OSS object.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • BucketName: the name of the bucket.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "BucketName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OSS::Bucket::BucketName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "ObjectName": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OSS::Object::ObjectName",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "BucketName": "${BucketName}"
          }
        }
      }
    }
  • Description

    In the example for ObjectName, AssociationProperty is set to ALIYUN::OSS::Object::ObjectName, and RegionId and BucketName are specified in AssociationPropertyMetadata. This way, you can query the OSS object in the specified region.

ALIYUN::OOS::Component::TimerTrigger The component that you want to use for the OOS time trigger. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "TimerTrigger": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::OOS::Component::TimerTrigger",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for TimerTrigger, AssociationProperty is set to ALIYUN::OOS::Component::TimerTrigger, and RegionId is specified in AssociationPropertyMetadata. This way, you can configure the component of the OOS time trigger.

ALIYUN::VPC::VirtualBorderRouter::RouteTableId The ID of the virtual border router (VBR). RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "RouteTableId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::VPC::VirtualBorderRouter::RouteTableId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for RouteTableId, AssociationProperty is set to ALIYUN::VPC::VirtualBorderRouter::RouteTableId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the ID of the VBR in the specified region.

ALIYUN::VPC::NatGateway::NatGatewayId The ID of the NAT gateway.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • VpcId: the ID of the VPC.
  • InstanceChargeType: the billing method of the instance.
  • NatType: the type of the NAT gateway.
  • NetworkType: the network type of the NAT gateway.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "VpcId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "NatGateway": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::VPC::NatGateway::NatGatewayId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}",
            "VpcId": "${VpcId}",
            "InstanceChargeType": "PostPaid",
            "NatType": "Enhanced",
            "NetworkType": "intranet"
          }
        }
      }
    }
  • Description

    In the example for NatGateway, AssociationProperty is set to ALIYUN::VPC::NatGateway::NatGatewayId, and RegionId, ZoneId, VpcId, InstanceChargeType, NatType, and NetworkType are specified in AssociationPropertyMetadata. This way, you can query the ID of the NAT gateway that matches the filter conditions in the specified region.

ALIYUN::VPC::VSwitch::CidrBlock The CIDR block that you want to use to create a vSwitch.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • VpcId: the ID of the VPC.
  • VpcCidrBlock: the CIDR block of the VPC.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "RegionId"
        },
        "VpcId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        },
        "CIDR": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::VPC::VSwitch::CidrBlock",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "VpcId": "${VpcId}"
          }
        }
      }
    }
  • Description

    In the example for CIDR, AssociationProperty is set to ALIYUN::VPC::VSwitch::CidrBlock, and RegionId and VpcId are specified in AssociationPropertyMetadata. This way, you can specify the CIDR block for the vSwitch.

ALIYUN::VPC::VPC::CidrBlock The CIDR block that you want to use to create a VPC. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "CIDR": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::VPC::VPC::CidrBlock"
        }
      }
    }
  • Description

    In the example for CIDR, AssociationProperty is set to ALIYUN::VPC::CidrBlock. This way, you can specify the CIDR block of the VPC.

ALIYUN::ESS::ScalingConfiguration::ScalingConfigurationId The ID of the scaling configuration of Auto Scaling. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ScalingConfigurationId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ESS::ScalingConfiguration::ScalingConfigurationId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for ScalingConfigurationId, AssociationProperty is set to ALIYUN::ESS::ScalingConfiguration::ScalingConfigurationId. This way, you can query the ID of the scaling configuration in Auto Scaling.

ALIYUN::ESS::AutoScalingGroup::AutoScalingGroupId The ID of the scaling group of Auto Scaling. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "AutoScalingGroupId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ESS::AutoScalingGroup::AutoScalingGroupId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for AutoScalingGroupId, AssociationProperty is set to ALIYUN::ESS::AutoScalingGroup::AutoScalingGroupId. This way, you can query the ID of the scaling group in Auto Scaling.

ALIYUN::RAM::User The name of the RAM user. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "User": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RAM::User",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for User, AssociationProperty is set to ALIYUN::RAM::User, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the RAM user in the specified region.

ALIYUN::RAM::Role The name of the RAM role. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "Role": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::RAM::Role",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for Role, AssociationProperty is set to ALIYUN::RAM::Role, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the RAM role in the specified region.

ALIYUN::CAS::Certificate::CertificateId The certificate ID of the SLB instance. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "Certificate": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::CAS::Certificate::CertificateId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for Certificate, AssociationProperty is set to ALIYUN::CAS::Certificate::CertificateId, and RegionId is specified in AssociationPropertyMetadata. This way, you can query the list of certificate IDs of the SLB instance in the specified region.

ALIYUN::Elasticsearch::Instance::InstanceType The specifications of the Elasticsearch instance. Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "Elasticsearch": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::Elasticsearch::Instance::InstanceType"
        }
      }
    }
  • Description

    In the example for Elasticsearch, AssociationProperty is set to ALIYUN::Elasticsearch::Instance::InstanceType. This way, you can query the list of specifications of the Elasticsearch instance.

ALIYUN::InfluxDB::Instance::InstanceType The specifications of the TSDB for InfluxDB® instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "InfluxDB": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::InfluxDB::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        }
      }
    }
  • Description

    In the example for InfluxDB, AssociationProperty is set to ALIYUN::InfluxDB::Instance::InstanceType. This way, you can query the list of specifications of the TSDB for InfluxDB instance.

ALIYUN::Redis::Instance::InstanceType The specifications of the ApsaraDB for Redis instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • ZoneId: the ID of the zone.
  • InstanceChargeType: the billing method of the instance.
  • Engine: the type of the database.
  • ProductType: the edition or series of the instance.
  • OrderType: the type of the order.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "Redis": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::Redis::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}",
            "ZoneId": "${ZoneId}"
          }
        }
      }
    }
  • Description

    In the example for Redis, AssociationProperty is set to ALIYUN::Redis::Instance::InstanceType. This way, you can query the list of specifications of the ApsaraDB for Redis instance.

ALIYUN::EHPC::FileSystem::FileSystemId The ID of the file system. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "FileSystemId":{
          "AssociationProperty":"ALIYUN::EHPC::FileSystem::FileSystemId",
          "Type":"String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for FileSystemId, AssociationProperty is set to ALIYUN::EHPC::FileSystem::FileSystemId. This way, you can query the list of file system IDs in Elastic High Performance Computing (E-HPC).

ALIYUN::EHPC::FileSystem::MountTargetDomain The mount target.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • VolumeId: the ID of the Apsara File Storage NAS (NAS) instance.
  • VpcId: the ID of the VPC.
  • VSwitchId: the ID of the vSwitch.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "MountTargetDomain":{
          "AssociationProperty":"ALIYUN::EHPC::FileSystem::MountTargetDomain",
          "Type":"String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for MountTargetDomain, AssociationProperty is set to ALIYUN::EHPC::FileSystem::MountTargetDomain. This way, you can query the list of mount targets of the E-HPC file system.

ALIYUN::EHPC::Cluster::ClusterId The ID of the cluster. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "ClusterId":{
          "AssociationProperty":"ALIYUN::EHPC::Cluster::ClusterId",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          },
          "Type":"String"
        }
      }
    }
  • Description

    In the example for ClusterId, AssociationProperty is set to ALIYUN::EHPC::Cluster::ClusterId. This way, you can query the list of E-HPC cluster IDs.

ALIYUN::ALB::Instance::InstanceId The ID of the Application Load Balancer (ALB) instance.
  • RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
  • VpcId: the ID of the VPC.
  • AddressType: the network type.
  • ZoneId: the ID of the zone.
  • PayType: the billing method of the SLB instance.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::RegionId"
        },
        "AlbInstanceId":{
          "AssociationProperty":"ALIYUN::ALB::Instance::InstanceId",
          "Type":"String",
          "AssociationPropertyMetadata": {
            "RegionId": "${RegionId}"
          }
        }
      }
    }
  • Description

    In the example for AlbInstanceId, AssociationProperty is set to ALIYUN::ALB::Instance::InstanceId. This way, you can query the list of ALB instance IDs.

ALIYUN::ALB::ACL::ACLId The ACL ID of ALB. RegionId: the ID of the region. By default, the value of RegionId is the ID of the region in which you deploy the stack.
Example:
  • Sample code

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "RegionId": {
          "Type": "String",
          "AssociationProperty": "RegionId"
        },
        "AlbACLId":{
          "AssociationProperty":"ALIYUN::ALB::ACL::ACLId",
          "AssociationPropertyMetadata": {
             "RegionId": "${RegionId}"
          },
          "Type":"String"
        }
      }
    }
  • Description

    In the example for AlbACLId, AssociationProperty is set to ALIYUN::ALB::ACL::ACLId. This way, you can query the list of ACL IDs of ALB.

ALIYUN::ResourceManager::Folder The resource directory. Example:
  • Sample code
    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "ResourceFolder": {
          "AssociationProperty": "ALIYUN::ResourceManager::Folder",
          "Type": "Json",
          "Description": {
             
            "en": "ResourceFolder"
          }
        }
      }
    }
  • Description

    In the example for ResourceFolder, AssociationProperty is set to ALIYUN::ResourceManager::Folder. This way, you can query the resource directory within your Alibaba Cloud account.

ALIYUN::ResourceManager::Account The resource account. Example:
  • Sample code
    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "ResourceAccount": {
          "AssociationProperty": "ALIYUN::ResourceManager::Account",
          "Type": "Json",
          "Description": {
             
            "en": "ResourceAccount"
          }
        }
      }
    }
  • Description

    In this example for ResourceAccount, AssociationProperty is set to ALIYUN::ResourceManager::Account. This way, you can query the resource account within your Alibaba Cloud account.

Example 1: AssociationProperty

In this example, AssociationProperty is set to ALIYUN::ECS::Instance::ImageId to query the IDs of all images in the specified region.

"Parameters": {
  "UserName": {
    "Label": "Username",
    "Description": "Enter the username",
    "Default": "anonymous",
    "Type": "String",
    "MinLength": "6",
    "MaxLength": "12",
    "AllowedValues": [
      "anonymous",
      "user-one",
      "user-two"
    ]
  },
  "PassWord": {
    "Label": "Password",
    "NoEcho": "True",
    "Description": "Enter the password",
    "Type": "String",
    "MinLength": "1",
    "MaxLength": "41",
    "AllowedPattern": "[a-zA-Z0-9]*"
  },
  "ImageId": {
    "Label": "Image",
    "Type": "String",
    "Description": "Select an image",
    "AssociationProperty": "ALIYUN::ECS::Instance::ImageId",
    "Default": "centos_7_7_x64_20G_alibase_2020****.vhd"
  }
}

Description:

  • UserName: the username. The value is of the string data type and must be 6 to 12 characters in length. Default value: anonymous. Valid values:
    • anonymous
    • user-one
    • user-two
  • PassWord: the password. The value is of the string data type. No default value is provided. The value must be 1 to 41 characters in length, and can contain letters and digits.

    NoEcho is set to true. The value specifies that ROS returns a ciphertext password after you query the stack.

  • ImageId: the ID of the image. The value is of the string data type.

    AssociationProperty is set to ALIYUN::ECS::Instance::ImageId. This way, the ROS console checks whether the ID of the specified image is available when you create the stack. The ROS console also displays IDs of other images that are available in the same region as the specified image in a drop-down list.

Example 2: AssociationPropertyMetadata

In this example, AssociationProperty and AssociationPropertyMetadata are specified to query the vSwitch of the specified VPC and zone. For AssociationPropertyMetadata, RegionId is set to the literal value cn-hangzhou, VpcId is set to the dynamic value ${VpcId}, and ZoneId is set to the dynamic value ${EcsZone}. ${VpcId} varies based on the value of ALIYUN::ECS::VPC::VPCId, and ${EcsZone} varies based on the value of ALIYUN::ECS::Instance::ZoneId. This way, the vSwitch is associated with the specified VPC and zone.

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "VpcId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
    },
    "EcsZone": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::Instance::ZoneId"
    },
    "VSwitchId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
      "AssociationPropertyMetadata": {
           "RegionId": "cn-hangzhou",
           "VpcId": "${VpcId}",
           "ZoneId": "${EcsZone}"
      }
    }
  }
}

Example 3: Automatic conversion of Terraform

If you set AssociationProperty to Auto, ROS automatically generates parameters, such as AssociationProperty and AssociationPropertyMetadata, based on the original data structure of Terraform.

  • Complete sample code of the template

    variable "user_information" {
      type = object({
        name    = string
        address = string
      })
      description = <<EOT
      {
        "AssociationProperty": "Auto",
        "AssociationPropertyMetadata": {
          "Overwrite": {
            "name": {
              "Label": {
                 
                "en": "Name"
              }
            }
          }
        }
      }
      EOT
    }
    
    variable "region_ids" {
      type    = list(string)
      description = <<EOT
      {
        "AssociationProperty": "Auto",
        "AssociationPropertyMetadata": {
          "Overwrite": {
            "*": {
              "AssociationProperty": "ALIYUN::ECS::RegionId"
            }
          }
        }
      }
      EOT
    }
    
    variable "docker_ports" {
      type = list(object({
        internal = number
        external = number
        protocol = string
      }))
      description = <<EOT
      {
        "AssociationProperty": "Auto",
        "AssociationPropertyMetadata": {
          "Overwrite": {
            "protocol": {
              "AllowedValues": ["TCP", "UDP", "ICMP"]
            },
            "internal": {
              "Label": {
                 
                "en": "Internal Port"
              }
            }
          }
        }
      }
      EOT
    }
    
    variable "complex_type_demo" {
      type = list(object({
        b = list(string)
        c = list(object({
          d = list(string)
        }))
        e = list(list(string))
        f = list(list(object({
          g = list(string)
        })))
      }))
      description = <<EOT
      {
        "AssociationProperty": "Auto",
        "AssociationPropertyMetadata": {
            "Overwrite": {
                "b": {
                    "MaxLength": 3,
                    "AssociationPropertyMetadata": {
                        "Something": "123"
                    },
                    "Label": {
                        "zh-cn": "B",
                        "en": "B"
                    }
                },
                "b.*": {
                    "AssociationProperty": "ALIYUN::ECS::RegionId"
                },
                "c": {
                    "Label": {
                        "zh-cn": "C",
                        "en": "C"
                    }
                },
                "c.d": {
                    "Label": {
                        "zh-cn": "C/D",
                        "en": "C/D"
                    }
                },
                "c.d.*": {
                    "AssociationProperty": "ALIYUN::ECS::RegionId"
                },
                "e": {
                    "Label": {
                        "zh-cn": "E",
                        "en": "E"
                    }
                },
                "e.*": {
                    "MaxLength": 3
                },
                "e.*.*": {
                    "AssociationProperty": "ALIYUN::ECS::RegionId"
                },
                "f.g": {
                    "Label": {
                        "zh-cn": "F/G",
                        "en": "F/G"
                    }
                },
                "f.g.*": {
                    "AssociationProperty": "ALIYUN::ECS::RegionId"
                }
            }
        }
      }
      EOT
    }
  • Sample code of the template after user_information is converted

    {
      "AssociationPropertyMetadata":{
        "Parameters":{
          "address":{
            "Type":"String"
          },
          "name":{
            "Type":"String",
            "Label":{
              "en":"Name",
               
            }
          }
        }
      }
    }
  • Sample code of the template after region_ids is converted

    {
      "AssociationPropertyMetadata":{
        "Parameter":{
          "AssociationProperty":"ALIYUN::ECS::RegionId",
          "Type":"String"
        }
      },
      "AssociationProperty":"List[Parameter]"
    }
  • Sample code of the template after docker_ports is converted

    {
      "AssociationPropertyMetadata":{
        "Parameters":{
          "internal":{
            "Type":"Number",
            "Label":{
              "en":"Internal Port",
               
            }
          },
          "protocol":{
            "Type":"String",
            "AllowedValues":[
              "TCP",
              "UDP",
              "ICMP"
            ]
          },
          "external":{
            "Type":"Number"
          }
        }
      },
      "AssociationProperty":"List[Parameters]"
    }
  • Sample code of the template after complex_type_demo is converted

    {
      "AssociationPropertyMetadata":{
        "Parameter":{
          "AssociationPropertyMetadata":{
            "Parameters":{
              "b":{
                "AssociationPropertyMetadata":{
                  "Parameter":{
                    "AssociationProperty":"ALIYUN::ECS::RegionId",
                    "Type":"String"
                  },
                  "Something":"123"
                },
                "AssociationProperty":"List[Parameter]",
                "Type":"Json",
                "Label":{
                  "en":"B",
                  "zh-cn":"B"
                },
                "MaxLength":3
              },
              "c":{
                "AssociationPropertyMetadata":{
                  "Parameter":{
                    "AssociationPropertyMetadata":{
                      "Parameters":{
                        "d":{
                          "AssociationPropertyMetadata":{
                            "Parameter":{
                              "AssociationProperty":"ALIYUN::ECS::RegionId",
                              "Type":"String"
                            }
                          },
                          "AssociationProperty":"List[Parameter]",
                          "Type":"Json",
                          "Label":{
                            "en":"C/D",
                            "zh-cn":"C/D"
                          }
                        }
                      }
                    },
                    "Type":"Json"
                  }
                },
                "AssociationProperty":"List[Parameter]",
                "Type":"Json",
                "Label":{
                  "en":"C",
                  "zh-cn":"C"
                }
              },
              "e":{
                "AssociationPropertyMetadata":{
                  "Parameter":{
                    "AssociationPropertyMetadata":{
                      "Parameter":{
                        "AssociationProperty":"ALIYUN::ECS::RegionId",
                        "Type":"String"
                      }
                    },
                    "AssociationProperty":"List[Parameter]",
                    "Type":"Json",
                    "MaxLength":3
                  }
                },
                "AssociationProperty":"List[Parameter]",
                "Type":"Json",
                "Label":{
                  "en":"E",
                  "zh-cn":"E"
                }
              },
              "f":{
                "AssociationPropertyMetadata":{
                  "Parameter":{
                    "AssociationPropertyMetadata":{
                      "Parameter":{
                        "AssociationPropertyMetadata":{
                          "Parameters":{
                            "g":{
                              "AssociationPropertyMetadata":{
                                "Parameter":{
                                  "AssociationProperty":"ALIYUN::ECS::RegionId",
                                  "Type":"String"
                                }
                              },
                              "AssociationProperty":"List[Parameter]",
                              "Type":"Json",
                              "Label":{
                                "en":"F/G",
                                "zh-cn":"F/G"
                              }
                            }
                          }
                        },
                        "Type":"Json"
                      }
                    },
                    "AssociationProperty":"List[Parameter]",
                    "Type":"Json"
                  }
                },
                "AssociationProperty":"List[Parameter]",
                "Type":"Json"
              }
            }
          },
          "Type":"Json"
        }
      },
      "AssociationProperty":"List[Parameter]"
    }

More examples

You can use AssociationProperty and AssociationPropertyMetadata to perform the following operations: