Thiết lập trình kích hoạt quy trình
Trình kích hoạt là thứ khởi chạy một quy trình. Mỗi trình kích hoạt là một node trên canvas, được kéo thả từ mục Bộ kích hoạt trong thư viện nút. Chọn node đó sẽ mở trình kiểm tra của nó ở bên phải — không có danh sách trình kích hoạt thường trực, không có tab trình kích hoạt và cũng không có màn hình trình kích hoạt.
Mở trình kiểm tra của trình kích hoạt
Phần tiêu đề “Mở trình kiểm tra của trình kích hoạt”- Vào Cài đặt → Không gian làm việc → Mẫu quy trình.
- Nhấn biểu tượng bút chì trên hàng của mẫu để mở trình chỉnh sửa.
- Chọn một node trình kích hoạt trên canvas. Bảng bên phải hiện ra với các thiết lập của trình kích hoạt đó. Khi không chọn gì, bảng này bị ẩn.
Thêm một trình kích hoạt
Phần tiêu đề “Thêm một trình kích hoạt”Mục Bộ kích hoạt trong thư viện nút liệt kê mọi kiểu khởi chạy thành một
node riêng: thủ công, theo lịch, webhook và một thẻ cho mỗi sự kiện miền. Hãy
tìm merged, ticket hoặc tên loại (PrMerged) rồi kéo thẻ đó vào canvas.
Một mẫu mới cũng hiển thị một ô giữ chỗ mờ Thêm bộ kích hoạt tại điểm neo
lối vào — hãy chọn từ chính danh sách có thể tìm kiếm đó.
Trình kích hoạt được chèn ngay lập tức. Các trình kích hoạt tự động mới khởi đầu ở trạng thái tắt để một thao tác kéo thả không kích hoạt một lần chạy trước khi bạn cấu hình xong. Dùng công tắc Đã bật trong trình kiểm tra để bật nó, hoặc biểu tượng thùng rác để xóa nó.
Cho phép chạy thủ công
Phần tiêu đề “Cho phép chạy thủ công”Kéo thả Chạy thủ công (hoặc chọn nó từ ô giữ chỗ mờ) rồi bật Đã bật
trong trình kiểm tra của nó. Đó là thứ khiến mẫu xuất hiện trong trình chọn lần
chạy. Đây không phải một trường hợp đặc biệt — công tắc này ghi một hàng trình
kích hoạt bình thường với loại sự kiện là manual. Nó được lưu bền ngay lập
tức; không có gì để lưu.
Công tắc tương tự nằm sau Chạy thủ công ở thanh tiêu đề trình chỉnh sửa, nơi nó đứng cạnh các đầu vào đã khai báo của mẫu.
Theo một sự kiện
Phần tiêu đề “Theo một sự kiện”Những sự kiện sau khởi chạy một lần chạy:
| Nhãn trong trình chọn | Sự kiện |
|---|---|
| PR bên ngoài được mở | ExternalPrDetected |
| PR được xuất bản | PullRequestPublished |
| Trạng thái PR đã đổi | PullRequestStatusChanged |
| PR được hợp nhất | PrMerged |
| Đã nhận tin nhắn | MessageReceived |
| Phiếu được tạo | TicketCreated |
| Trạng thái phiếu đã đổi | TicketStatusChanged |
| Phiếu được gán | TicketAssigned |
| Phiếu hoàn tất | TicketCompleted |
| Phiếu thất bại | TicketFailed |
| Phiếu bị hủy | TicketCancelled |
| Đã vượt ngưỡng ngân sách | BudgetThresholdCrossed |
| Đã thêm kho lưu trữ | RepoAdded |
| Đã dừng ghi cuộc họp | MeetingRecordingStopped |
| Kỹ năng đã cập nhật | SkillUpdated |
| Không gian đã xóa | SpaceDeleted |
SpaceDeleted là sự kiện mà quy trình dọn dẹp worktree tích hợp sẵn lắng nghe:
nó mang id của space đã xóa, nên lần chạy chỉ thu hồi đúng các worktree của
space đó thay vì quét toàn bộ không gian làm việc.
Để biết các khóa payload mà mỗi sự kiện mang theo, xem tham chiếu sự kiện miền.
Lọc một trình kích hoạt theo sự kiện
Phần tiêu đề “Lọc một trình kích hoạt theo sự kiện”Chọn node Trạng thái PR đã đổi. Các chip trạng thái trong trình kiểm tra là
bộ lọc duy nhất mà giao diện có thể tạo. Nhấn vào bất kỳ mục nào trong
merged, closed, approved, opened, reopened; khi đó trình kích hoạt chỉ
kích hoạt nếu status của sự kiện khớp với một trong số đó. Để tất cả chip
không được chọn nghĩa là không lọc.
Không có trường lọc JSON tự do. Một khóa lọc mà payload của sự kiện không mang theo sẽ không bao giờ khớp, nên đừng tự viết một khóa mà bạn chưa xác nhận trong tham chiếu sự kiện miền.
Theo lịch
Phần tiêu đề “Theo lịch”Chọn node Lịch để chỉnh thời điểm nó kích hoạt. Các trường trong trình kiểm tra được lưu lại đúng như khi bạn rời khỏi chúng:
| Trường | Mô tả |
|---|---|
| Lịch (cron hoặc every:seconds) | Một biểu thức cron năm trường như 0 9 * * 1, hoặc một khoảng thời gian như every:86400. Một con số trần sẽ được chuyển thành every:<n>. |
| Múi giờ (tùy chọn) | Một vùng IANA như Europe/Paris. Mặc định là UTC. |
| Khi bỏ lỡ lần chạy | Phải làm gì với những lần kích hoạt bị bỏ lỡ khi máy chủ ngừng chạy: Chạy một lần gộp mọi khung giờ bị bỏ lỡ thành một lần kích hoạt khi khởi động lại (mặc định), Bỏ qua tiếp tục từ khung giờ tương lai kế tiếp. |
Dòng tóm tắt của thẻ trên canvas chỉ ghi rõ khoảng thời gian với dạng
every:<seconds>; một biểu thức cron chỉ hiển thị là “Lịch”.
Qua webhook
Phần tiêu đề “Qua webhook”Kéo thả Webhook sẽ tạo ngẫu nhiên một token. Chọn node đó để sao chép đường
dẫn POST /webhooks/<token> từ trình kiểm tra.
Token cũng chính là khóa bí mật HMAC: request phải mang
X-Hub-Signature-256: sha256=<hex>, trong đó chuỗi hex là HMAC-SHA256(body, token).
Một gói tin không xác minh được sẽ bị từ chối, được ghi log và không thể phát
lại. Các bản trùng lặp bị bỏ qua theo khóa khử trùng lặp của chúng.
Mỗi điểm khởi chạy là một node riêng trên đồ thị. Kéo một dây nối từ Lịch chỉ gắn với Lịch; Chạy thủ công có thể đi theo một đường khác (ví dụ qua một node điều kiện) trước khi hòa vào cùng công việc. Một lần chạy đi vào điểm khởi chạy khớp với loại sự kiện của nó và bỏ qua các đồ thị con thuộc những điểm khởi chạy khác.
Cách một trình kích hoạt đi đến một lần chạy
Phần tiêu đề “Cách một trình kích hoạt đi đến một lần chạy”Một trình kích hoạt đang bật có loại sự kiện và bộ lọc đều khớp sẽ khởi chạy
một lần chạy với payload của sự kiện làm payload trình kích hoạt của lần chạy —
đó chính là thứ mà {{key}} trong prompt hoặc script của một bước phân giải dựa
vào. Những sự kiện mang khóa tự nhiên được khử trùng lặp, nên cùng một sự kiện
kích hoạt hai lần sẽ không tạo ra hai lần chạy.
Một mẫu bị tắt vẫn bị từ chối ngay cả khi trình kích hoạt của nó khớp. Tám trong số mười ba mẫu tích hợp sẵn xuất xưởng ở trạng thái tắt, nên các trình kích hoạt được gieo của chúng kích hoạt vào khoảng không cho tới khi bạn bật mẫu lên.
Những mẫu hữu dụng
Phần tiêu đề “Những mẫu hữu dụng”- Chỉ chặn đường thủ công — nối Chạy thủ công qua một node điều kiện, còn Lịch nối thẳng tới công việc. Mỗi điểm khởi chạy sở hữu các dây nối của riêng nó.
- Xem xét mọi PR mới — sự kiện PR được xuất bản trên mẫu
pr_review. - Dọn dẹp sau khi hợp nhất — sự kiện Trạng thái PR đã đổi, lọc theo
merged/closed/approved. Mẫu tích hợp sẵnpr_merged_cleanupđã lắng nghe theo cách này, cùng với phiếu hoàn tất/bị hủy,SpaceDeleted, và một lịch chạy hằng ngày luôn bị buộc bật ở mỗi lần gieo lại vì đó là việc thu gom rác. - Quét hằng đêm — lịch
0 2 * * *kèm múi giờ, trên một mẫu có node đầu tiên là script bash. - Phản ứng với một hệ thống bên ngoài — một trình kích hoạt webhook, với hệ thống gọi ký phần thân request của nó như trên.