Edasi sisu juurde

Versiooni avaldamine

Asjatundja

Muuda testitud ehitus versiooniks. See leht on hooldajatele.

  • Kõik kontrollid lehel Testimine on läbitud, sealhulgas täielik otsast otsani jooksutus ning pikad ja tõrkejooksutused.
  • Failis CHANGELOG.md on uus versioon.
  • Python 3 on paigaldatud, sest versiooniskriptid vajavad seda.
  1. Kirjuta releases/notes-<version>.toml, näiteks releases/notes-1.0.0.toml. Vaata Versioonimärkmete fail.

  2. Kontrolli seda:

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

    Vigu ei tohiks tulla. Keelatud sõna, mõttekriips, kuupäev, käivitusjutt või korduv esiletõst lõpetab käsu koodiga 1.

  3. Ehita versiooni tekstid:

    Terminal window
    python deploy/release/notes.py 1.0.0

    Kaustas releases/out/1.0.0/ peaks olema 7 faili.

  4. Ehita image ja käivita see värskes seadete kaustas:

    Terminal window
    docker build --file deploy/Dockerfile .

    Näed esimese käivituse viisardit.

  5. Käivita oma arvutis kõik kontrollid lehelt Testimine. Testid jooksevad kohapeal, mitte GitHubis.

  6. Anna versioon hooldajale. Hooldaja saadab versioonisildi peaharule ja see käivitab versiooni.

Asi Nimi
Git silt (saadab hooldaja) 1.0.0 (lihtsad numbrid, ilma v-ta)
Image’i silt ja märkmete version 1.0.0

Töövoog käivitub ainult X.Y.Z sildi peale ja peatub, kui silt erineb failist VERSION.

Iga versioon saadab oma versioonisildi ja :latest.

  1. Saada järgmine versioon koos parandusega.
  2. Märgi halb versioon uuenduste loendis, et paigaldused seda ei pakuks.
  3. Jäta silt alles.

Sümptom. notes.py --check lõpetab koodiga 1. Põhjus. Märkmete fail rikub reeglit. Teade nimetab rea. Lahendus. Muuda märkmete faili, mitte faile kaustas releases/out, ja käivita uuesti.

Sümptom. Töövoog peatub teatega VERSION says. Põhjus. Silt ja fail VERSION erinevad. Lahendus. Paranda VERSION peaharul ja saada järgmine versioonisilt.

Versioonimärkmete fail

Iga versiooni tekst tuleb ühest failist. Ära muuda kunagi käsitsi seda, mis sellest ehitub.

Väli Sisu
version Lihtne X.Y.Z
theme Üks rida
images {registry, name} loend. Ainult Docker Hubi holyarrs/holyarrs
docs_url Valikuline. Tühi tähendab, et dokumentide linki ei ole
[[highlights]] Täpselt 3, igaühel line, issues ja shot. Nende issue’d ei ilmu üheski grupirea all
[groups] Read koha kohta. Uus on vaikimisi. Teised algavad Changed: , Fixed: või Docs: . Iga rida lõpeb oma issue’ga, näiteks (#46). Koht, kus on alla 3 rea, läheb jaotise Also new alla
Valikuline [before_you_update] (breaking, manual_steps, backup, rollback), security, known_issues, credits, [stats]. Tühjad osad peidetakse

Kasuta GitHubi kasutajanime ainult siis, kui see on teada, märkmete failis või failis releases/credits-map.json.

Teksti järjekord: teema, Highlights, kohad (Requests, Library, Downloads, Indexers, Accounts, Health, Setup, Install), Also new, Security, Known issues, Before you update, Image, Thanks, statistikarida.

Väljund kaustas releases/out/<version>/ Kasutatakse
changelog.md Muudatuste logi kirje
github.md GitHubi versiooni tekst
update-notes.json Märkmed, mida rakendus näitab
reddit.txt Redditi postitus
discord-dm.txt, discord-announce.md Discord. Kumbki jääb alla 1000 tähemärgi
roadmap-card.json Teekaardi kaart

notes.py võtab --file (teine märkmete fail), --map (teine tunnustuste kaart), --out (teine väljundkaust) ja --date. --check hoiatab pikkade ridade ja peaaegu kordade eest.

Image'i töövoog

Töövoog HolyArrs - Release käivitub, kui versioonisilt saadetakse. Sellel on kolm sammu:

  1. Ehita ja saada image platvormidele linux/amd64, linux/arm64 ja linux/arm/v7, versioonisildi ja latest’iga.
  2. Uuenda Docker Hubi kirjeldust failist README.md.
  3. Avalda GitHubi versioon selle versiooni CHANGELOG.md lõiguga.
Uuenduste loend

Rakendus loeb allkirjastatud uuenduste loendit. Iga versioon lisab oma kirje ja allkirjastab selle. Allkirjastamisvõti ei lähe kunagi repo sisse. HolyArrs keeldub loendist, mida ta ei saa kontrollida.

Pärast versiooni avaldamist kontrolli, et image’i versioonisilt vastab sildile, ja jälgi esimese päeva jooksul uusi issue’sid:

Terminal window
docker inspect --format '{{ index .Config.Labels "org.opencontainers.image.version" }}' holyarrs
Unraidi testmall

deploy/release/nas-template.py kirjutab Unraidi kasutajamalli ühe kindla image’i jaoks. See ei tõmba, paigalda ega avalda midagi.

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

Asenda <digest> ja <pool>.

Lipp Märkused
--image Registri manifesti digest, mitte Docker image’i ID
--config Pooli tee. Tööriist keeldub /mnt/user ja /mnt/user0
--movies, --tv, --music, --downloads Valikuline. Eraldi teed on eraldi haakepunktid, nii et import kopeerib
--port Vaikimisi 6262
--allowed-hosts Valikuline, komadega eraldatud hostinimed
--output XML-fail, mida kirjutada

Mall seab PUID=99, PGID=100 ja UMASK=022. Anna sellele kontole testmeediale kirjutusõigus. Pane fail kausta /boot/config/plugins/dockerMan/templates-user/ ja vali see valikust Docker > Add Container > Template (lisa konteiner > mall).

HolyArrs on tasuta. Kui see säästis sinu aega, anna talle GitHubis täht, toeta teda või osta mulle kohvi.