Zápis vydání a nasazení z GitHub Actions
Zapisujte vydání a nasazení do AboutTheApp z GitHub Actions. Akce uloží každou verzi s poznámkami k vydání a informaci, kde běží.
Co akce zapisuje
Akce vždy zaregistruje verzi produktu s jejím changelogem. Pokud předáte i customer-alias a environment, zapíše také instalaci této verze u zákazníka. Dashboard a About page zákazníka pak ukazují, jaká verze běží na kterém prostředí.
Opakovaná registrace stejné verze jen aktualizuje její changelog. Instalace se ukládají jako historie, takže každý běh s customer-alias a environment přidá nový záznam, i při opakovaném spuštění workflow.
Nastavení GitHub Action ve 3 krocích
Akce je zveřejněná v GitHub Marketplace jako abouttheapp/sync. Zdrojový kód a popis všech vstupů najdete v repozitáři abouttheapp/sync.
- 1
Vytvořte token pro CI/CD
V dashboardu AboutTheApp otevřete uživatelské menu, zvolte Účet a v sekci CI/CD vygenerujte klíč. Může to udělat jen vlastník účtu a klíč se zobrazí jen jednou.
- 2
Uložte ho jako secret
Uložte klíč do repozitáře jako secret ABOUTTHEAPP_TOKEN pro Actions. Jeden klíč platí pro všechny produkty v účtu a vygenerováním nového přestane starý fungovat.
- 3
Přidejte krok za nasazení
Vložte abouttheapp/sync@v1 za kroky, které aplikaci nasazují, aby se zapisovala jen úspěšná nasazení. Produkt a zákazník už musí v AboutTheApp existovat a zákazník musí mít alias.
name: Release
on:
push:
tags: ["v*"]
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Resolve release metadata
id: release
run: |
echo "version=${GITHUB_REF_NAME#v}" >> "$GITHUB_OUTPUT"
echo "previous-tag=$(git describe --tags --match 'v*' --abbrev=0 HEAD^ 2>/dev/null || true)" >> "$GITHUB_OUTPUT"
# ... kroky pro sestavení a nasazení ...
- name: Report release to AboutTheApp
uses: abouttheapp/sync@v1
with:
token: ${{ secrets.ABOUTTHEAPP_TOKEN }}
alias: my-app
version: ${{ steps.release.outputs.version }}
changelog-source: git-log
changelog-since: ${{ steps.release.outputs.previous-tag }}
version-visibility: public
customer-alias: acme
environment: productionPoznámky k vydání z Gitu, souboru nebo textu
Pokud nastavíte changelog-source: git-log, sestaví se poznámky z commitů od tagu uvedeného v changelog-since. Checkout pak potřebuje fetch-depth: 0. Pokud nastavíte changelog-source: file, akce použije sekci souboru ve formátu Keep a Changelog, jejíž nadpis odpovídá verzi, například ## [1.2.3]. Text můžete předat i přímo ve vstupu changelog.
Nové verze jsou ve výchozím stavu neveřejné. Pokud je chcete zobrazit na veřejné About page, přidejte version-visibility: public. Pokud si nejste jistí, co do poznámek psát, použijte šablonu poznámek k vydání.
Zápis jen skutečně běžících nasazení
Pokud nastavíte verify-url, akce nejdřív počká, až nasazená aplikace vrátí novou verzi, například v souboru version.json. Pokud aplikace do vypršení verify-timeout (ve výchozím stavu 300 sekund) vrací jinou verzi, krok selže a nic se nezapíše.
Adresa musí odpovídat bez přihlášení. Odpovědí může být JSON jako {"version": "1.2.3"} nebo text, jehož první řádek je verze. Pokud vaše aplikace verzi zatím nezveřejňuje, přečtěte si článek Zobrazení verze aplikace.
- name: Report release to AboutTheApp
uses: abouttheapp/sync@v1
with:
token: ${{ secrets.ABOUTTHEAPP_TOKEN }}
alias: my-app
version: 1.2.3
customer-alias: acme
environment: production
verify-url: https://app.example.com/version.jsonČasté otázky
Vytvoří akce produkt nebo zákazníka?
Nevytvoří. Obojí musí v AboutTheApp existovat a zákazník musí mít alias. Chybějící produkt nebo zákazník způsobí selhání kroku s chybou HTTP 404.
Potřebuje akce GitHub Release?
Nepotřebuje. Akce běží v libovolném workflow, například po vytvoření tagu v Gitu. Potřebuje jen řetězec verze, který workflow může vzít z tagu, z package.json nebo z čísla sestavení.
Můžu zapisovat vydání i z jiných CI systémů?
Ano. Akce volá CI/CD API AboutTheApp, které můžete se stejným klíčem volat přes curl i z GitLab CI, Azure Pipelines nebo jiného systému. Sekce CI/CD v dashboardu ukazuje připravené příkazy curl.
Je akce dostupná i v tarifu Free?
Ano. Akce je open source a CI/CD API je dostupné ve všech tarifech včetně Free.
Chcete historii vydání bez ručních úprav?
Založte si zdarma produkt v AboutTheApp, vygenerujte klíč pro CI/CD a přidejte akci do svého workflow.