SD-2: Build- und Deploy-Infrastruktur für lokale Entwicklung #2

Closed
opened 2026-08-14 10:32:27 +02:00 by martin · 0 comments
Owner

User Story

Als Entwickler möchte ich Plugins und Profile lokal bauen und auf mein angeschlossenes Stream Deck+ deployen, damit ich Änderungen ohne manuelles Kopieren testen kann.

Acceptance Criteria

  • Szenario: Plugin lokal bauen und verlinken
    • Gegeben ein Plugin-Paket im Monorepo
    • Wenn ich den Build-Task für dieses Paket ausführe
    • Dann entsteht ein gültiges .sdPlugin-Verzeichnis, das per streamdeck link in der lokalen Stream-Deck-App verfügbar ist
  • Szenario: Profil lokal erzeugen und importieren
    • Gegeben ein Profil-Quellverzeichnis unter profiles/
    • Wenn ich den Profil-Build für dieses Profil ausführe
    • Dann entsteht ein importierbares .streamDeckProfile-Bundle im ignorierten Output-Verzeichnis
  • Szenario: Einzelnes Artefakt releasen
    • Gegeben ein Tag mit dem Prefix eines einzelnen Pakets oder Profils
    • Wenn die Forgejo-Actions-Pipeline läuft
    • Dann wird ausschließlich dieses Artefakt gebaut und als Release-Asset veröffentlicht
  • Szenario: Ungültiges Plugin
    • Gegeben ein Plugin mit fehlerhaftem Manifest
    • Wenn der Build läuft
    • Dann bricht er mit einer verständlichen Validierungsmeldung ab und es entsteht kein Artefakt
  • Szenario: Kein Gerät angeschlossen
    • Gegeben die CI-Umgebung ohne Stream Deck und ohne Elgato-App
    • Wenn die Pipeline läuft
    • Dann laufen Build und Validierung durch, der Deploy-Schritt bleibt bewusst lokal

Dependencies

  • #1 SD-1: Bestehende Profile versioniert sichern (Profile müssen als Quelldateien vorliegen, bevor sie gebaut werden können)

Definition of Done

  • Alle Acceptance Criteria erfüllt
  • Tests grün (Happy Path + relevante Fehlerfälle)
  • Doku / Templates angepasst, wo nötig
## User Story Als Entwickler möchte ich Plugins und Profile lokal bauen und auf mein angeschlossenes Stream Deck+ deployen, damit ich Änderungen ohne manuelles Kopieren testen kann. ## Acceptance Criteria - **Szenario:** Plugin lokal bauen und verlinken - **Gegeben** ein Plugin-Paket im Monorepo - **Wenn** ich den Build-Task für dieses Paket ausführe - **Dann** entsteht ein gültiges `.sdPlugin`-Verzeichnis, das per `streamdeck link` in der lokalen Stream-Deck-App verfügbar ist - **Szenario:** Profil lokal erzeugen und importieren - **Gegeben** ein Profil-Quellverzeichnis unter `profiles/` - **Wenn** ich den Profil-Build für dieses Profil ausführe - **Dann** entsteht ein importierbares `.streamDeckProfile`-Bundle im ignorierten Output-Verzeichnis - **Szenario:** Einzelnes Artefakt releasen - **Gegeben** ein Tag mit dem Prefix eines einzelnen Pakets oder Profils - **Wenn** die Forgejo-Actions-Pipeline läuft - **Dann** wird ausschließlich dieses Artefakt gebaut und als Release-Asset veröffentlicht - **Szenario:** Ungültiges Plugin - **Gegeben** ein Plugin mit fehlerhaftem Manifest - **Wenn** der Build läuft - **Dann** bricht er mit einer verständlichen Validierungsmeldung ab und es entsteht kein Artefakt - **Szenario:** Kein Gerät angeschlossen - **Gegeben** die CI-Umgebung ohne Stream Deck und ohne Elgato-App - **Wenn** die Pipeline läuft - **Dann** laufen Build und Validierung durch, der Deploy-Schritt bleibt bewusst lokal ## Dependencies - #1 SD-1: Bestehende Profile versioniert sichern (Profile müssen als Quelldateien vorliegen, bevor sie gebaut werden können) ## Definition of Done - [ ] Alle Acceptance Criteria erfüllt - [ ] Tests grün (Happy Path + relevante Fehlerfälle) - [ ] Doku / Templates angepasst, wo nötig
martin changed title from Build- und Deploy-Infrastruktur für lokale Entwicklung to SD-2: Build- und Deploy-Infrastruktur für lokale Entwicklung 2026-08-14 10:32:30 +02:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
keineantwort.de/streamdeck-plugins#2
No description provided.