Quyết định phát hành bằng bằng chứng
Đã hoàn tấtKiểm tra phiên bản, đích, rủi ro còn lại và cách khôi phục. Tách merge, triển khai và mở tính năng cho người dùng khi hệ thống yêu cầu.
Xuất bản bởi TaigaCách chúng tôi viết
Kiểm tra mức hiểuNgười review phê duyệt commit A, nhưng quá trình triển khai build commit B có thêm thay đổi phân quyền. Cần làm gì?Làm bài tập
Bạn sẽ học gì
- Xác định quyết định phát hành phải gắn với những gì.
- Phân biệt merge, triển khai và mở tính năng cho người dùng.
- Xác định điều kiện dừng hoặc đảo ngược phát hành.
Nêu quyết định chính xác
Pipeline xanh là bằng chứng từ một tập kiểm tra. Nó không mô tả đầy đủ quyết định phát hành. Người phụ trách cần biết điều gì sẽ thay đổi, thay đổi ở đâu và hậu quả nào còn lại.
Với tính năng xuất dữ liệu khách hàng giả định, xác định commit được chấp nhận và artifact tạo từ nó. Nêu môi trường đích. Liên kết test, review liên quan và mọi ngoại lệ đã phê duyệt. Bao gồm thay đổi dữ liệu hoặc hạ tầng đi cùng ứng dụng.
SSDF của NIST cung cấp thực hành phát triển an toàn, còn provenance của SLSA giúp mô tả artifact được tạo thế nào. Cả hai đều không loại bỏ quyết định xem bản phát hành này có phù hợp với dịch vụ này không. NIST SSDF, SLSA provenance.
Phân biệt ba sự kiện
Merge đưa thay đổi mã nguồn vào branch. Triển khai đưa artifact vào môi trường. Mở tính năng cho phép người dùng tiếp cận hành vi đó. Các sự kiện có thể trùng thời điểm, nhưng không nhất thiết là cùng một sự kiện.
Dịch vụ có thể triển khai tính năng chưa kích hoạt và mở cho người dùng sau. Migration cơ sở dữ liệu có thể ảnh hưởng production trước khi tính năng xuất hiện. Xác định trình tự thực tế thay vì mặc định merge PR mô tả mọi hậu quả.
Với tính năng xuất, feature flag có thể giới hạn phạm vi mở ban đầu. Nó không tự bảo vệ endpoint mới hoặc đảo ngược migration schema. Xác minh biện pháp kiểm soát tại nơi hậu quả xảy ra.
Review hồ sơ bằng chứng ngắn gọn
Dùng hồ sơ mà người chịu trách nhiệm khác có thể kiểm tra:
- Mục đích và người dùng bị ảnh hưởng.
- Định danh commit và artifact.
- Kiểm tra hành vi, bảo mật và tương thích liên quan.
- Môi trường đích và danh tính thực thi.
- Ngoại lệ còn lại cùng người phụ trách và điều kiện hết hiệu lực.
- Giám sát, phương pháp khôi phục và người phụ trách ứng phó.
Giữ nhận định cụ thể. “Test đạt” yếu hơn liên kết đến kết quả cho commit phát hành với mô tả phạm vi bao phủ rõ ràng. “Có rollback” yếu hơn quy trình đã kiểm thử với giới hạn được nêu.
Quyết định cách dừng
Xác định điều kiện phát hành trước khi thực thi. Với tính năng xuất giả định, dừng nếu truy cập chéo tổ chức thành công, artifact khác digest được chấp nhận hoặc không có khả năng khôi phục. Đây là điều kiện minh họa, không phải checklist chung cho mọi nơi.
Sau triển khai, kiểm tra tín hiệu quan trọng với người dùng. So sánh hành vi lỗi và thời gian phản hồi với mục tiêu đã chấp nhận của dịch vụ. Process hoạt động tốt không chứng minh quy trình người dùng hoạt động.
Nếu điều kiện không đạt, dùng phản ứng đã thống nhất. Có thể tắt tính năng đối với người dùng, rollback mã tương thích hoặc khôi phục dữ liệu. Chọn hành động giải quyết lỗi mà không tạo lỗi lớn hơn.
Giữ lại quyết định sau phát hành
Ghi artifact thực sự được triển khai và kết quả. Nếu thực thi khác kế hoạch, làm rõ khác biệt. Đưa sự cố và công việc ngoài dự kiến vào thiết kế lần phát hành tiếp theo.
Hệ thống bàn giao tự động nên giúp kiểm tra hồ sơ này dễ hơn. Nó không nên buộc người review dựng lại lần phát hành từ các cuộc chat, log và ảnh chụp rời rạc. Bằng chứng rõ ràng giúp nhóm tự động hóa việc thường xuyên mà vẫn giữ trách nhiệm cho quyết định.
Làm bài tập
Chuẩn bị ghi chú phát hành giả định cho tính năng xuất dữ liệu khách hàng. Bao gồm commit, digest artifact, môi trường, kiểm tra phân quyền, tác động migration, người phụ trách giám sát và điều kiện kích hoạt khôi phục. Nêu một điều kiện dừng phát hành dù unit test đạt.
Tải worksheet (Markdown)Bỏ chọn sẽ xóa toàn bộ tiến độ đã lưu trong trình duyệt này.
Tiến độ ở trong trình duyệt này. Không tài khoản, không theo dõi.