La sección Parameters de una plantilla define los valores de entrada que los usuarios especifican al crear la pila. Esto hace que las plantillas sean flexibles y reutilizables.
Sintaxis
Cada parámetro tiene un nombre y un conjunto de propiedades. Los nombres de los parámetros solo pueden contener letras y dígitos, y deben ser únicos dentro de una plantilla. Use la propiedad Label para definir un alias.
A continuación se describen las propiedades compatibles.
|
Propiedad |
Obligatorio |
Descripción |
|
Type |
Sí |
El tipo de datos del parámetro. Valores válidos:
Nota
AllowedPattern no es compatible con los tipos |
|
Default |
No |
El valor predeterminado de un parámetro. Si no se especifica ningún valor al crear la pila, ROS utiliza este valor predeterminado. Si no se define uno, se reporta un error. Nota
Si el valor predeterminado se establece en |
|
AllowedValues |
No |
Los valores válidos de un parámetro. |
|
AllowedPattern |
No |
Una expresión regular para validar parámetros de tipo String. Aplicar esta propiedad a parámetros que no son de tipo String genera un error. Anteponga dos barras invertidas (\\) antes de cada uno de los siguientes caracteres especiales:
Nota
Un guion (-) utilizado como primer o último carácter en un rango no necesita escaparse. Ejemplo: [a-z-]. |
|
MaxLength |
No |
Número máximo de caracteres permitidos para un parámetro de tipo String. |
|
MinLength |
No |
Número mínimo de caracteres requeridos para un parámetro de tipo String. |
|
MaxValue |
No |
Valor numérico máximo permitido para un parámetro de tipo Number. |
|
MinValue |
No |
Valor numérico mínimo permitido para un parámetro de tipo Number. |
|
NoEcho |
No |
Cuando se establece en |
|
Confirm |
No |
Exige que el valor del parámetro se ingrese dos veces cuando NoEcho se establece en Nota
La propiedad Confirm solo se puede establecer en |
|
Description |
La descripción de un parámetro. Admite valores localizados:
Nota
La consola muestra la descripción que coincide con la configuración de idioma actual. |
|
|
ConstraintDescription |
No |
El mensaje de error que se muestra cuando se incumple una restricción del parámetro. |
|
Label |
No |
Un alias codificado en UTF-8 para el parámetro. En los formularios web basados en plantillas, los valores de |
|
AssociationProperty |
No |
Valida automáticamente los valores del parámetro y proporciona una lista de opciones válidas. Para más información sobre los valores de AssociationProperty compatibles con ROS y sus ejemplos, consulte AssociationProperty and AssociationPropertyMetadata. |
|
AssociationPropertyMetadata |
No |
Un mapa que restringe AssociationProperty y filtra los elementos coincidentes. Esta propiedad es de tipo Map. Para más información sobre la correspondencia entre AssociationProperty y AssociationPropertyMetadata, así como sus ejemplos, consulte AssociationProperty and AssociationPropertyMetadata. |
|
TextArea |
No |
Indica si el parámetro admite saltos de línea. Valores válidos:
En el siguiente ejemplo, el parámetro Content admite saltos de línea:
|
|
Required |
No |
Indica si el parámetro es obligatorio. Valores válidos:
En el siguiente ejemplo, el parámetro ECSInstanceId es obligatorio.
Nota
La propiedad Required solo afecta la visualización en el frontend y no aplica validaciones en el backend. |
|
Placeholder |
No |
Un texto de sugerencia que se muestra en el campo de entrada de un parámetro.
|
Ejemplo: definir el parámetro InstanceType
Suponga que crea una pila para una aplicación web que contiene una instancia SLB, dos instancias ECS y una instancia ApsaraDB RDS. Puede elegir distintos tipos de instancia ECS según los requisitos de la carga de trabajo. El siguiente código define el parámetro InstanceType en una plantilla:
Parameters:
InstanceType:
Type: String
AllowedValues:
- ecs.t1.small
- ecs.s1.medium
- ecs.m1.medium
- ecs.c1.large
Default: ecs.t1.small
Label: ECS Instance Type
Description: Select an instance type. Default value: ecs.t1.small. Valid values: ecs.t1.small, ecs.s1.medium, ecs.m1.medium, and ecs.c1.large.
Con esta definición, puede seleccionar un valor distinto de InstanceType cada vez que cree una pila. Si se omite el parámetro InstanceType, se utiliza el valor predeterminado ecs.t1.small.
El siguiente código hace referencia al parámetro InstanceType en la definición de un recurso:
Webserver:
Type: ALIYUN::ECS::Instance
InstanceType:
Ref: InstanceType