Zum Inhalt springen

Schritte & Variablen

Schritte und Variablen sind die Bausteine jeder Vorlagenversion. Schritte definieren, was getan werden muss, während Variablen eine Parametrisierung ermöglichen, sodass dieselbe Vorlage in verschiedenen Kontexten wiederverwendet werden kann.

RAMP-Schritte unterstützen hierarchische Verschachtelung, sodass Sie komplexe Verfahren in logische Gruppen organisieren können.

  • Root-Schritte — Schritte der obersten Ebene, die auf der ersten Einrückungsebene erscheinen.
  • Untergeordnete Schritte — Schritte, die unter einem übergeordneten Schritt verschachtelt sind und Teilverfahren bilden.
  • Unbegrenzte Tiefe — Schritte können beliebig tief verschachtelt werden, wobei 2-3 Ebenen für die Lesbarkeit typisch sind.

Ein Schritt, der untergeordnete Schritte enthält, fungiert als virtueller Schritt oder Gruppenüberschrift. Virtuelle Schritte:

  • Dienen als organisatorische Container für ihre untergeordneten Schritte.
  • Können einen eigenen Titel und Inhalt haben (werden häufig für Anweisungen auf Abschnittsebene verwendet).
  • Verfolgen den Abschluss auf Basis des Fortschritts ihrer untergeordneten Schritte.
  • Können so konfiguriert werden, dass sie automatisch abgeschlossen werden, wenn alle untergeordneten Schritte fertig sind, oder sie können manuellen Abschluss erfordern.

Übergeordnete Schritte definieren, wie ihre untergeordneten Schritte ausgeführt werden:

ModusVerhalten
SequenziellUntergeordnete Schritte müssen in der Reihenfolge ausgeführt werden. Der nächste Schritt ist erst verfügbar, nachdem der vorherige abgeschlossen wurde.
ParallelAlle untergeordneten Schritte sind gleichzeitig verfügbar und können in beliebiger Reihenfolge ausgeführt werden.

Jeder Schritt hat einen Rich-Text-Inhaltsbereich, der von TipTap unterstützt wird. Der Editor unterstützt:

  • Textformatierung — Fett, Kursiv, Unterstrichen, Durchgestrichen
  • Überschriften — H1 bis H6
  • Listen — Geordnete und ungeordnete Listen, Aufgabenlisten
  • Code — Inline-Code und umrahmte Codeblöcke mit Syntaxhervorhebung
  • Tabellen — Vollständige Tabellenunterstützung mit Spalten-/Zeilenoperationen
  • Links — Hyperlinks zu externen Ressourcen
  • Blockzitate — Für Callouts und wichtige Hinweise
  • Horizontale Trennlinien — Visuelle Trennelemente

Jeder Schritt hat ein optionales Titelfeld, das im Schrittbaum und in den Ausführungsansichten erscheint. Titel sollten kurz und aussagekräftig sein:

  • “Anwendungsdienste stoppen”
  • “Datenbankverbindung überprüfen”
  • “Konfigurationsdateien bereitstellen”

Das Notizen-Feld bietet Platz für interne Dokumentation, die im Editor und in den Schrittausführungs-Detailansichten sichtbar ist, aber nicht in der Hauptausführungsvorschau angezeigt wird. Verwenden Sie Notizen für:

  • Implementierungsdetails für den Ausführenden
  • Links zu zugehöriger Dokumentation
  • Tipps zur Fehlerbehebung
  • Kontaktinformationen

Variablen ermöglichen die Parametrisierung von Vorlagen, sodass eine einzelne Vorlage in verschiedenen Umgebungen, auf verschiedenen Servern oder mit verschiedenen Konfigurationen wiederverwendet werden kann.

Referenzieren Sie Variablen im Schrittinhalt mit doppelten geschweiften Klammern:

Connect to server {{ServerName}} on port {{Port}}.

Wenn eine Instanz erstellt wird, füllt der Ausführende die tatsächlichen Werte aus (z. B. prod-db-01 und 5432), und der Schrittinhalt zeigt den aufgelösten Text an.

TypBeschreibungBeispiel
StringFreiformtextServername, URL, Beschreibung
NumberNumerischer WertPortnummer, Timeout
DateDatumswertBereitstellungsdatum, Umstellungsfenster
BooleanWahr/Falsch-UmschalterFeature-Flag, Probelaufmodus
ListVordefinierte Liste von OptionenUmgebungs-Dropdown
StringListDurch Trennzeichen getrennte Zeichenkette von WertenDurch Komma getrennte Servernamen
EigenschaftBeschreibung
NameDer Platzhalternamen, der in der {{Name}}-Syntax verwendet wird
BeschreibungHilfetext, der dem Benutzer beim Ausfüllen des Werts angezeigt wird
DatentypDer Wertetyp (siehe Tabelle oben)
StandardwertVorausgefüllter Wert, der überschrieben werden kann
ErforderlichOb ein Wert angegeben werden muss, bevor die Instanz fortfahren kann
ValidierungsmusterEin Regex-Muster zur Validierung der Benutzereingabe
TrennzeichenFür den StringList-Typ das Zeichen zum Aufteilen von Werten (Standard: Komma)

List- und StringList-Variablen unterstützen spezielle Iterationsmodi, die während der Instanzausführung virtuelle Schritte generieren:

ModusVerhalten
KeineVariable wird als Einzelwert verwendet. Es werden keine virtuellen Schritte generiert.
ParallelErstellt einen virtuellen Schritt pro Listenelement. Alle virtuellen Schritte sind für die gleichzeitige Ausführung verfügbar.
SequenziellErstellt einen virtuellen Schritt pro Listenelement. Virtuelle Schritte müssen in der Reihenfolge ausgeführt werden.
ConcatVerbindet alle Listenwerte mit einem Trennzeichen zu einer einzelnen Zeichenkette. Referenziert mit der {{*variableName}}-Syntax.

Betrachten Sie einen Vorlagenschritt: “Anwendung auf {{ServerName}} bereitstellen”

Wenn ServerName eine StringList-Variable mit den Werten web01, web02, web03 ist und der Iterationsmodus auf Parallel gesetzt ist, erstellt RAMP während der Instanzausführung drei virtuelle Schritte:

  1. “Anwendung auf web01 bereitstellen”
  2. “Anwendung auf web02 bereitstellen”
  3. “Anwendung auf web03 bereitstellen”

Alle drei können von verschiedenen Teammitgliedern parallel ausgeführt werden.

Schritte können mit Zieltypen konfiguriert werden, um mit Variablen zu arbeiten:

ZieltypBeschreibung
KeineStandardschritt, kein Targeting
ListeSchritt zielt auf eine feste Liste von Elementen
VariableSchritt zielt auf Werte einer benannten Variable

Die Funktion Variablen synchronisieren durchsucht den gesamten Schrittinhalt nach {{VariablenName}}-Mustern und:

  • Erstellt Variablen für alle referenzierten Namen, die noch nicht existieren.
  • Meldet Variablen, die definiert sind, aber in keinem Schritt referenziert werden.

Dies hilft dabei, Variablendefinitionen konsistent mit dem Schrittinhalt zu halten.

EigenschaftBeschreibungStandard
AusführungstypSequenzielle oder parallele Ausführung untergeordneter SchritteSequenziell
Automatisch abschließenÜbergeordneter Schritt wird automatisch abgeschlossen, wenn alle untergeordneten fertig sindJa
Geschätzte DauerErwartete Zeit für den AbschlussKeine
EigenschaftBeschreibungStandard
ÜberspringbarOb der Schritt übersprungen werden kannNein
Überspringen erfordert KommentarWenn überspringbar, ob ein Grund erforderlich istNein
Nachweis erforderlichOb ein Dateianhang beim Abschluss erforderlich istNein
EigenschaftBeschreibungStandard
VerantwortungsmodusWer ausführen kann: Alle Teammitglieder, Bestimmte Mitglieder oder Nicht zugewiesenAlle Teammitglieder
Verantwortliche BenutzerBestimmte Benutzer (wenn Modus “Bestimmte Mitglieder” ist)Keine
Verantwortliche GruppenBestimmte Gruppen (wenn Modus “Bestimmte Mitglieder” ist)Keine
AnsprechpartnerEin bestimmter Ansprechpartner für Fragen zu diesem SchrittKeine
Erforderliche RolleEine Rollenbezeichnung, die angibt, wer diesen Schritt bearbeiten sollKeine

Jeder Schritt hat eine Schrittkennung und eine Schrittversion, die über Vorlagenversionen hinweg bestehen bleiben. Wenn Sie einen neuen Entwurf aus einer veröffentlichten Version erstellen, behält jeder Schritt seine Kennung, sodass RAMP folgendes kann:

  • Schrittänderungen über Versionen hinweg für die Vergleichsansicht verfolgen.
  • Instanz-Upgrades ermöglichen, die den Ausführungsstatus der Schritte erhalten.
  • Genaue Änderungsdiffs in der Historienansicht bereitstellen.

Schritte können als Wiederholbar markiert werden, was bedeutet, dass sie während einer Instanz mehrmals ausgeführt werden können. Wenn ein Schritt wiederholbar ist:

  • Eine Wiederholungsvariable kann verknüpft werden, um die Anzahl der Wiederholungen zu steuern.
  • Der Wiederholungsmodus bestimmt, ob Wiederholungen sequenziell oder parallel ablaufen.

Schritte können explizite Abhängigkeiten von anderen Schritten haben, die eine Ausführungsreihenfolge über die natürliche Baumhierarchie hinaus erzwingen. Abhängigkeiten werden getrennt von Eltern-Kind-Beziehungen verfolgt und können bei Bedarf auf Instanzebene überschrieben werden.