Giao diện
@digiforce-nc/plugin-migration-manager
Plugin quản lý migration — theo dõi, thực thi, rollback database migration từ giao diện web, quản lý phiên bản schema và lịch sử thay đổi.
Plugin này làm gì?
Khi schema database thay đổi (thêm bảng, đổi cột, thêm index), cần migration để cập nhật an toàn. Plugin cung cấp giao diện quản lý migration: xem trạng thái (pending/applied), thực thi migration, rollback, dry run (xem trước SQL), và theo dõi lịch sử — không cần chạy lệnh CLI.
Sáu tính năng chính
| # | Tính năng | Chi tiết |
|---|---|---|
| 1 | Status view | Xem migration nào đã applied, pending, hoặc failed |
| 2 | Run | Thực thi pending migrations từ UI (single hoặc batch) |
| 3 | Rollback | Rollback migration gần nhất hoặc chọn migration cụ thể |
| 4 | Dry run | Xem SQL sẽ thực thi trước khi chạy thật |
| 5 | History | Lịch sử migration: timestamp, duration, status, user |
| 6 | Distributed lock | Lock tránh chạy migration đồng thời khi nhiều instance |
Kiến trúc
State machine của migration
Luồng thực thi
Thành phần client
| Thành phần | Mô tả |
|---|---|
MigrationList | Bảng danh sách migration: tên, status, timestamp, duration |
RunButton | Nút chạy pending migrations (single hoặc batch) |
RollbackButton | Nút rollback với confirmation dialog |
MigrationDetail | Modal chi tiết: SQL code, execution log |
DryRunViewer | Preview SQL sẽ thực thi (syntax highlighted) |
Dependencies
| Package | Vai trò |
|---|---|
@digiforce-nc/server | Server framework |
@digiforce-nc/database | Database ORM — migration engine |
@digiforce-nc/client | Client UI framework |
Mục lục chi tiết
(Xem trang tổng quan ở trên)