failproofai pack build ghi tất cả ba tệp từ tệp policy mà bạn đã có.
1. Viết các policies
Một tệp, sử dụng API giống như bất kỳ custom policy nào. Hai trường bổ sung rất quan trọng đối với pack:defaultEnabled mặc định là false khi bạn bỏ qua nó. Một lệnh failproofai pack add đơn giản chỉ bật những gì bạn đã đánh dấu — cài đặt tất cả các policies của người lạ mà không giám sát không phải là quyết định mà người cài đặt nên đưa ra cho người dùng của họ.
2. Xây dựng các asset release
Bị từ chối tại thời điểm build: một id không phải là
publisher/name, tên policy chứa /, policy khai báo alwaysOn, thiếu description, category hoặc match, một entry không đăng ký bất cứ thứ gì, và một entry nhập tệp cục bộ.
3. Đính kèm chúng vào một release
Tag release với cùng version mà bạn đã build, và đính kèm cả ba tệp dưới dạng release assets:Phân phối một phiên bản mới
Xây dựng với--version mới, tag một release mới, đính kèm ba assets lần nữa. Người tiêu dùng chạy lệnh pack add tương tự và giữ bất kỳ tập hợp con nào họ đã chọn; một policy mà họ đã tắt sẽ vẫn tắt trong quá trình nâng cấp.
Thay đổi name của một policy là một breaking change: một máy tính đã tắt nó sẽ tắt một tên không còn tồn tại nữa, và tên mới tới với bất kỳ defaultEnabled nào.
Những gì người dùng của bạn đang tin tưởng
SHA256SUMS nằm trong cùng release với artifact, vì vậy nó chứng minh rằng các byte là những byte bạn đã công bố — không phải bạn là ai. Bất kỳ ai có thể ghi vào repository đều có thể ghi cả hai tệp. Sự bảo vệ của người dùng bạn là digest được pinned khi họ cài đặt, vì vậy những gì bạn gửi không thể thay đổi dưới họ sau đó.
Công bố từ một repository mà bạn kiểm soát quyền ghi, và coi một pack release giống như công bố một package.
Quan sát trước khi bạn thực thi
Một manifest có thể khai báo"effect": "observe". Những policies đó chạy và verdicts của chúng được ghi lại và loại bỏ — không có gì bị chặn. Đó là cách để đo lường một quy tắc mới so với lưu lượng thực tế trước khi nó có thể gián đoạn công việc của bất kỳ ai.

