RSGo Manifest Format

Ein flexibles, typisiertes Format für Stack-Definitionen mit Validierung, Metadaten und Docker Compose Kompatibilität.

Was ist das RSGo Manifest Format?

Das RSGo Manifest Format ist ein YAML-basiertes Konfigurationsformat, das speziell für ReadyStackGo entwickelt wurde. Es erweitert die Möglichkeiten von Docker Compose um Typisierung, Validierung, Metadaten und Multi-Stack Unterstützung.

Grundstruktur

# RSGo Manifest v0.10
product:
  name: my-application
  displayName: My Application
  description: A sample application
  version: 1.0.0
  author: Your Name
  tags: [web, database]

stacks:
  - name: app
    composeFile: docker-compose.yml
    variables:
      - name: APP_PORT
        type: Port
        description: Application port
        default: "8080"
        required: true

Produkt-Metadaten

Im Gegensatz zu Docker Compose können RSGo Manifeste reichhaltige Metadaten enthalten:

  • displayName: Anzeigename in der UI
  • description: Ausführliche Beschreibung
  • version: Versionsnummer nach SemVer
  • author: Autor oder Organisation
  • tags: Kategorisierung für Suche und Filter
  • icon: Custom Icon für die UI

Typisierte Variablen

Variablen haben explizite Typen mit automatischer UI-Generierung:

Typ UI-Element Validierung
StringTextfeldPattern, Min/Max Länge
NumberZahlenfeldMin/Max Wert
BooleanToggle-
PasswordPasswortfeldMin Länge
PortPort-Eingabe1-65535
SelectDropdownOptionsliste
SqlServerConnectionStringBuilder-DialogFormat, Test

Docker Compose Import

Bestehende Docker Compose Dateien können einfach importiert werden:

Import-Features:

  • Automatische Erkennung von Environment-Variablen
  • Typ-Inferenz aus Variablennamen (z.B. *_PORT wird zu Port-Typ)
  • Connection String Erkennung (z.B. SQL Server, PostgreSQL)
  • Beibehaltung der originalen Compose-Struktur

Variablen-Gruppen

Variablen können in logische Gruppen organisiert werden:

variables:
  - name: DB_HOST
    type: String
    group: database
    order: 1

  - name: DB_PORT
    type: Port
    group: database
    order: 2

  - name: API_KEY
    type: Password
    group: authentication
    order: 1

Vorteile gegenüber Docker Compose

  • Typsicherheit: Explizite Typen statt nur Strings
  • Validierung: Werte werden vor dem Deployment geprüft
  • UI-Integration: Automatische Formular-Generierung
  • Multi-Stack: Mehrere Stacks in einem Produkt
  • Metadaten: Reichhaltige Produktinformationen
  • Kompatibilität: Bestehende Compose-Dateien importierbar