Versijų išleidimas
Pažengusiam
Paversk ištestuotą build versija. Šis puslapis skirtas prižiūrėtojams.
Prieš pradedant
Nuoroda į Prieš pradedant- Visos testavimo patikros praeina, įskaitant pilną end-to-end paleidimą ir ilgus bei fault bandymus.
CHANGELOG.mdturi naują versiją.- Release skriptams įdiegtas Python 3.
Paruošk versiją
Nuoroda į Paruošk versiją-
Parašyk
releases/notes-<version>.toml, pavyzdžiui,releases/notes-1.0.0.toml. Žiūrėk versijos aprašo failą. -
Patikrink jį:
Terminal window python deploy/release/notes.py 1.0.0 --checkTurėtum pamatyti, kad klaidų nėra. Uždraustas žodis, ilgasis brūkšnys, data, kalbos apie paleidimą ar pasikartojantis akcentas baigia darbą su kodu 1.
-
Sukurk versijos tekstus:
Terminal window python deploy/release/notes.py 1.0.0releases/out/1.0.0/turėtum rasti 7 failus. -
Sukompiliuok image ir paleisk jį su švariu konfigūracijos aplanku:
Terminal window docker build --file deploy/Dockerfile .Turėtum pamatyti pirmo paleidimo vedlį.
-
Savo kompiuteryje paleisk kiekvieną testavimo patikrą. Testai vykdomi vietoje, ne GitHub.
-
Perduok versiją prižiūrėtojui. Prižiūrėtojas main šakoje išsiunčia versijos tag, ir tai pradeda versijos išleidimą.
Pasirinkimai
Nuoroda į PasirinkimaiVersijų ir tag pavadinimai
Nuoroda į Versijų ir tag pavadinimai| Dalykas | Pavadinimas |
|---|---|
| Git tag (siunčia prižiūrėtojas) | 1.0.0 (paprasti skaičiai, be v) |
Image tag ir aprašo version |
1.0.0 |
Darbo eiga pasileidžia tik X.Y.Z tag ir sustoja, kai tag skiriasi nuo VERSION failo.
Image tag
Nuoroda į Image tagKiekviena versija išsiunčia savo versijos tag ir :latest.
Atšauk versiją
Nuoroda į Atšauk versiją- Išsiųsk kitą versiją su pataisymu.
- Pažymėk blogą versiją atnaujinimų sąraše, kad diegimai jos nesiūlytų.
- Palik tag.
Jei neveikia
Nuoroda į Jei neveikiaPožymis. notes.py --check baigia darbą su kodu 1.
Priežastis. Aprašo failas laužo taisyklę. Pranešime nurodyta eilutė.
Sprendimas. Taisyk aprašo failą, niekada ne failus releases/out, ir paleisk dar kartą.
Požymis. Darbo eiga sustoja su VERSION says.
Priežastis. Tag ir VERSION failas skiriasi.
Sprendimas. Pataisyk VERSION main šakoje ir išsiųsk kitą versijos tag.
Pažengusiems
Nuoroda į PažengusiemsVersijos aprašo failas
Kiekvienas versijos tekstas sukuriamas iš vieno failo. Niekada netaisyk rankomis to, ką jis sukuria.
| Laukas | Turinys |
|---|---|
version |
Paprastas X.Y.Z |
theme |
Viena eilutė |
images |
Sąrašas {registry, name}. Tik Docker Hub holyarrs/holyarrs |
docs_url |
Neprivaloma. Tuščias reiškia, kad Docs nuorodos nėra |
[[highlights]] |
Lygiai 3, kiekvienas su line, issues ir shot. Jų issues neatsiranda jokioje grupės eilutėje |
[groups] |
Eilutės kiekvienai vietai. New yra numatytoji. Kitos prasideda Changed: , Fixed: arba Docs: . Kiekviena baigiasi savo issue, pavyzdžiui, (#46). Vieta su mažiau nei 3 eilutėmis keliama į Also new |
| Neprivaloma | [before_you_update] (breaking, manual_steps, backup, rollback), security, known_issues, credits, [stats]. Tuščios dalys paslepiamos |
GitHub vardą naudok tik tada, kai jis žinomas, aprašo faile arba releases/credits-map.json.
Teksto tvarka: theme, Highlights, vietos (Requests, Library, Downloads, Indexers, Accounts, Health, Setup, Install), Also new, Security, Known issues, Before you update, Image, Thanks, stats eilutė.
Išvestis releases/out/<version>/ |
Skirta |
|---|---|
changelog.md |
Changelog įrašui |
github.md |
GitHub versijos tekstui |
update-notes.json |
Pastaboms, kurias rodo programa |
reddit.txt |
Reddit įrašui |
discord-dm.txt, discord-announce.md |
Discord. Kiekvienas lieka iki 1 000 simbolių |
roadmap-card.json |
Plano kortelei |
notes.py priima --file (kitas aprašo failas), --map (kitas padėkų žemėlapis), --out (kitas išvesties aplankas) ir --date. --check įspėja dėl ilgų eilučių ir beveik pasikartojančių.
Image darbo eiga
Darbo eiga HolyArrs - Release pasileidžia, kai išsiunčiamas versijos tag. Ji turi tris žingsnius:
- Sukompiliuoja ir išsiunčia image, skirtą
linux/amd64,linux/arm64irlinux/arm/v7, su versijos tag irlatest. - Atnaujina Docker Hub aprašą iš
README.md. - Paskelbia GitHub versiją su šios versijos
CHANGELOG.mdskyriumi.
Atnaujinimų sąrašas
Programa skaito pasirašytą atnaujinimų sąrašą. Kiekviena versija prideda savo įrašą ir jį pasirašo. Pasirašymo raktas niekada nepatenka į repo. HolyArrs atmeta sąrašą, kurio negali patikrinti.
Po versijos patikrink, ar image versijos žyma sutampa su tag, ir pirmą parą stebėk naujus issues:
docker inspect --format '{{ index .Config.Labels "org.opencontainers.image.version" }}' holyarrsUnraid testo šablonas
deploy/release/nas-template.py sukuria Unraid naudotojo šabloną vienam tiksliam image. Jis nieko nesiunčia, nediegia ir neskelbia.
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.xmlPakeisk <digest> ir <pool>.
| Vėliavėlė | Pastabos |
|---|---|
--image |
Registry manifest digest, ne Docker image ID |
--config |
Pool kelias. Įrankis atmeta /mnt/user ir /mnt/user0 |
--movies, --tv, --music, --downloads |
Neprivaloma. Atskiri keliai yra atskiri prijungimai, todėl importas kopijuoja |
--port |
Numatytasis 6262 |
--allowed-hosts |
Neprivaloma, kableliais atskirti host vardai |
--output |
XML failas, kurį rašyti |
Šablonas nustato PUID=99, PGID=100 ir UMASK=022. Suteik tai paskyrai rašymo teisę į testinę mediją. Failą padėk į /boot/config/plugins/dockerMan/templates-user/ ir pasirink jį skiltyje Docker > Add Container > Template (Docker > pridėti konteinerį > šablonas).
Susiję puslapiai
Nuoroda į Susiję puslapiaiHolyArrs yra nemokama. Jei sutaupė tau laiko, pažymėk jį žvaigždute GitHub, paremk jį arba nupirk man kavos.