65 lines
2.3 KiB
Markdown
65 lines
2.3 KiB
Markdown
---
|
||
name: ship
|
||
description: "CoPuPi-Workflow: Commit, Mac-Build-Test, Push zu Forgejo. Verwende diesen Skill für alles rund um das Ausliefern von Code – git push, Version hochzählen. Trigger-Phrasen: 'ship', 'push', 'pipeline', 'CI', 'deployen', 'ausliefern', 'version bump'."
|
||
---
|
||
|
||
# Skill: Ship (CoPuPi-Workflow)
|
||
|
||
Dieser Skill kapselt Tools und Konventionen für den Ship-Workflow – den Weg vom lokalen Commit bis zum Push nach Forgejo (`git.bollwerk.online`).
|
||
|
||
Der vollständige Workflow wird über `.github/prompts/ship.prompt.md` gesteuert.
|
||
|
||
---
|
||
|
||
## Enthaltene Tools
|
||
|
||
### `watch-pipeline.ps1`
|
||
|
||
Beobachtet den neuesten Forgejo Actions Run bis zum Abschluss. Gibt Status, Dauer und Warnungen aus.
|
||
|
||
**Aufruf:**
|
||
|
||
```powershell
|
||
# Standard: 15s warten, dann neuesten Run beobachten (nach Push)
|
||
& ".github/skills/ship/watch-pipeline.ps1"
|
||
|
||
# Run existiert bereits – sofort starten
|
||
& ".github/skills/ship/watch-pipeline.ps1" -WaitForNew 0
|
||
|
||
# Bestimmten Commit verfolgen (wartet bis Run erscheint)
|
||
& ".github/skills/ship/watch-pipeline.ps1" -ExpectedSha abc1234
|
||
|
||
# Längerer Timeout (Default: 300s)
|
||
& ".github/skills/ship/watch-pipeline.ps1" -Timeout 600
|
||
```
|
||
|
||
**Parameter:**
|
||
|
||
| Parameter | Default | Beschreibung |
|
||
| -------------- | ------- | --------------------------------------------------------------------- |
|
||
| `-WaitForNew` | 15 | Sekunden Wartezeit nach Push, bis Run erscheint. 0 = sofort. |
|
||
| `-Timeout` | 300 | Maximale Wartezeit in Sekunden bis zum Abschluss. |
|
||
| `-ExpectedSha` | – | Git-SHA (kurz/lang). Wartet bis Run mit diesem SHA erscheint (60s). |
|
||
|
||
**Exit-Codes:**
|
||
|
||
| Code | Bedeutung |
|
||
| ---- | ------------------------------------------------------ |
|
||
| 0 | Pipeline grün (success) |
|
||
| 1 | Pipeline fehlgeschlagen (failure/cancelled) |
|
||
| 2 | Timeout – Run läuft noch |
|
||
| 0 | Kein Run für SHA gefunden (Pfad-Filter, kein Trigger) |
|
||
|
||
**Ausgabe:** Run-ID, Name, SHA, Statusmeldung, Warnungen aus Annotations.
|
||
|
||
---
|
||
|
||
## Verwendung im Ship-Prompt
|
||
|
||
Schritt 4 des `ship.prompt.md` ruft das Skript auf:
|
||
|
||
```powershell
|
||
& ".github/skills/ship/watch-pipeline.ps1"
|
||
```
|
||
|
||
Verwende `mode=sync` mit `timeout=300000` beim Aufruf über `run_in_terminal`.
|