Definition und Verwendung von Dienstparametern in der IBM Cloud

Erfahren Sie anhand von Beispielen und Definitionen, wie Sie Serviceparameter definieren und verwenden, um beim Erstellen einer IBM Cloud®-Serviceinstanz zusätzliche Daten zu erfassen.

Dienstparameter werden verwendet, um zusätzliche Datenpunkte zu erfassen und einem Aufruf hinzuzufügen, wenn ein IBM Cloud-Kunde eine Dienstinstanz erstellt. Die folgenden Abschnitte enthalten Beispiele und Definitionen für die Verwendung von Serviceparametern. Informationen zum Hinzufügen angepasster Serviceparameter für Ihr Produkt finden Sie unter Angepasste Serviceparameter für Ihren Service hinzufügen.

Beispiele für Serviceparameter

Das folgende Beispiel veranschaulicht, wie ein angepasster Serviceparameter für ein erforderliches Textfeld angegeben wird.

In den umgebenden metadata-und service-JSON-Strukturen gibt der Schlüssel parameters ein JSON-Array mit angepassten Serviceparametern an. In diesem Beispiel enthält das Array nur einen benutzerdefinierten Parameter mit der Kennung subscription_id. Es handelt sich um ein erforderliches Textfeld mit der Bezeichnung Subscription ID und der Beschreibung Subscription ID that will be used when provisioning the service instance. Dieser benutzerdefinierte Parameter wird in der Benutzeroberfläche angezeigt, wenn der Benutzer einen der beiden zugehörigen Preispläne, 068f8a20-8b27-4049-91fe-a3ff5f505352 oder 45333bd7-79f5-475f-9b14-9fe99734592a, auswählt:

{
  "metadata": {
    //...
    "service": {
      //...
      "parameters": [{
          "associations": {
              "plan": {
                  "showFor": [
                      "068f8a20-8b27-4049-91fe-a3ff5f505352",
                      "45333bd7-79f5-475f-9b14-9fe99734592a"
                  ]
              }
          },
          "description": "Subscription ID that will be used when provisioning the service instance",
          "displayname": "Subscription ID",
          "name": "subscription_id",
          "required": true,
          "type": "text"
      }]
  }
}

Dieser angepasste Parameter muss nicht nur dem Objekt Service hinzugefügt werden, sondern auch allen Deployment-Objekten für die beiden Servicepläne, denen der Parameter zugeordnet ist. Außerdem müssen die Implementierungen für die Implementierungsobjekte aktualisiert werden, um den angepassten Parameter zu verarbeiten.

Testen Sie Ihre Parameter immer in der Konsole IBM Cloud, um zu überprüfen, ob die von Ihnen angegebenen Änderungen korrekt funktionieren.

Serviceparameterdefinition

Die Struktur parameters definiert ein JSON-Array mit angepassten Serviceparametern. Wenn eine Serviceinstanz erstellt wird, verwendet sie die Informationen im Array, um die angepassten Serviceparameter zu verwalten. Ein Beispiel finden Sie im vorherigen Unterabschnitt in diesem Abschnitt.

Jeder angepasste Serviceparameter in der Struktur parameters hat das folgende Layout. Viele der Attribute sind optional:

parameters.name
Der Schlüssel des Parameters.
parameters.displayname
Der Parametername, der angezeigt wird.
parameters.type
Der Typ des put-Feldes, der in der Benutzeroberfläche von IBM Cloud angezeigt wird. Der Wert kann text, password, dropdown, check box, oder sein radio.

Dieser Wert ist erforderlich.

Der folgende Codeblock enthält Beispiele für die Parameter name, displayname und type:

{
  "name": "pwd",
  "displayname": "Password",
  "type": "password"
}
parameters.options
Eine JSON-Struktur zur Angabe der verfügbaren Werte für die radio Eingabetypen dropdown, check box, und.
parameters.options.displayname
Der Name der Dropdown-Liste, des Kontrollkästchens oder des Optionsfelds, die bzw. das Sie in der Benutzerschnittstelle anzeigen möchten.
parameters.options.value
Der Wert des Parameters, der beim Erstellen des Service an den Service-Broker gesendet werden soll.
{
  "options": [
    {
      "displayname": "HDFS",
      "value": "hdfs"
    },
    {
      "displayname": "YARN",
      "value": "yarn"
    },
  ]
}
parameters.value
Der Standardwert des Parameters. Bei dem Eingabeelement 'Kontrollkästchen' kann dies ein Wertebereich sein.
{
  ["hfs","yarn"]
}
parameters.layout
Gibt das Layout für das Eingabeelement 'Kontrollkästchen' oder 'Optionsfeld' an. Wenn diese Angabe fehlt, wird das horizontale Standardlayout verwendet.
parameters.associations
Eine JSON-Struktur zum Beschreiben der Interaktionen mit Preisstrukturplänen und/oder anderen angepassten Parametern.

Dieser Wert ist optional, und alle nachfolgenden Werte, die angehängt werden, sind parameters.associations.<value> ebenfalls optional.

{
  "type": "text",
  "associations": {
    "plan": {
    "showFor": ["apsMyserviceParametersDemo-entry","apsMyserviceParametersDemo-enterprise"]
    }
  }
}
parameters.associations.plan
Eine JSON-Struktur zum Beschreiben der Interaktion mit Preistarifen.
parameters.associations.plan.showFor
Ein Bereich der Plan-IDs für Preistarife. Falls der Parameter angegeben ist, wird er in der Benutzerschnittstelle angezeigt, wenn der betreffende Preisstrukturplan ausgewählt wird.
parameters.associations.plan.optionsRefresh
Ist diese Option angegeben, wird die Option optionsUrl aufgerufen, wenn der zugeordnete Preistarif ausgewählt wird.
parameters.associations.parameters
Ein JSON-Array zum Beschreiben der Interaktion mit anderen angepassten Parametern.
parameters.associations.parameters.name
Der Name des anderen benutzerdefinierten Parameters, mit dem Sie interagieren möchten.

Erforderlich, wenn parameters.associations.parameters verwendet wird.

parameters.associations.parameters.showFor
Ein Array ausgewählter Werte, die mit dem benutzerdefinierten Parameter verknüpft sind, mit dem Sie interagieren möchten. Dieser Parameter wird in der Benutzerschnittstelle angezeigt, wenn einer dieser Werte ausgewählt ist.
parameters.associations.parameters.optionsRefresh
Wenn dieser Parameter auf true gesetzt ist, optionsUrl wird die aufgerufen, sobald sich der zugehörige Parameterwert ändert und dieser Parameter in der Benutzeroberfläche sichtbar ist.
parameters.optionsUrl
Die API, die von der Konsole aufgerufen wird, um eine Liste der Optionen für ein Eingabeelement des Typs 'Dropdown-Liste', 'Kontrollkästchen' oder 'Optionsfeld' abzurufen. Die Antwort ist eine JSON-Struktur, die zwei Felder enthält:
parameters.optionsUrl.options
Ein JSON-Array, das; zurückgibt parameters.options; weitere Details finden Sie im Eintrag zu parameters.options.
parameters.optionsUrl.value
Der neue Standardwert des Parameters. Weitere Details finden Sie im Eintrag für parameters.value.

Die Konsole übergibt den Abfrageparameter ace_config, der die GUID der aktuellen Organisation, die GUID des Bereichs, die aktuelle Werte aller angepassten Parameter und die ID des aktuellen Preisstrukturplans enthält. Das Trägertoken wird im Header weitergegeben.

parameters.invalidmessage
Die Nachricht, die ausgegeben wird, wenn der Inhalt des Textfelds ungültig ist.
parameters.description
Die Beschreibung des Parameters, die angezeigt wird, um die Benutzern beim Eingeben des Werts für diesen Parameter zu unterstützen.
parameters.required
Ein boolescher Wert, der angibt, ob der Parameter in die IBM Cloud-Benutzerschnittstelle eingegeben werden muss.
parameters.pattern
Ein regulärer Ausdruck, mit dem der Wert abgeglichen wird.
parameters.placeholder
Ein kurzer Hinweis, der den erwarteten Wert beschreibt.
parameters.readonly
Ein boolescher Wert, der angibt, ob der Wert des Parameters lediglich angezeigt und von Benutzern nicht geändert werden kann. Der Standardwert ist 'false'.
parameters.hidden
Ein boolescher Wert, der angibt ob das Schlüssel/Wert-Paar für Benutzer ausgeblendet ist. Der Standardwert ist 'false'.