Initialer Import. Unterstuetzt start/success/failure mit passenden Tags, Prioritaeten und optionalem Click-URL. Nutzt wget (im Runner- Image vorhanden) und defaulted auf den zentralen Topic vk-builds.
68 lines
2.3 KiB
Markdown
68 lines
2.3 KiB
Markdown
# ntfy-action
|
|
|
|
Zentrale Forgejo Composite Action für Build-Benachrichtigungen via [Ntfy](https://notify.data-it-solution.de).
|
|
|
|
## Voraussetzungen
|
|
|
|
- Secret `NTFY_AUTH` im Repo (oder auf Org-Ebene) gesetzt. Wert: `Basic <base64(user:pass)>`.
|
|
- Ntfy-Server läuft unter `https://notify.data-it-solution.de`, Topic-ACL ist im Ntfy-Container eingerichtet (siehe KB-Eintrag #188).
|
|
|
|
## Verwendung
|
|
|
|
```yaml
|
|
jobs:
|
|
build:
|
|
runs-on: docker
|
|
steps:
|
|
- uses: data/ntfy-action@main
|
|
with:
|
|
status: start
|
|
project: meinprojekt
|
|
ntfy_auth: ${{ secrets.NTFY_AUTH }}
|
|
run_number: ${{ github.run_number }}
|
|
message: ${{ github.event.head_commit.message }}
|
|
|
|
# ... hier dein Build ...
|
|
|
|
- uses: data/ntfy-action@main
|
|
if: success()
|
|
with:
|
|
status: success
|
|
project: meinprojekt
|
|
ntfy_auth: ${{ secrets.NTFY_AUTH }}
|
|
run_number: ${{ github.run_number }}
|
|
|
|
- uses: data/ntfy-action@main
|
|
if: failure()
|
|
with:
|
|
status: failure
|
|
project: meinprojekt
|
|
ntfy_auth: ${{ secrets.NTFY_AUTH }}
|
|
run_number: ${{ github.run_number }}
|
|
click_url: https://git.data-it-solution.de/${{ github.repository }}/actions
|
|
```
|
|
|
|
## Inputs
|
|
|
|
| Name | Pflicht | Default | Beschreibung |
|
|
|---|---|---|---|
|
|
| `status` | ja | — | `start`, `success` oder `failure` |
|
|
| `project` | ja | — | Projektname für Titel und Tag |
|
|
| `ntfy_auth` | ja | — | Basic-Auth-Header-Wert aus Secret |
|
|
| `topic` | nein | `vk-builds` | Ntfy-Topic |
|
|
| `message` | nein | `#<run>` | Freie Nachricht (z. B. Commit-Message) |
|
|
| `run_number` | nein | — | Workflow-Run-Nummer |
|
|
| `click_url` | nein | — | URL beim Klick auf die Notification |
|
|
| `ntfy_server` | nein | `https://notify.data-it-solution.de` | Server-URL |
|
|
|
|
## Topic-Konvention
|
|
|
|
Per Default wird `vk-builds` als Sammel-Topic verwendet, damit du alle Build-Benachrichtigungen in einem einzigen Abo im Browser/Handy bekommst. Für projekt-spezifische Kanäle einfach `topic:` überschreiben.
|
|
|
|
## Status-Mapping
|
|
|
|
| Status | Priority | Tags | Titel |
|
|
|---|---|---|---|
|
|
| `start` | default | 🔧 hammer_and_wrench | `<project> Build gestartet` |
|
|
| `success` | high | ✅ white_check_mark | `<project> Build erfolgreich` |
|
|
| `failure` | urgent | ❌ rotating_light | `<project> Build FEHLGESCHLAGEN` |
|