Als cloudsjabloonontwikkelaar gebruikt u invoerparameters zodat gebruikers aangepaste keuzes kunnen maken op het moment van de aanvraag.
Hoe invoer werkt
Wanneer gebruikers invoer opgeven, hoeft u niet langer meerdere kopieën van sjablonen op te slaan die slechts een beetje verschillen. Daarnaast kunt u met invoer een sjabloon voorbereiden voor bewerkingen voor dag 2. Zie Cloudsjablooninvoer voor vRealize Automation-updates voor dag 2 gebruiken.
De volgende invoer toont hoe u één cloudsjabloon voor een MySQL-databaseserver maakt, waarbij gebruikers die ene sjabloon in verschillende cloudresourceomgevingen kunnen implementeren en elke keer een andere capaciteit en andere verificatiegegevens toepassen.
Invoerparameters toevoegen
Voeg het gedeelte inputs
toe aan uw sjablooncode, waar u de gewenste waarden instelt.
In het volgende voorbeeld kunnen de machinegrootte, het besturingssysteem en het aantal geclusterde servers worden geselecteerd.
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)
Als u niet voldoende vertrouwd bent om uw code te bewerken, klikt u op het tabblad Invoer van de code-editor en voert u daar instellingen in. Het volgende voorbeeld toont invoer voor de MySQL-database die eerder is vermeld.
Verwijzen naar invoerparameters
Vervolgens verwijst u in de sectie resources
naar een invoerparameter met de syntaxis ${input.property-name}
.
Als de naam van een eigenschap een spatie bevat, moet u deze markeren met vierkante haakjes en dubbele aanhalingstekens in plaats van de puntnotatie te gebruiken: ${input["property name"]}
input
niet gebruiken om een invoerparameter aan te duiden.
resources: WebTier: type: Cloud.Machine properties: name: wordpress flavor: '${input.wp-size}' image: '${input.wp-image}' count: '${input.wp-count}'
Optionele invoer
Invoer is doorgaans vereist en gemarkeerd met een asterisk. Als u invoer optioneel wilt maken, stelt u een lege standaardwaarde in, zoals weergegeven.
owner: type: string minLength: 0 maxLength: 30 title: Owner Name description: Account Owner default: ''
Lijst met invoereigenschappen
Eigenschap | Beschrijving |
---|---|
const | Wordt gebruikt met oneOf. De werkelijke waarde die aan de beschrijvende titel is gekoppeld. |
default | Vooraf ingevulde waarde voor de invoer. De standaardwaarde moet van het juiste type zijn. Voer niet een woord in als standaardwaarde voor een geheel getal. |
description | Helptekst voor de gebruiker voor de invoer. |
encrypted | Of de invoer van de gebruiker moet worden versleuteld, waar of onwaar. Wachtwoorden worden doorgaans versleuteld. U kunt ook versleutelde eigenschappen maken die herbruikbaar zijn in meerdere cloudsjablonen. Zie Geheime Cloud Assembly-eigenschappen. |
enum | Een vervolgkeuzelijst met toegestane waarden. Gebruik het volgende voorbeeld als richtlijn voor de opmaak. enum: - value 1 - value 2 |
format | Stelt de verwachte notatie voor de invoer in. Bijvoorbeeld: (25/04/19) ondersteunt datum/tijd. Staat het gebruik van de datumkiezer in aangepaste formulieren van Service Broker toe. |
items | Geeft items in een array aan. Ondersteunt getal, geheel getal, tekenreeks, Booleaans of object. |
maxItems | Maximum aantal selecteerbare items in een array. |
maxLength | Maximum aantal tekens dat is toegestaan voor een tekenreeks. Als u bijvoorbeeld een veld wilt beperken tot 25 tekens, voert u |
maximum | De grootste toegestane waarde voor een getal of geheel getal. |
minItems | Minimum aantal items dat in een array kan worden geselecteerd. |
minLength | Minimum aantal tekens dat voor een tekenreeks is toegestaan. |
minimum | De kleinste toegestane waarde voor een getal of geheel getal. |
oneOf | Staat toe dat het formulier voor gebruikersinvoer een beschrijvende naam (titel) voor een minder gebruiksvriendelijke waarde (const) weergeeft. Als u een standaardwaarde instelt, stelt u const in, niet de titel. Geldig voor gebruik met de typen tekenreeks, geheel getal en getal. |
pattern | Toegestane tekens voor invoer van een tekenreeks, in de syntaxis van reguliere expressies. Bijvoorbeeld: |
properties | Geeft het eigenschappenblok key:value aan voor objecten. |
readOnly | Wordt gebruikt om alleen een formulierlabel op te geven. |
title | Wordt gebruikt met oneOf. De beschrijvende naam voor een const-waarde. De titel wordt tijdens het implementeren weergegeven op het formulier voor gebruikersinvoer. |
type | Het gegevenstype getal, geheel getal, tekenreeks, Booleaans of object.
Belangrijk:
Het type Booleaans voegt een leeg selectievakje toe aan het aanvraagformulier. Als u het vak niet bewerkt, wordt de invoer niet False. Om de invoer in te stellen op False, moeten gebruikers het vakje inschakelen en vervolgens uitschakelen. |
writeOnly | Verbergt toetsaanslagen in het formulier achter sterretjes. Kan niet met enum worden gebruikt. Wordt als wachtwoordveld weergegeven in aangepaste formulieren van Service Broker. |
Aanvullende voorbeelden
Tekenreeks met inventarisatie
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
Geheel getal met minimum en maximum
count: type: integer title: Machine Count description: The number of machines that you want to deploy. maximum: 5 minimum: 1 default: 1
Array van objecten
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
Tekenreeks met beschrijvende namen
platform: type: string oneOf: - title: AWS const: platform:aws - title: Azure const: platform:azure - title: vSphere const: platform:vsphere default: platform:aws
Tekenreeks met patroonvalidatie
username: type: string title: Username description: The name for the user that will be created when the machine is provisioned. pattern: ^[a-zA-Z]+$
Tekenreeks als wachtwoord
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
Tekenreeks als tekstgebied
ssh_public_key: type: string title: SSH public key maxLength: 256
Booleaans
public_ip: type: boolean title: Assign public IP address description: Choose whether your machine should be internet facing. default: false
Agendakiezer voor datum en tijd
leaseDate: type: string title: Lease Date format: date-time