Langkau ke kandungan

Pengeluaran

Pakar

Jadikan binaan yang sudah diuji sebagai keluaran. Halaman ini untuk penyelenggara.

  • Setiap semakan dalam Pengujian lulus, termasuk larian hujung ke hujung penuh serta larian panjang dan larian kerosakan.
  • CHANGELOG.md mempunyai versi baharu.
  • Python 3 dipasang untuk skrip keluaran.

Sediakan satu keluaran

Pautan ke Sediakan satu keluaran
  1. Tulis releases/notes-<version>.toml, contohnya releases/notes-1.0.0.toml. Lihat Fail nota keluaran.

  2. Semak fail itu:

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

    Anda tidak akan nampak sebarang ralat. Perkataan yang dilarang, sengkang em, tarikh, bahasa pelancaran atau sorotan yang berulang akan keluar dengan kod 1.

  3. Bina teks keluaran:

    Terminal window
    python deploy/release/notes.py 1.0.0

    Anda akan jumpa 7 fail dalam releases/out/1.0.0/.

  4. Bina imej dan mulakannya pada folder konfigurasi yang baharu:

    Terminal window
    docker build --file deploy/Dockerfile .

    Anda akan nampak wizard larian pertama.

  5. Jalankan setiap semakan dalam Pengujian pada komputer anda. Ujian berjalan secara setempat, bukan di GitHub.

  6. Serahkan versi itu kepada penyelenggara. Penyelenggara menghantar teg versi pada main, dan itu memulakan keluaran.

Perkara Nama
Teg Git (dihantar oleh penyelenggara) 1.0.0 (nombor biasa, tanpa v)
Teg imej dan version dalam nota 1.0.0

Aliran kerja hanya bermula untuk teg X.Y.Z dan berhenti apabila teg berbeza daripada fail VERSION.

Setiap keluaran menghantar teg versinya dan :latest.

Tarik balik satu keluaran

Pautan ke Tarik balik satu keluaran
  1. Hantar versi seterusnya dengan pembetulan.
  2. Tandakan versi yang buruk dalam senarai kemas kini supaya pemasangan tidak menawarkannya.
  3. Kekalkan teg itu.

Jika tidak berfungsi

Pautan ke Jika tidak berfungsi

Gejala. notes.py --check keluar dengan kod 1. Punca. Fail nota melanggar satu peraturan. Mesej itu menamakan barisnya. Penyelesaian. Edit fail nota, jangan sekali-kali fail dalam releases/out, dan jalankan sekali lagi.

Gejala. Aliran kerja berhenti dengan VERSION says. Punca. Teg dan fail VERSION berbeza. Penyelesaian. Betulkan VERSION pada main dan hantar teg versi seterusnya.

Fail nota keluaran

Setiap teks keluaran datang daripada satu fail. Jangan edit sendiri hasil binaannya.

Medan Kandungan
version X.Y.Z biasa
theme Satu baris
images Senarai {registry, name}. Docker Hub holyarrs/holyarrs sahaja
docs_url Pilihan. Kosong bermakna tiada pautan Dokumentasi
[[highlights]] Tepat 3, masing-masing dengan line, issues dan shot. Isunya tidak muncul dalam mana-mana baris kumpulan
[groups] Baris bagi setiap tempat. Baharu ialah lalai. Yang lain bermula dengan Changed: , Fixed: atau Docs: . Setiap satu berakhir dengan isunya, seperti (#46). Tempat yang kurang daripada 3 baris masuk di bawah Also new
Pilihan [before_you_update] (breaking, manual_steps, backup, rollback), security, known_issues, credits, [stats]. Bahagian kosong disembunyikan

Gunakan nama pengguna GitHub hanya apabila ia diketahui, dalam fail nota atau dalam releases/credits-map.json.

Susunan isi: tema, Highlights, tempat (Requests, Library, Downloads, Indexers, Accounts, Health, Setup, Install), Also new, Security, Known issues, Before you update, Image, Thanks, baris statistik.

Output dalam releases/out/<version>/ Digunakan untuk
changelog.md Entri changelog
github.md Isi keluaran GitHub
update-notes.json Nota yang dipaparkan app
reddit.txt Pos Reddit
discord-dm.txt, discord-announce.md Discord. Setiap satu kekal di bawah 1,000 aksara
roadmap-card.json Kad pelan hala tuju

notes.py menerima --file (fail nota lain), --map (peta kredit lain), --out (folder output lain) dan --date. --check memberi amaran tentang baris yang panjang dan hampir berulang.

Aliran kerja imej

Aliran kerja HolyArrs - Release bermula apabila teg versi dihantar. Ia mempunyai tiga langkah:

  1. Bina dan hantar imej untuk linux/amd64, linux/arm64 dan linux/arm/v7, dengan teg versi dan latest.
  2. Kemas kini perihalan Docker Hub daripada README.md.
  3. Terbitkan keluaran GitHub dengan bahagian CHANGELOG.md bagi versi ini.
Senarai kemas kini

App membaca senarai kemas kini bertandatangan. Setiap keluaran menambah entrinya dan menandatanganinya. Kunci tandatangan tidak pernah masuk repo. HolyArrs menolak senarai yang tidak dapat disahkannya.

Selepas satu keluaran, semak bahawa label versi imej sepadan dengan teg, dan pantau isu baharu pada hari pertama:

Terminal window
docker inspect --format '{{ index .Config.Labels "org.opencontainers.image.version" }}' holyarrs
Templat ujian Unraid

deploy/release/nas-template.py menulis templat pengguna Unraid untuk satu imej yang tepat. Ia tidak menarik, memasang atau menerbitkan apa-apa.

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

Gantikan <digest> dan <pool>.

Bendera Nota
--image Digest manifes registri, bukan ID imej Docker
--config Laluan pool. Alat ini menolak /mnt/user dan /mnt/user0
--movies, --tv, --music, --downloads Pilihan. Laluan yang berasingan ialah pelekapan yang berasingan, jadi import menyalin
--port Lalai kepada 6262
--allowed-hosts Pilihan, nama hos dipisahkan dengan koma
--output Fail XML yang akan ditulis

Templat itu menetapkan PUID=99, PGID=100 dan UMASK=022. Beri akaun itu kebenaran menulis pada media ujian. Letakkan fail itu dalam /boot/config/plugins/dockerMan/templates-user/ dan pilihnya di bawah Docker > Add Container > Template (Docker > tambah kontena > templat).

HolyArrs percuma. Jika ia menjimatkan masa anda, beri bintang di GitHub, taja projek ini atau belanja saya kopi.