Điều kiện tiên quyết
- Một repository được kết nối qua thiết lập Review trên GitHub, GitLab, Bitbucket, Azure DevOps hoặc AWS CodeCommit.
-
Vai trò workspace phù hợp với việc bạn muốn làm. Xem vai trò.
Phân tích một release
1
Mở Analyze release
Vào Review → Releases và nhấn Analyze release.
2
Chọn repository và release
Chọn Repository. Mỗi release là một Git tag. CloudThinker liệt kê các tag mới nhất trước và chọn sẵn Not released yet khi nhánh mặc định có thay đổi kể từ release gần nhất. Trên nút phân tích, lựa chọn này được gọi là unreleased changes. Dùng ô tìm kiếm để tìm nhánh hoặc tag, hoặc dán một commit ID.AWS CodeCommit không hỗ trợ tag, nên trên CodeCommit bộ chọn chỉ cung cấp nhánh.
3
Kiểm tra mốc so sánh
CloudThinker tự chọn mốc so sánh: release trước đó trên cùng dòng. Dòng release là chuỗi các tag nối tiếp nhau trong lịch sử Git. Các tag trên nhánh mặc định tạo thành một dòng, còn một tag trên nhánh tách ra từ đó, chẳng hạn nhánh hotfix, bắt đầu một dòng riêng. Để so sánh với thứ khác, nhấn Change cạnh mốc so sánh và chọn release, nhánh hoặc commit khác.
4
Bắt đầu phân tích
Nhấn Analyze (nút ghi tên release, ví dụ Analyze unreleased changes). Quá trình mất khoảng 5 phút và bạn có thể rời trang. Không có thông báo khi hoàn tất, nên hãy kiểm tra tab Needs decision.Trạng thái thành công: release hiển thị Analyzing, rồi xuất hiện trong tab Needs decision khi báo cáo sẵn sàng.
Đọc báo cáo
Thẻ trên cùng đưa ra kết luận:
Một PR hoặc MR được tính là có rủi ro khi có bất kỳ điều nào sau đây:
- Có rủi ro chặn nêu đến PR/MR đó.
- PR/MR đó có phát hiện mức high hoặc critical đang mở.
- Review chưa từng review PR/MR đó.
Rủi ro là Blocking khi cần có người sửa hoặc chấp nhận rõ ràng trước khi phát hành. Rủi ro là Watch khi việc triển khai cần chú ý nhưng bằng chứng chưa đủ để giữ lại. CloudThinker kiểm tra chín lĩnh vực rủi ro trên mọi release và chỉ liệt kê những lĩnh vực quan trọng với release đó:
Báo cáo cũng liệt kê các PR hoặc MR của release cùng trạng thái review, và một Quality map làm nổi bật các thay đổi có chất lượng thấp, chưa được review hoặc có rủi ro chặn. Nếu CloudThinker không đọc được một phần của khoảng thay đổi, ghi chú Assessment limits sẽ nói rõ thay vì phỏng đoán.
Các con số là ảnh chụp tại một thời điểm. Nếu bạn sửa một phát hiện đang mở sau khi có báo cáo, báo cáo vẫn hiển thị phát hiện đó. Phân tích lại release để có số liệu hiện tại.
Xử lý các bước
Mỗi bước đang mở có Mark resolved và Dismiss. Dismiss yêu cầu lý do, và Re-open hoàn tác cả hai. Khi bạn phân tích lại cùng release, các bước đã xử lý được đánh dấu Carried over nếu hướng dẫn không đổi, nên bạn không phải làm lại. Đánh dấu một bước đã giải quyết là khẳng định của bạn; chỉ khi phân tích lại mới xác nhận được rủi ro đã hết. Để được hỗ trợ với các bước đang mở, nhấn Fix with CloudThinker:
Nhấn Download PDF để chia sẻ báo cáo bên ngoài CloudThinker.
Approve hoặc hold
1
Đưa ra quyết định
Trên báo cáo, nhấn Approve hoặc Hold. Khi vẫn còn rủi ro chặn đang mở, nút hiển thị Approve anyway.
2
Thêm ghi chú
Ghi chú là tùy chọn, với hai ngoại lệ. Approve khi còn rủi ro chặn đang mở sẽ hỏi Why is it safe to ship? Hold một release không có rủi ro chặn sẽ hỏi Why are you holding it?Trạng thái thành công: báo cáo hiển thị “Approved by” hoặc “Held by” kèm tên và ghi chú của bạn, và release chuyển sang tab Approved hoặc On hold.
Khắc phục sự cố
Hộp thoại báo This repository has no releases or unreleased changes to analyze yet
Hộp thoại báo This repository has no releases or unreleased changes to analyze yet
Không có tag nào để phân tích và nhánh mặc định không có gì mới kể từ release gần nhất. Push một tag, hoặc chọn nhánh hoặc commit bằng ô tìm kiếm.
That base was not found
That base was not found
Mốc so sánh bạn chọn không tồn tại hoặc không phải tổ tiên của release. Nhấn Change và chọn mốc khác.
Release hiển thị Analysis failed
Release hiển thị Analysis failed
Quá trình phân tích dừng trước khi hoàn tất và không có điểm nào được công bố. Bắt đầu phân tích mới từ Analyze release.
Thiếu số lượng merge request
Thiếu số lượng merge request
AWS CodeCommit không thể liên kết commit với PR, nên báo cáo đánh dấu các số đó là không khả dụng. Phân tích rủi ro vẫn đọc toàn bộ diff.
Hai lần phân tích cùng một release cho kết quả khác nhau
Hai lần phân tích cùng một release cho kết quả khác nhau
Báo cáo là đánh giá của CloudThinker về diff, nên chi tiết có thể thay đổi giữa các lượt chạy. Hãy coi trạng thái và các rủi ro chặn là tín hiệu, không phải những thay đổi nhỏ về số liệu.
Bước tiếp theo
Pipelines
Tìm nguyên nhân gốc cho mọi lượt chạy CI thất bại
Review Insights
Theo dõi chất lượng review trên các repository theo thời gian
Learnings
Ngăn các rủi ro cũ quay lại trong những lần review sau
Tổng quan Review
Xem mọi thứ Review làm trên các repository của bạn