Introduction to CADT templates
Purpose
Cloud Architect Design Tools (CADT) saves common application configurations as templates. You can use these templates to quickly create applications without building them from scratch. This saves time and improves operational efficiency.
Types
CADT provides the following three types of templates:
-
Official Solution Center: The CADT product team creates official templates for common application scenarios based on customer cloud adoption experience. These templates are available to all CADT users.

-
My Solutions: You can save your frequently used applications and configurations as templates for personal use. If other users need to use a template, you can share it with them using the template sharing feature.

-
Partner Templates: These are CADT deployment templates provided by Alibaba Cloud partners. These templates are available to all CADT users.

Introduction to template variables
Background
When you create an application from a template, its resource configuration data is copied. This means all applications created from the same template have identical configurations. However, production environments often require different configurations, such as different ECS instance types or disk sizes. If you had to create a new template for every minor change, it would defeat the purpose of using templates.
Solution
Template variables were introduced to make template configurations more flexible. In a template, you can define certain resource properties as variables. Before you create an application from the template, you assign values to these variables. This lets you create applications with different configurations.
Template variables can only be used when creating applications with the CADT API. CADT supports two types of template variables:
-
Local template variable: A variable that is bound to a specific property of a resource. For example, you can define the resource name of an ECS instance and the billing method of an RDS instance as variables.
-
Global template variable: A global variable is not bound to a specific resource property. Instead, it can assign a value to local variables for multiple nodes. For example, if you define a global variable `${sys}` with the value `ERP`, this value can be assigned to the local `${name}` variable for an ECS instance and the local `${name}` variable for an RDS instance. This lets you use the same value in the names of both instances.
For more information about how to configure template variables, see Template variable configuration.