Izdavanje verzija
Napredno
Pretvori testirani build u verziju. Ova stranica je za maintainere.
Prije nego počneš
Poveznica na Prije nego počneš- Svaka provjera iz Testiranja prolazi, uključujući potpuno end-to-end pokretanje te duga i fault pokretanja.
CHANGELOG.mdima novu verziju.- Python 3 je instaliran za skripte za izdavanje.
Pripremi verziju
Poveznica na Pripremi verziju-
Napiši
releases/notes-<version>.toml, na primjerreleases/notes-1.0.0.toml. Vidi Datoteka s bilješkama uz verziju. -
Provjeri je:
Terminal window python deploy/release/notes.py 1.0.0 --checkNe bi smjelo biti grešaka. Zabranjena riječ, duga crtica, datum, govor o lansiranju ili ponovljeni highlight završavaju s izlaznim kodom 1.
-
Izgradi tekstove verzije:
Terminal window python deploy/release/notes.py 1.0.0Vidjet ćeš 7 datoteka u
releases/out/1.0.0/. -
Izgradi image i pokreni ga na svježoj mapi s konfiguracijom:
Terminal window docker build --file deploy/Dockerfile .Vidjet ćeš čarobnjak za prvo pokretanje.
-
Pokreni svaku provjeru iz Testiranja na svom računalu. Testovi se izvode lokalno, ne na GitHubu.
-
Predaj verziju maintaineru. Maintainer pusha tag verzije na main i time pokreće izdavanje.
Izbori
Poveznica na IzboriImena verzija i tagova
Poveznica na Imena verzija i tagova| Što | Ime |
|---|---|
| Git tag (pusha ga maintainer) | 1.0.0 (obični brojevi, bez v) |
Tag imagea i version u bilješkama |
1.0.0 |
Workflow se pokreće samo za tag oblika X.Y.Z i staje kad se tag razlikuje od datoteke VERSION.
Tagovi imagea
Poveznica na Tagovi imageaSvaka verzija pusha svoj tag verzije i :latest.
Povuci verziju
Poveznica na Povuci verziju- Pushaj sljedeću verziju s popravkom.
- Označi lošu verziju u popisu ažuriranja da je instalacije ne nude.
- Zadrži tag.
Ako ne radi
Poveznica na Ako ne radiSimptom. notes.py --check završava s kodom 1.
Uzrok. Datoteka s bilješkama krši pravilo. Poruka navodi redak.
Rješenje. Uredi datoteku s bilješkama, nikad datoteke u releases/out, i pokreni ponovno.
Simptom. Workflow staje s porukom VERSION says.
Uzrok. Tag i datoteka VERSION se razlikuju.
Rješenje. Popravi VERSION na mainu i pushaj tag sljedeće verzije.
Za napredne
Poveznica na Za napredneDatoteka s bilješkama uz verziju
Svaki tekst verzije dolazi iz jedne datoteke. Nikad ručno ne uređuj ono što ona izgradi.
| Polje | Sadržaj |
|---|---|
version |
Obični X.Y.Z |
theme |
Jedan redak |
images |
Popis {registry, name}. Samo Docker Hub holyarrs/holyarrs |
docs_url |
Neobavezno. Prazno znači bez poveznice na dokumentaciju |
[[highlights]] |
Točno 3, svaki s line, issues i shot. Njihovi issueji se ne pojavljuju ni u jednom retku skupine |
[groups] |
Retci po mjestu. New je zadano. Ostali počinju s Changed: , Fixed: ili Docs: . Svaki završava svojim issueom, na primjer (#46). Mjesto s manje od 3 retka ide pod Also new |
| Neobavezno | [before_you_update] (breaking, manual_steps, backup, rollback), security, known_issues, credits, [stats]. Prazni dijelovi se skrivaju |
GitHub login koristi samo kad je poznat, u datoteci s bilješkama ili u releases/credits-map.json.
Redoslijed teksta: theme, Highlights, mjesta (Requests, Library, Downloads, Indexers, Accounts, Health, Setup, Install), Also new, Security, Known issues, Before you update, Image, Thanks, redak sa statistikom.
Izlaz u releases/out/<version>/ |
Koristi se za |
|---|---|
changelog.md |
Unos u changelog |
github.md |
Tekst GitHub verzije |
update-notes.json |
Bilješke koje prikazuje aplikacija |
reddit.txt |
Reddit objavu |
discord-dm.txt, discord-announce.md |
Discord. Svaki ostaje ispod 1.000 znakova |
roadmap-card.json |
Karticu roadmapa |
notes.py prima --file (druga datoteka s bilješkama), --map (druga mapa zasluga), --out (druga izlazna mapa) i --date. --check upozorava na duge retke i skoro ponavljanja.
Workflow za image
Workflow HolyArrs - Release pokreće se kad se pushne tag verzije. Ima tri koraka:
- Izgradi i pushaj image za
linux/amd64,linux/arm64ilinux/arm/v7, s tagom verzije ilatest. - Ažuriraj opis na Docker Hubu iz
README.md. - Objavi GitHub verziju s odjeljkom
CHANGELOG.mdza ovu verziju.
Popis ažuriranja
Aplikacija čita potpisani popis ažuriranja. Svaka verzija dodaje svoj unos i potpisuje ga. Ključ za potpisivanje nikad ne ide u repozitorij. HolyArrs odbija popis koji ne može provjeriti.
Nakon verzije provjeri da se oznaka verzije imagea podudara s tagom i prvi dan prati nove issuee:
docker inspect --format '{{ index .Config.Labels "org.opencontainers.image.version" }}' holyarrsUnraid testni predložak
deploy/release/nas-template.py piše Unraid korisnički predložak za jedan točno određen image. Ništa ne preuzima, ne instalira ni ne objavljuje.
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.xmlZamijeni <digest> i <pool>.
| Zastavica | Napomene |
|---|---|
--image |
Digest manifesta u registryju, ne ID Docker imagea |
--config |
Putanja na poolu. Alat odbija /mnt/user i /mnt/user0 |
--movies, --tv, --music, --downloads |
Neobavezno. Odvojene putanje su odvojeni mountovi, pa se uvoz kopira |
--port |
Prema zadanim postavkama 6262 |
--allowed-hosts |
Neobavezno, imena hostova odvojena zarezom |
--output |
XML datoteka koju treba napisati |
Predložak postavlja PUID=99, PGID=100 i UMASK=022. Daj tom računu pravo pisanja na testne medije. Stavi datoteku u /boot/config/plugins/dockerMan/templates-user/ i odaberi je pod Docker > Add Container > Template (Docker > Dodaj container > Predložak).
Povezane stranice
Poveznica na Povezane straniceHolyArrs je besplatan. Ako ti je uštedio vrijeme, daj mu zvjezdicu na GitHubu, podrži ga ili počasti me kavom.