Zum Inhalt

Namenskonventionen

Polycrate validiert Bezeichner je nach Objekttyp mit unterschiedlichen Regeln. Die CLI-Implementierung findet sich in cmd/vars.go (Konstanten ValidateSlugRegex, ValidateMetaDataNameRegex, ValidateBlockNameRegex). Die Seite Blöcke verweist für Block-Verzeichnisse und Instanzen auf diesen Artikel.

Slug (Kleinbuchstaben)

Für name und organization in der workspace.poly sowie für name bei Actions (block.poly) und Workflows (workspace.poly) gilt die gleiche Validierung Slug:

^[a-z][a-z0-9-]*$

Kurzbedeutung:

  • Beginn mit einem Kleinbuchstaben (az).
  • Danach nur Kleinbuchstaben, Ziffern oder einfache Bindestriche (-).
  • Keine Leerzeichen, keine Schrägstriche und keine doppelten Bindestriche (z. B. my--app ist ungültig).

Gültig: install, do-backup, v2-deploy, run-migrations
Ungültig: _install, 123-test, My-App (Großbuchstaben), install--twice

→ Vertiefung und Aufruf von polycrate run: Actions

Block-Namen (name in block.poly)

Der Block-Name wird in der CLI separat mit dem Validator block_name geprüft (u. a. lokale Namen und Registry-Pfade mit /). Er ist nicht identisch mit dem Slug für Actions oder Workspaces.

Konventionen und Beispiele: Blöcke – Naming Convention

Erweiterter Metadaten-Name

Für Metadata.name (z. B. Hub-/API-Metadaten) kann die CLI metadata_name verwenden:

^[a-zA-Z]+([-/_]?[a-zA-Z0-9_]+)+$

Kurzbedeutung:

  • Beginn mit einem Buchstaben (az, AZ).
  • Danach mindestens ein weiteres Segment: optional ein einzelner Trenner (-, / oder _), gefolgt von Buchstaben, Ziffern oder Unterstrichen.

Erlaubte und ungültige Beispiele (Metadaten-Name)

Erlaubt:

postgres-base
my-app
my_app
infra/postgres-base
team/apps/webapp

Nicht erlaubt:

_postgres          # muss mit Buchstabe beginnen
123-app             # muss mit Buchstabe beginnen
my app              # Leerzeichen
Demo GmbH           # unzulässige Sonderzeichen
my--app             # doppelter Bindestrich

Siehe auch