Bỏ qua để đến nội dung

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.

  • 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.

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.

  1. Hướng dẫn triển khai — 20 phút
  2. Deploy các lần sau — 20 phút
  3. Backup và restore — 20 phút
  4. Sự cố thường gặp — 15 phút
  5. Khôi phục thảm họa — 20 phút

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):

  1. Xác nhận build thuộc môi trường dev/staging và manifest khớp commit.
  2. Rà migration, image/tag, config template và rollback bundle.
  3. 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.

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):

  1. Dùng host/credentials do môi trường dev cấp và chỉ chọn sandbox dành cho test_t5_release_game.
  2. Chạy deploy fixture test_t5_release_deploy theo runbook với bản backup predeploy đã chuẩn bị.
  3. 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.

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):

  1. Xác minh nguồn backup và đích restore là sandbox.
  2. Làm theo runbook, ghi thời gian và điểm dừng.
  3. 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ô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.
  • 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