Release Engineer
Lộ trình: Release Engineer
Phần tiêu đề “Lộ trình: Release Engineer”Phối hợp phát hành và kiểm tra readiness; role này không có grant endpoint trong ma trận Portal.
Sau lộ trình này bạn có thể
Phần tiêu đề “Sau lộ trình này bạn có thể”- Xác nhận artifact, manifest, migration và backup predeploy trước khi thử phát hành.
- Chạy smoke test và rollback chỉ trong sandbox được cấp.
- Nhận biết Release Engineer không có grant Portal và cần quyền hạ tầng riêng.
Quyền theo backend
Phần tiêu đề “Quyền theo backend”Ai dùng được
Đây là quyền endpoint theo backend/src/admin_portal/core/permissions.py; các thao tác nhạy cảm như PII có kiểm tra step-up riêng. Super Admin vượt ma trận bằng quyền khẩn cấp.
Bảng dưới đây lấy quyền endpoint từ dữ liệu permissions.json do T.3 sinh trực tiếp từ backend. Grant không tự đảm bảo menu hoặc feature flag đang bật.
Endpoint này không có tài nguyên RBAC tĩnh tương ứng; yêu cầu phiên đăng nhập hợp lệ và điều kiện ở backend.
Bảng permission mô tả grant endpoint; menu, điều kiện module, scope game và MFA còn được kiểm tra riêng. Release Engineer không có grant trong ma trận Portal; quyền deploy/host phải được tổ chức cấp ngoài Portal.
Thứ tự học
Phần tiêu đề “Thứ tự học”- Hướng dẫn triển khai — 20 phút
- Deploy các lần sau — 20 phút
- Backup và restore — 20 phút
- Sự cố thường gặp — 15 phút
- Khôi phục thảm họa — 20 phút
Bài thực hành
Phần tiêu đề “Bài thực hành”Bài 1: Kiểm tra release bundle trên dev
Phần tiêu đề “Bài 1: Kiểm tra release bundle trên dev”Mục tiêu: Xác minh manifest và artifact trước khi triển khai thử.
Dữ liệu chuẩn bị: bản build dev; game test_t5_release_game chỉ để smoke test
Vai trò cần: Release Engineer được đội vận hành phân công
Các bước (chỉ dev/staging):
- Xác nhận build thuộc môi trường dev/staging và manifest khớp commit.
- Rà migration, image/tag, config template và rollback bundle.
- Ghi pass/fail từng mục; dừng nếu artifact hoặc migration không rõ.
Kết quả mong đợi: Checklist release có thể truy lại, chưa tác động hệ thống live.
Bài 2: Diễn tập deploy cô lập
Phần tiêu đề “Bài 2: Diễn tập deploy cô lập”Mục tiêu: Chạy quy trình trên sandbox đã chuẩn bị, không dùng host production.
Dữ liệu chuẩn bị: sandbox dev/staging cô lập; game smoke test test_t5_release_game; fixture test_t5_release_deploy
Vai trò cần: Release Engineer được đội vận hành phân công
Các bước (chỉ dev/staging):
- Dùng host/credentials do môi trường dev cấp và chỉ chọn sandbox dành cho
test_t5_release_game. - Chạy deploy fixture
test_t5_release_deploytheo runbook với bản backup predeploy đã chuẩn bị. - Kiểm tra health của
test_t5_release_game, migration và login smoke test; dừng khi sai.
Kết quả mong đợi: Sandbox ổn định hoặc được rollback; không đổi cấu hình ngoài scope.
Bài 3: Diễn tập rollback/restore
Phần tiêu đề “Bài 3: Diễn tập rollback/restore”Mục tiêu: Kiểm tra quy trình phục hồi trên bản sao dùng cho drill.
Dữ liệu chuẩn bị: backup copy test_t5_release_backup_copy đã được phê duyệt trong sandbox dev
Vai trò cần: Release Engineer được đội vận hành phân công
Các bước (chỉ dev/staging):
- Xác minh nguồn backup và đích restore là sandbox.
- Làm theo runbook, ghi thời gian và điểm dừng.
- Kiểm tra health/data sample rồi dọn sandbox theo quy trình.
Kết quả mong đợi: Biên bản ghi kết quả và giới hạn drill; không khôi phục lên hệ thống live.
Tự đánh giá
Phần tiêu đề “Tự đánh giá”- Tôi biết cách xác nhận đúng game/scope trước thao tác.
- Tôi phân biệt quyền đọc, ghi, publish và mutation.
- Tôi biết khi nào cần reason, MFA step-up hoặc duyệt độc lập.
- Tôi chỉ dùng dữ liệu test và biết cách dừng/chuyển escalations.
Sai lầm thường gặp
Phần tiêu đề “Sai lầm thường gặp”- Dùng host/credential không được môi trường dev cấp.
- Bỏ qua manifest, migration hoặc bản backup trước deploy.
- Chạy restore lên hệ thống live trong lúc diễn tập.
- Coi role Release Engineer là quyền truy cập VPS tự động.
Áp dụng cho Portal v1.2.2