Ihr erstes Formular

Schreiben Sie ein Playbook, bauen Sie im Designer ein Formular dafür, starten Sie es und finden Sie den Job

  1. 1. Anmelden
  2. 2. Das Playbook schreiben
  3. 3. Das Formular erstellen
  4. 4. Starten
  5. 5. Die Ausgabe verfolgen
  6. 6. In der Job-Historie finden
  7. Nächste Schritte

Dieses Tutorial geht von einer frischen Installation aus, siehe Installation. Es dauert etwa fünfzehn Minuten.


1. Anmelden

Öffnen Sie AnsibleForms im Browser und melden Sie sich als Administrator an.

Das Standardkonto ist admin / AnsibleForms!123 (oder Ihre ADMIN_*-Werte); die Seite Formulare öffnet sich:

Die Seite Formulare mit Beispielformularen


2. Das Playbook schreiben

Ein ansible-Formular führt ein Playbook aus dem Playbook-Ordner aus, daher kommt das Playbook zuerst. Speichern Sie dies als hello.yaml:

- name: Hello world
  hosts: localhost
  gather_facts: false
  tasks:
    - name: Show the values from the form
      ansible.builtin.debug:
        msg: "Hello {{ your_name }}: a {{ vm_size }} machine in {{ target_env }} (dry run: {{ dry_run }})"

Das Playbook liest vier Variablen. Das Formular, das Sie als Nächstes bauen, sendet sie als Extravars, eine pro Feld.

Legen Sie die Datei in den Ordner playbooks des persistenten Ordners (ANSIBLE_PATH); legen Sie den Ordner an, falls er noch nicht existiert:

Der Ordner, den Sie unter /app/dist/persistent eingehängt haben, im Installationsbeispiel /srv/apps/ansibleforms/persistent:

mkdir -p /srv/apps/ansibleforms/persistent/playbooks
cp hello.yaml /srv/apps/ansibleforms/persistent/playbooks/

Wenn bei einem Git-Repository Für Playbooks verwenden? eingeschaltet ist, werden die Playbooks stattdessen aus diesem Repository ausgeführt: committen Sie hello.yaml dort. Siehe Designer und Git.


3. Das Formular erstellen

Formulare sind YAML-Dateien im Formularordner. Der Designer bearbeitet sie im Browser und prüft sie vor dem Speichern.

  1. Klicken Sie im oberen Menü auf Designer und dann im linken Menü auf Formulare.
  2. Klicken Sie auf den Schalter oben rechts (Designer starten). Er sperrt die Konfiguration, damit niemand anderes sie gleichzeitig bearbeitet, und zeigt danach Von mir gesperrt.
  3. Klicken Sie auf Neue Datei, die erste Schaltfläche der Werkzeugleiste, und geben Sie den Dateinamen hello-world.yaml ein. Der Designer fügt ihr ein Formular namens New Form hinzu.
  4. Ersetzen Sie das YAML im Editor durch dieses Formular:
name: Hello world
type: ansible
playbook: hello.yaml
description: Greets you with the values you picked
icon: play
roles:
  - default
categories:
  - Default
fields:
  - name: your_name
    type: text
    label: Your name
    required: true
  - name: target_env
    type: enum
    label: Environment
    values:
      - development
      - test
      - production
    default: development
    required: true
  - name: vm_size
    type: enum
    label: Size
    expression: "[{size:'small',cpus:1},{size:'medium',cpus:2},{size:'large',cpus:4}]"
    runLocal: true
    default: __auto__
    required: true
  - name: dry_run
    type: checkbox
    label: Dry run
    default: true
  1. Klicken Sie auf Validieren (das Häkchen) und dann auf Speichern. Beim Speichern wird hello-world.yaml in den Formularordner geschrieben.
  2. Klicken Sie erneut auf den Schalter, um die Sperre freizugeben.

Der Designer beim Bearbeiten eines Formulars

Das Formular verwendet vier Feldtypen:

Feld Typ Was es tut
your_name text Ein Pflicht-Textfeld
target_env enum Eine Auswahlliste mit einer festen Liste von values
vm_size enum Eine Auswahlliste, gefüllt von einem lokalen Ausdruck; __auto__ wählt den ersten Eintrag
dry_run checkbox Ein Kontrollkästchen, gesendet als true oder false

vm_size zeigt beide Spalten, size und cpus, und sendet size, die erste; valueColumn wählt eine andere.

roles: [default] erlaubt jedem angemeldeten Benutzer, das Formular auszuführen, und categories: [Default] legt es in die Kategorie, die die Standard-config.yaml definiert.

Sie können hello-world.yaml auch nach FORMS_FOLDER_PATH kopieren und in VS Code validieren.


4. Starten

Öffnen Sie das Formular über die Seite Formulare: klicken Sie im oberen Menü auf Formulare und wählen Sie Hello world in der Kategorie Default.

Geben Sie Ihren Namen ein und ändern Sie die anderen Felder nach Belieben. Klicken Sie auf Extra-Variablen anzeigen, um zu sehen, was das Playbook erhält, und dann auf Senden:

Ein Formular


5. Die Ausgabe verfolgen

Der Job startet sofort, und seine Ausgabe erscheint während der Ausführung unter dem Formular und endet mit einem Balken Abgeschlossen:

Die Ausgabe eines Jobs

Der Debug-Task gibt Ihre Werte aus, zum Beispiel Hello Alice: a small machine in development (dry run: True).

Die Warnung zum impliziten localhost ist ohne Inventar zu erwarten; ein echtes Formular setzt inventory.


6. In der Job-Historie finden

Jeder Start wird als Job aufbewahrt. Klicken Sie im oberen Menü auf Jobs: der neue Job steht ganz oben unter Alle Jobs.

Klicken Sie auf den Job, um seine Ausgabe erneut zu sehen, und auf Extra-Variablen anzeigen, um zu sehen, was gesendet wurde. Die Symbole vor jedem Job starten ihn erneut oder löschen ihn:

Die Job-Historie


Nächste Schritte

Bauen Sie mit den Referenzseiten auf diesem Formular auf:

  • Formulare : alle Formulareigenschaften, Vorlagen auf Runnern, Workflow-Formulare, Genehmigungspunkte und Benachrichtigungen
  • Formularfelder : alle Feldtypen, mit Validierung, Abhängigkeiten und Layout
  • Ausdrücke : Felder aus REST-APIs, Datenbanken und Dateien füllen
  • Rollen und Kategorien in config.yaml : festlegen, wer welches Formular sieht
  • Wie es funktioniert : was hinter einem Start passiert und wo alles gespeichert wird