Phát hành
Nâng cao
Biến một bản build đã kiểm thử thành một phiên bản. Trang này dành cho người bảo trì.
Trước khi bắt đầu
Liên kết tới Trước khi bắt đầu- Mọi bước kiểm tra trong Kiểm thử đều đạt, kể cả một lần chạy end-to-end đầy đủ và các lần chạy dài và chạy lỗi.
CHANGELOG.mdđã có phiên bản mới.- Python 3 đã được cài cho các script phát hành.
Chuẩn bị một phiên bản
Liên kết tới Chuẩn bị một phiên bản-
Viết
releases/notes-<version>.toml, ví dụreleases/notes-1.0.0.toml. Xem Tệp ghi chú phiên bản. -
Kiểm tra nó:
Terminal window python deploy/release/notes.py 1.0.0 --checkBạn sẽ không thấy lỗi nào. Một từ bị cấm, dấu gạch ngang dài, ngày tháng, lời quảng bá ra mắt hay một điểm nổi bật bị lặp sẽ làm lệnh thoát với mã 1.
-
Tạo các văn bản phát hành:
Terminal window python deploy/release/notes.py 1.0.0Bạn sẽ thấy 7 tệp trong
releases/out/1.0.0/. -
Build image và khởi động nó với một thư mục cấu hình mới:
Terminal window docker build --file deploy/Dockerfile .Bạn sẽ thấy trình hướng dẫn lần chạy đầu tiên.
-
Chạy mọi bước kiểm tra trong Kiểm thử trên máy của bạn. Các bài kiểm thử chạy trên máy, không chạy trên GitHub.
-
Giao số phiên bản cho người bảo trì. Người bảo trì đẩy tag phiên bản lên main, và việc đó bắt đầu quá trình phát hành.
Lựa chọn
Liên kết tới Lựa chọnTên phiên bản và tag
Liên kết tới Tên phiên bản và tag| Thứ | Tên |
|---|---|
| Git tag (do người bảo trì đẩy lên) | 1.0.0 (số thuần, không có v) |
Tag của image và version trong ghi chú |
1.0.0 |
Quy trình chỉ bắt đầu với tag dạng X.Y.Z và dừng khi tag khác với tệp VERSION.
Tag của image
Liên kết tới Tag của imageMỗi phiên bản đẩy lên tag phiên bản của nó và :latest.
Thu hồi một phiên bản
Liên kết tới Thu hồi một phiên bản- Đẩy phiên bản kế tiếp kèm bản sửa.
- Đánh dấu phiên bản lỗi trong danh sách cập nhật để các bản cài không đề nghị nó.
- Giữ lại tag.
Nếu không hoạt động
Liên kết tới Nếu không hoạt độngTriệu chứng. notes.py --check thoát với mã 1.
Nguyên nhân. Tệp ghi chú vi phạm một quy tắc. Thông báo nêu rõ dòng nào.
Cách khắc phục. Sửa tệp ghi chú, đừng bao giờ sửa các tệp trong releases/out, rồi chạy lại.
Triệu chứng. Quy trình dừng với thông báo VERSION says.
Nguyên nhân. Tag và tệp VERSION khác nhau.
Cách khắc phục. Sửa VERSION trên main và đẩy tag phiên bản kế tiếp.
Dành cho người dùng nâng cao
Liên kết tới Dành cho người dùng nâng caoTệp ghi chú phiên bản
Mọi văn bản phát hành đều sinh ra từ một tệp. Đừng bao giờ sửa tay những gì nó tạo ra.
| Trường | Nội dung |
|---|---|
version |
X.Y.Z thuần |
theme |
Một dòng |
images |
Danh sách {registry, name}. Chỉ Docker Hub holyarrs/holyarrs |
docs_url |
Tùy chọn. Để trống nghĩa là không có liên kết Docs |
[[highlights]] |
Đúng 3, mỗi cái có line, issues và shot. Các issue của chúng không xuất hiện trong dòng của nhóm nào |
[groups] |
Các dòng theo từng chuyên mục. New là mặc định. Các mục khác bắt đầu bằng Changed: , Fixed: hoặc Docs: . Mỗi dòng kết thúc bằng issue của nó, như (#46). Một chuyên mục dưới 3 dòng sẽ được đưa vào Also new |
| Tùy chọn | [before_you_update] (breaking, manual_steps, backup, rollback), security, known_issues, credits, [stats]. Phần trống sẽ bị ẩn |
Chỉ dùng tên GitHub khi biết chắc, trong tệp ghi chú hoặc trong releases/credits-map.json.
Thứ tự phần thân: theme, Highlights, các chuyên mục (Requests, Library, Downloads, Indexers, Accounts, Health, Setup, Install), Also new, Security, Known issues, Before you update, Image, Thanks, dòng thống kê.
Đầu ra trong releases/out/<version>/ |
Dùng cho |
|---|---|
changelog.md |
Mục trong changelog |
github.md |
Phần thân của bản phát hành trên GitHub |
update-notes.json |
Ghi chú mà ứng dụng hiển thị |
reddit.txt |
Bài đăng trên Reddit |
discord-dm.txt, discord-announce.md |
Discord. Mỗi tệp dưới 1.000 ký tự |
roadmap-card.json |
Thẻ lộ trình |
notes.py nhận --file (một tệp ghi chú khác), --map (một bản đồ ghi công khác), --out (một thư mục đầu ra khác) và --date. --check cảnh báo về dòng quá dài và các dòng gần giống nhau.
Quy trình đăng image
Quy trình HolyArrs - Release bắt đầu khi một tag phiên bản được đẩy lên. Nó có ba bước:
- Build và đẩy image cho
linux/amd64,linux/arm64vàlinux/arm/v7, kèm tag phiên bản vàlatest. - Cập nhật phần mô tả trên Docker Hub từ
README.md. - Đăng bản phát hành trên GitHub với phần của phiên bản này trong
CHANGELOG.md.
Danh sách cập nhật
Ứng dụng đọc một danh sách cập nhật có chữ ký. Mỗi phiên bản thêm mục của nó và ký lên. Khóa ký không bao giờ nằm trong repo. HolyArrs từ chối một danh sách mà nó không xác minh được.
Sau một phiên bản, hãy kiểm tra nhãn phiên bản của image khớp với tag, và theo dõi các issue mới trong ngày đầu:
docker inspect --format '{{ index .Config.Labels "org.opencontainers.image.version" }}' holyarrsMẫu thử cho Unraid
deploy/release/nas-template.py ghi ra một mẫu người dùng cho Unraid, dành cho đúng một image. Nó không kéo, không cài và không đăng gì.
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.xmlThay <digest> và <pool>.
| Cờ | Ghi chú |
|---|---|
--image |
Digest manifest của registry, không phải ID của Docker image |
--config |
Một đường dẫn pool. Công cụ từ chối /mnt/user và /mnt/user0 |
--movies, --tv, --music, --downloads |
Tùy chọn. Các đường dẫn tách biệt là các mount tách biệt, nên việc nhập sẽ sao chép |
--port |
Mặc định là 6262 |
--allowed-hosts |
Tùy chọn, các hostname phân tách bằng dấu phẩy |
--output |
Tệp XML cần ghi |
Mẫu đặt PUID=99, PGID=100 và UMASK=022. Hãy cấp quyền ghi cho tài khoản đó trên media thử nghiệm. Đặt tệp vào /boot/config/plugins/dockerMan/templates-user/ và chọn nó trong Docker > Add Container > Template (Docker > thêm container > mẫu).
Liên quan
Liên kết tới Liên quanHolyArrs miễn phí. Nếu nó giúp bạn tiết kiệm thời gian, hãy gắn sao trên GitHub, tài trợ dự án hoặc mời tôi một ly cà phê.