Khối quy trình làm việc tùy chỉnh
Workflow blocks are reusable, composable units of automation – the building blocks from which pipelines are assembled without rewriting the same logic for every workflow.
Trong một pipeline CI/CD phần cứng, các thao tác giống nhau xuất hiện lặp đi lặp lại: gọi danh sách nhà cung cấp được phê duyệt, kiểm tra rằng các tham số bắt buộc đã được điền, thông báo cho một hệ thống downstream, xác thực một lớp dữ liệu thiết kế cụ thể. Nếu không có workflow block, mỗi workflow sẽ phải tự triển khai lại logic này một cách độc lập. Với block, logic được định nghĩa một lần, kiểm thử một lần và được ghép vào bất cứ đâu cần dùng.
Một workflow block đóng gói một thao tác cụ thể – đầu vào, đầu ra và hành vi của nó – rồi cung cấp thao tác đó như một bước có thể dùng trong bất kỳ workflow nào. Block sở hữu phần triển khai. Workflow sở hữu trình tự.
Workflow Blocks Cho Phép Điều Gì
-
Reuse of validated logic – một block triển khai kiểm tra tuân thủ, lời gọi đến hệ thống bên ngoài hoặc phép biến đổi dữ liệu sẽ được kiểm thử riêng biệt rồi tái sử dụng trên nhiều workflow. Khi yêu cầu nền tảng thay đổi – một mục mới được thêm vào danh sách linh kiện bị hạn chế, một tham số mới được bộ phận mua sắm yêu cầu – block chỉ cần được cập nhật một lần và thay đổi đó sẽ được lan truyền đến mọi workflow đang sử dụng nó.
-
Separation of concerns – kỹ sư hiểu hệ thống mua sắm sẽ triển khai block tra cứu AVL. Kỹ sư định nghĩa quy trình phát hành sẽ ghép block đó vào pipeline. Không bên nào cần hiểu chi tiết miền chuyên môn của bên còn lại. Giao diện của block là hợp đồng giữa họ.
-
Incremental pipeline construction – các nhóm có thể bắt đầu với những workflow đơn giản, thủ công rồi tăng dần độ phức tạp theo thời gian bằng cách đưa vào các block cho những thao tác hiện vẫn là bước thủ công. Mỗi block được thêm vào workflow là bớt đi một việc phải phụ thuộc vào việc ai đó nhớ để thực hiện nó.
-
Standardization across teams – trong các tổ chức nơi nhiều nhóm duy trì các luồng thiết kế riêng, các workflow block dùng chung giúp áp đặt hành vi nhất quán ở cấp độ từng bước ngay cả khi cấu trúc pipeline tổng thể khác nhau giữa các nhóm. Ví dụ, block kiểm tra tuân thủ sẽ chạy giống hệt nhau dù nó được nhúng trong workflow phát hành PCB hay workflow phê duyệt thư viện.
Blocks so với Scripts
Script là các thao tác tự chứa được gọi trực tiếp. Workflow block là các đơn vị có thể kết hợp, được thiết kế để lắp ghép thành các pipeline lớn hơn. Một block thường gọi một script – script triển khai logic, còn block cung cấp hợp đồng giao diện giúp nó có thể được sử dụng trong ngữ cảnh workflow.
Hãy dùng script khi bạn cần một thao tác độc lập. Hãy bọc script đó trong một block khi thao tác cần được tái sử dụng như một bước trong nhiều workflow, khi nó cần một giao diện ổn định để tách biệt phần triển khai khỏi cách sử dụng, hoặc khi nó cần tham gia vào logic trình tự và chặn/cho phép của một pipeline.