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.

Invoervariabelen

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.

Tabblad Invoer

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"]}

Belangrijk: In de cloudsjablooncode kunt u het woord 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: ''
Optionele invoer

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 maxLength: 25 in.

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: '[a-z]+' of '[a-z0-9A-Z@#$]+'.

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