Variablentypen
Das RSGo Manifest Format unterstützt typisierte Variablen mit automatischer UI-Generierung und Validierung. Jeder Typ hat spezifische Eigenschaften und einen passenden Editor in der Web-UI.
Basis-Typen
Abschnitt betitelt „Basis-Typen“Einfache Texteingabe mit optionaler Pattern-Validierung.
EMAIL: label: E-Mail Adresse type: String pattern: "^[^@]+@[^@]+\\.[^@]+$" patternError: Bitte geben Sie eine gültige E-Mail ein required: true placeholder: user@example.com| Eigenschaft | Beschreibung |
|---|---|
pattern | Regulärer Ausdruck für Validierung |
patternError | Fehlermeldung bei Pattern-Verletzung |
placeholder | Platzhalter-Text im Eingabefeld |
UI: Einzeiliges Textfeld
Numerische Eingabe mit optionalen Min/Max-Grenzen.
WORKERS: label: Worker-Threads type: Number default: "4" min: 1 max: 32 description: Anzahl paralleler Worker (1-32)| Eigenschaft | Beschreibung |
|---|---|
min | Minimalwert |
max | Maximalwert |
UI: Zahlenfeld mit Validierung
Boolean
Abschnitt betitelt „Boolean“Schalter für Ja/Nein-Werte.
DEBUG: label: Debug-Modus type: Boolean default: "false" description: Aktiviert erweiterte Logging-AusgabeGültige Werte: "true" oder "false" (als Strings)
UI: Toggle-Schalter
Password
Abschnitt betitelt „Password“Passwort-Eingabe mit verdeckter Anzeige.
DB_PASSWORD: label: Datenbank-Passwort type: Password required: true description: Mindestens 8 ZeichenUI: Passwortfeld mit Auge-Symbol zum Ein-/Ausblenden
Netzwerk-Port mit automatischer Validierung (1-65535).
WEB_PORT: label: Web Port type: Port default: "8080" description: HTTP-Port der Anwendung| Eigenschaft | Beschreibung |
|---|---|
min | Minimaler Port (Standard: 1) |
max | Maximaler Port (Standard: 65535) |
UI: Zahlenfeld mit Port-Validierung
Dropdown-Auswahl aus vordefinierten Optionen.
ENVIRONMENT: label: Umgebung type: Select default: development options: - value: development label: Entwicklung description: Lokale Entwicklungsumgebung - value: staging label: Staging description: Testumgebung - value: production label: Produktion description: Live-System| Options-Eigenschaft | Beschreibung |
|---|---|
value | Technischer Wert (erforderlich) |
label | Anzeigetext |
description | Zusätzliche Beschreibung |
UI: Dropdown-Menü
Erweiterte Typen
Abschnitt betitelt „Erweiterte Typen“URL-Eingabe mit Format-Validierung.
API_ENDPOINT: label: API Endpoint description: Externe API-URL type: Url default: "https://api.example.com" placeholder: "https://..."UI: Textfeld mit URL-Validierung
E-Mail-Adresse mit Format-Validierung.
ADMIN_EMAIL: label: Admin E-Mail description: E-Mail-Adresse für Benachrichtigungen type: Email default: admin@example.com placeholder: admin@ihredomain.deUI: Textfeld mit E-Mail-Validierung
Dateisystem-Pfad Eingabe.
DATA_PATH: label: Daten-Pfad description: Pfad für Datenspeicherung type: Path default: /dataUI: Textfeld für Pfade
MultiLine
Abschnitt betitelt „MultiLine“Mehrzeilige Texteingabe für größeren Inhalt.
SSL_CERTIFICATE: label: SSL-Zertifikat description: PEM-kodiertes SSL-Zertifikat type: MultiLine placeholder: | -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----UI: Textarea mit mehreren Zeilen
Connection String Typen
Abschnitt betitelt „Connection String Typen“Diese Typen bieten spezialisierte Builder-Dialoge für Datenbankverbindungen.
SqlServerConnectionString
Abschnitt betitelt „SqlServerConnectionString“Microsoft SQL Server Connection String.
DB_CONNECTION: label: SQL Server Verbindung type: SqlServerConnectionString required: true group: DatabaseBuilder-Dialog Features:
- Server und Port separat konfigurieren
- Windows-Authentifizierung oder SQL-Login
- Optionen: Encrypt, TrustServerCertificate, MARS
- Live-Vorschau des Connection Strings
- Verbindung testen Button
Generiertes Format:
Server=myserver,1433;Database=mydb;User Id=sa;Password=***;TrustServerCertificate=truePostgresConnectionString
Abschnitt betitelt „PostgresConnectionString“PostgreSQL Connection String.
PG_CONNECTION: label: PostgreSQL Verbindung type: PostgresConnectionString required: trueBuilder-Dialog Features:
- Host, Port, Datenbank
- Benutzername und Passwort
- SSL-Modus (Disable, Require, Prefer)
- Connection Pooling Optionen
- Verbindung testen
Generiertes Format:
Host=localhost;Port=5432;Database=mydb;Username=postgres;Password=***;SSL Mode=PreferMySqlConnectionString
Abschnitt betitelt „MySqlConnectionString“MySQL/MariaDB Connection String.
MYSQL_CONNECTION: label: MySQL Verbindung type: MySqlConnectionString required: trueBuilder-Dialog Features:
- Server und Port
- Datenbank und Benutzer
- SSL-Optionen
- Charset-Konfiguration
- Verbindung testen
Generiertes Format:
Server=localhost;Port=3306;Database=mydb;User=root;Password=***;SslMode=RequiredMongoConnectionString
Abschnitt betitelt „MongoConnectionString“MongoDB Connection String.
MONGO_CONNECTION: label: MongoDB Verbindung type: MongoConnectionStringBuilder-Dialog Features:
- Single Host oder Replica Set
- Authentifizierung und AuthSource
- SSL/TLS-Optionen
- Read Preference
- Verbindung testen
Generiertes Format:
mongodb://user:pass@host1:27017,host2:27017/mydb?replicaSet=rs0&authSource=adminRedisConnectionString
Abschnitt betitelt „RedisConnectionString“Redis Connection String.
REDIS_URL: label: Redis Server type: RedisConnectionString default: redis://localhost:6379Builder-Dialog Features:
- Host und Port
- Passwort (optional)
- Datenbank-Nummer
- SSL-Optionen
- Sentinel-Konfiguration
Generiertes Format:
redis://user:password@host:6379/0?ssl=trueEventStoreConnectionString
Abschnitt betitelt „EventStoreConnectionString“EventStoreDB gRPC Connection String.
EVENTSTORE_CONNECTION: label: EventStore Verbindung type: EventStoreConnectionStringBuilder-Dialog Features:
- gRPC Endpoint
- TLS-Konfiguration
- Cluster-Modus
Generiertes Format:
esdb://admin:changeit@localhost:2113?tls=trueConnectionString (Generisch)
Abschnitt betitelt „ConnectionString (Generisch)“Generischer Connection String ohne spezialisierten Builder.
CUSTOM_CONNECTION: label: Custom Verbindung type: ConnectionStringUI: Einfaches Textfeld (kein Builder)
Variablen-Gruppierung
Abschnitt betitelt „Variablen-Gruppierung“Variablen können in logische Gruppen organisiert werden:
variables: # Datenbank-Gruppe DB_HOST: type: String group: Database order: 1 DB_PORT: type: Port group: Database order: 2 DB_PASSWORD: type: Password group: Database order: 3
# Netzwerk-Gruppe WEB_PORT: type: Port group: Network order: 1 API_PORT: type: Port group: Network order: 2| Eigenschaft | Beschreibung |
|---|---|
group | Name der Gruppe |
order | Reihenfolge innerhalb der Gruppe |
UI: Variablen werden gruppiert mit Überschriften angezeigt.
Empfohlene Gruppen:
| Gruppe | Beschreibung |
|---|---|
General | Allgemeine Einstellungen |
Network | Ports, DNS, URLs |
Database | Datenbankverbindungen |
Security | Zertifikate, Passwörter |
Logging | Log-Level, Ausgaben |
Performance | Timeouts, Pools, Threads |
Advanced | Erweiterte Konfiguration |
Validierung
Abschnitt betitelt „Validierung“Alle Typen unterstützen:
| Eigenschaft | Beschreibung |
|---|---|
required | Feld muss ausgefüllt werden |
default | Standardwert |
description | Hilfetext unter dem Feld |
Validierungs-Reihenfolge
Abschnitt betitelt „Validierungs-Reihenfolge“- Required-Prüfung (wenn
required: true) - Typ-spezifische Validierung (z.B. Port-Bereich)
- Pattern-Validierung (wenn
patterndefiniert)
Fehleranzeige
Abschnitt betitelt „Fehleranzeige“Validierungsfehler werden direkt unter dem Eingabefeld in Rot angezeigt.
Vollständiges Beispiel
Abschnitt betitelt „Vollständiges Beispiel“variables: # String mit Pattern VERSION_TAG: label: Version Tag type: String default: v1.0.0 pattern: "^v\\d+\\.\\d+\\.\\d+$" patternError: Version muss Format v#.#.# haben (z.B. v1.0.0) group: Versions order: 1
# Number mit Bereich MAX_CONNECTIONS: label: Max Verbindungen type: Number default: "100" min: 1 max: 1000 group: Performance
# Boolean ENABLE_DEBUG: label: Debug aktivieren type: Boolean default: "false" group: General
# Password ADMIN_PASSWORD: label: Admin Passwort type: Password required: true group: Security
# Port HTTP_PORT: label: HTTP Port type: Port default: "8080" group: Network
# Select ENVIRONMENT: label: Umgebung type: Select default: development options: - value: development label: Entwicklung - value: staging label: Staging - value: production label: Produktion group: General
# URL API_ENDPOINT: label: API Endpoint type: Url default: "https://api.example.com" group: External Services
# Email ADMIN_EMAIL: label: Admin E-Mail type: Email default: admin@example.com group: Notifications
# MultiLine SSL_CERTIFICATE: label: SSL Zertifikat type: MultiLine placeholder: | -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- group: Security
# SQL Server Connection DATABASE: label: SQL Server Verbindung type: SqlServerConnectionString group: Database