En tant que développeur de modèle de cloud, vous utilisez des paramètres d'entrée pour que les utilisateurs puissent effectuer des sélections personnalisées au moment de la demande.
Fonctionnement des entrées
Lorsque les utilisateurs fournissent des entrées, vous n'avez plus besoin d'enregistrer plusieurs copies de modèle qui sont légèrement différentes. En outre, les entrées peuvent préparer un modèle pour les opérations de jour 2. Reportez-vous à la section Utilisation d'entrées de modèle de cloud pour les mises à jour de jour 2 de vRealize Automation.
Les entrées suivantes vous présentent comment créer un modèle de cloud pour un serveur de base de données MySQL, où les utilisateurs peuvent déployer ce modèle de cloud dans différents environnements de ressources de cloud et appliquer chaque fois une capacité et des informations d'identification différentes.
Ajout de paramètres d'entrée
Ajoutez une section inputs
au code de votre modèle de cloud, où vous définissez les valeurs sélectionnables.
Dans l'exemple suivant, la taille de la machine, le système d'exploitation et le nombre de serveurs en cluster sont sélectionnables.
inputs: wp-size: type: string enum: - small - medium description: Size of Nodes title: Node Size wp-image: type: string enum: - coreos - ubuntu title: Select Image/OS wp-count: type: integer default: 2 maximum: 5 minimum: 2 title: Wordpress Cluster Size description: Wordpress Cluster Size (Number of nodes)
Si vous ne souhaitez pas modifier le code, vous pouvez cliquer sur l'onglet Entrées de l'éditeur de code et y entrer les paramètres. L'exemple suivant présente plusieurs entrées pour la base de données MySQL mentionnée précédemment.
Référencement des paramètres d'entrée
Ensuite, dans la section resources
, vous devez référencer un paramètre d'entrée à l'aide de la syntaxe ${input.property-name}
.
Si un nom de propriété inclut un espace, délimitez-le avec des crochets et des guillemets au lieu d'utiliser la notation par points : ${input["nom de propriété"]}
input
, sauf pour indiquer un paramètre d'entrée.
resources: WebTier: type: Cloud.Machine properties: name: wordpress flavor: '${input.wp-size}' image: '${input.wp-image}' count: '${input.wp-count}'
Entrées facultatives
Les entrées sont généralement requises et marquées d'un astérisque. Pour rendre une entrée facultative, définissez une valeur par défaut vide comme indiqué.
owner: type: string minLength: 0 maxLength: 30 title: Owner Name description: Account Owner default: ''
Liste des propriétés d'entrée
Propriété | Description |
---|---|
const | Utilisé avec oneOf. Valeur réelle associée au titre convivial. |
default | Valeur préremplie pour l'entrée. Le type par défaut doit être correct. N'entrez pas de mot comme valeur par défaut d'un nombre entier. |
description | Texte d'aide de l'utilisateur pour l'entrée. |
encrypted | Indique s'il convient de chiffrer l'entrée fournie par l'utilisateur, true ou false. Les mots de passe sont généralement chiffrés. Vous pouvez également créer des propriétés chiffrées réutilisables dans plusieurs modèles de cloud. Reportez-vous à la section Propriétés secrètes Cloud Assembly. |
enum | Menu déroulant des valeurs autorisées. Utilisez l'exemple suivant comme guide en matière de format. enum: - value 1 - value 2 |
format | Définit le format attendu pour l'entrée. Par exemple, (25/04/19) prend en charge la date et l'heure. Permet l'utilisation du sélecteur de date dans les formulaires personnalisés Service Broker. |
items | Déclare des éléments dans un tableau. Prend en charge un nombre, un entier, une chaîne, une valeur booléenne ou un objet. |
maxItems | Nombre maximal d'éléments sélectionnables dans un tableau. |
maxLength | Nombre maximal de caractères autorisés pour une chaîne. Par exemple, pour limiter un champ à 25 caractères, entrez |
maximum | Valeur la plus élevée autorisée pour un nombre ou un entier. |
minItems | Nombre minimal d'éléments sélectionnables dans un tableau. |
minLength | Nombre minimal de caractères autorisés pour une chaîne. |
minimum | Valeur la plus petite autorisée pour un nombre ou un entier. |
oneOf | Permet au formulaire de saisie d'utilisateur d'afficher un nom convivial (title) pour une valeur moins conviviale (const). Si vous définissez une valeur par défaut, définissez la constante, et non le titre. Valide pour une utilisation avec des types chaîne, entier et nombre. |
pattern | Caractères autorisés pour les entrées de chaîne, dans la syntaxe d'expression régulière. Par exemple, |
properties | Déclare le bloc de propriétés key:value pour des objets. |
readOnly | Utilisé pour fournir une étiquette de formulaire uniquement. |
title | Utilisé avec oneOf. Nom convivial d'une valeur const. Le titre s'affiche dans le formulaire de saisie utilisateur au moment du déploiement. |
type | Type de données de nombre, d'entier, de chaîne, de valeur booléenne ou d'objet.
Important :
Un type booléen ajoute une case à cocher vide au formulaire de demande. Laisser la boîte intacte ne rend pas l'entrée False. Pour définir l'entrée sur False, les utilisateurs doivent cocher, puis décocher la case. |
writeOnly | Masque la frappe par des astérisques dans le formulaire. Ne peut pas être utilisé avec enum. S'affiche sous forme de champ de mot de passe dans les formulaires personnalisés Service Broker. |
Autres exemples
Chaîne avec énumération
image: type: string title: Operating System description: The operating system version to use. enum: - ubuntu 16.04 - ubuntu 18.04 default: ubuntu 16.04 shell: type: string title: Default shell Description: The default shell that will be configured for the created user. enum: - /bin/bash - /bin/sh
Nombre entier avec valeur minimale et valeur maximale
count: type: integer title: Machine Count description: The number of machines that you want to deploy. maximum: 5 minimum: 1 default: 1
Tableau d'objets
tags: type: array title: Tags description: Tags that you want applied to the machines. items: type: object properties: key: type: string title: Key value: type: string title: Value
Chaîne avec noms conviviaux
platform: type: string oneOf: - title: AWS const: platform:aws - title: Azure const: platform:azure - title: vSphere const: platform:vsphere default: platform:aws
Chaîne avec validation de modèle
username: type: string title: Username description: The name for the user that will be created when the machine is provisioned. pattern: ^[a-zA-Z]+$
Chaîne sous forme de mot de passe
password: type: string title: Password description: The initial password that will be required to logon to the machine. Configured to reset on first login. encrypted: true writeOnly: true
Chaîne sous forme de zone de texte
ssh_public_key: type: string title: SSH public key maxLength: 256
Valeur booléenne
public_ip: type: boolean title: Assign public IP address description: Choose whether your machine should be internet facing. default: false
Sélecteur de calendrier Date et heure
leaseDate: type: string title: Lease Date format: date-time