Preskočiť na obsah

Vydávanie verzií

Expert

Zmeň otestovaný build na vydanú verziu. Táto stránka je pre správcov.

Skôr než začneš

Odkaz na Skôr než začneš
  • Každá kontrola zo stránky Testovanie prejde, vrátane úplného end-to-end behu a dlhých behov a behov s poruchami.
  • CHANGELOG.md obsahuje novú verziu.
  • Na skripty pre vydanie je nainštalovaný Python 3.
  1. Napíš releases/notes-<version>.toml, napríklad releases/notes-1.0.0.toml. Pozri Súbor s poznámkami k verzii.

  2. Skontroluj ho:

    Terminal window
    python deploy/release/notes.py 1.0.0 --check

    Nemali by sa zobraziť žiadne chyby. Zakázané slovo, em pomlčka, dátum, reč o štarte alebo opakovaný highlight skončí kódom 1.

  3. Vytvor texty k vydaniu:

    Terminal window
    python deploy/release/notes.py 1.0.0

    V releases/out/1.0.0/ nájdeš 7 súborov.

  4. Zostav image a spusti ho s čerstvým konfiguračným priečinkom:

    Terminal window
    docker build --file deploy/Dockerfile .

    Mal by si vidieť sprievodcu prvým spustením.

  5. Spusti na svojom počítači každú kontrolu zo stránky Testovanie. Testy bežia lokálne, nie na GitHube.

  6. Odovzdaj verziu správcovi. Správca pushne tag verzie na main a tým sa vydanie spustí.

Názvy verzie a tagu

Odkaz na Názvy verzie a tagu
Vec Názov
Tag v Gite (pushuje ho správca) 1.0.0 (obyčajné čísla, bez v)
Tag image a version v poznámkach 1.0.0

Workflow sa spustí iba pre tag X.Y.Z a zastaví sa, keď sa tag líši od súboru VERSION.

Každé vydanie pushne svoj tag verzie a :latest.

Stiahnutie verzie späť

Odkaz na Stiahnutie verzie späť
  1. Pushni ďalšiu verziu s opravou.
  2. Označ zlú verziu v zozname aktualizácií, aby ju inštalácie neponúkali.
  3. Tag nechaj.

Príznak. notes.py --check skončí kódom 1. Príčina. Súbor s poznámkami porušuje pravidlo. Správa pomenuje riadok. Riešenie. Uprav súbor s poznámkami, nikdy súbory v releases/out, a spusti to znova.

Príznak. Workflow sa zastaví s VERSION says. Príčina. Tag a súbor VERSION sa líšia. Riešenie. Oprav VERSION na main a pushni tag ďalšej verzie.

Súbor s poznámkami k verzii

Každý text k vydaniu vzniká z jedného súboru. Nikdy needituj ručne to, čo vytvorí.

Pole Obsah
version Obyčajné X.Y.Z
theme Jeden riadok
images Zoznam {registry, name}. Iba Docker Hub holyarrs/holyarrs
docs_url Voliteľné. Prázdne znamená žiadny odkaz na dokumentáciu
[[highlights]] Presne 3, každý s line, issues a shot. Ich issues sa neobjavia v žiadnom riadku skupiny
[groups] Riadky podľa miesta. New je predvolené. Ostatné začínajú Changed: , Fixed: alebo Docs: . Každý končí svojím issue, napríklad (#46). Miesto s menej než 3 riadkami ide pod Also new
Voliteľné [before_you_update] (breaking, manual_steps, backup, rollback), security, known_issues, credits, [stats]. Prázdne časti sa skryjú

GitHub login použi, iba keď je známy, v súbore s poznámkami alebo v releases/credits-map.json.

Poradie textu: theme, Highlights, miesta (Requests, Library, Downloads, Indexers, Accounts, Health, Setup, Install), Also new, Security, Known issues, Before you update, Image, Thanks, riadok so štatistikami.

Výstup v releases/out/<version>/ Použitie
changelog.md Záznam v changelogu
github.md Text vydania na GitHube
update-notes.json Poznámky, ktoré zobrazuje aplikácia
reddit.txt Príspevok na Reddit
discord-dm.txt, discord-announce.md Discord. Každý ostane pod 1 000 znakov
roadmap-card.json Karta plánu vývoja

notes.py berie --file (iný súbor s poznámkami), --map (inú mapu kreditov), --out (iný výstupný priečinok) a --date. --check varuje pri dlhých riadkoch a takmer zhodných opakovaniach.

Workflow pre image

Workflow HolyArrs - Release sa spustí, keď sa pushne tag verzie. Má tri kroky:

  1. Zostaví a pushne image pre linux/amd64, linux/arm64 a linux/arm/v7 s tagom verzie a latest.
  2. Aktualizuje popis na Docker Hub z README.md.
  3. Publikuje vydanie na GitHube so sekciou CHANGELOG.md pre túto verziu.
Zoznam aktualizácií

Aplikácia číta podpísaný zoznam aktualizácií. Každé vydanie pridá svoj záznam a podpíše ho. Podpisový kľúč nikdy nepatrí do repozitára. HolyArrs odmietne zoznam, ktorý nevie overiť.

Po vydaní skontroluj, či sa štítok verzie image zhoduje s tagom, a prvý deň sleduj nové issues:

Terminal window
docker inspect --format '{{ index .Config.Labels "org.opencontainers.image.version" }}' holyarrs
Testovacia šablóna pre Unraid

deploy/release/nas-template.py zapíše používateľskú šablónu Unraid pre jeden presný image. Nič nestiahne, nenainštaluje ani nepublikuje.

Terminal window
python deploy/release/nas-template.py --image 'holyarrs/holyarrs@sha256:<digest>' --config '/mnt/<pool>/appdata/holyarrs-test' --movies /mnt/user/holyarrs-test-data/movies --downloads /mnt/user/holyarrs-test-data/downloads --port 6262 --output holyarrs-test.xml

Nahraď <digest> a <pool>.

Prepínač Poznámky
--image Digest manifestu v registri, nie ID image v Dockeri
--config Cesta na pool. Nástroj odmietne /mnt/user a /mnt/user0
--movies, --tv, --music, --downloads Voliteľné. Oddelené cesty sú oddelené pripojenia, takže importy kopírujú
--port Predvolene 6262
--allowed-hosts Voliteľné, názvy hostiteľov oddelené čiarkou
--output Súbor XML, ktorý sa zapíše

Šablóna nastaví PUID=99, PGID=100 a UMASK=022. Daj tomuto účtu prístup na zápis k testovacím médiám. Súbor vlož do /boot/config/plugins/dockerMan/templates-user/ a vyber ho v Docker > Add Container > Template (Docker > pridať kontajner > šablóna).

Súvisiace stránky

Odkaz na Súvisiace stránky

HolyArrs je zadarmo. Ak ti ušetril čas, daj mu hviezdičku na GitHube, podpor ho alebo kúp mi kávu.