사용자 지정 워크플로우 블록
Workflow blocks are reusable, composable units of automation – the building blocks from which pipelines are assembled without rewriting the same logic for every workflow.
하드웨어 CI/CD 파이프라인에서는 동일한 작업이 반복해서 나타납니다. 승인된 공급업체 목록(AVL)을 호출하고, 필수 파라미터가 채워져 있는지 확인하고, 다운스트림 시스템에 알리고, 특정 클래스의 설계 데이터를 검증하는 작업 등이 그것입니다. 워크플로 블록이 없으면 각 워크플로가 이 로직을 각각 독립적으로 다시 구현해야 합니다. 블록을 사용하면 로직을 한 번 정의하고, 한 번 테스트한 뒤, 필요한 모든 곳에서 조합해 사용할 수 있습니다.
워크플로 블록은 특정 작업(입력, 출력, 동작)을 캡슐화하고, 이를 어떤 워크플로에서든 사용할 수 있는 단계로 노출합니다. 블록은 구현을 책임지고, 워크플로는 순서를 책임집니다.
워크플로 블록으로 가능한 것
-
Reuse of validated logic – 규정 준수 검사, 외부 시스템 호출 또는 데이터 변환을 구현하는 블록은 독립적으로 테스트한 뒤 여러 워크플로에서 재사용할 수 있습니다. 기본 요구사항이 바뀌면(예: 제한 부품 목록에 새 항목이 추가되거나 조달에 새 파라미터가 필요해지는 경우) 블록은 한 번만 업데이트하면 되고, 그 변경 사항은 해당 블록을 사용하는 모든 워크플로에 전파됩니다.
-
Separation of concerns – 조달 시스템을 잘 이해하는 엔지니어가 AVL 조회 블록을 구현합니다. 릴리스 프로세스를 정의하는 엔지니어는 이를 파이프라인에 조합합니다. 어느 쪽도 상대방의 도메인을 세부적으로 이해할 필요는 없습니다. 블록 인터페이스가 이들 사이의 계약 역할을 합니다.
-
Incremental pipeline construction – 팀은 단순한 수동 워크플로로 시작한 뒤, 현재 수동 단계인 작업에 대해 블록을 도입하면서 점진적으로 복잡성을 높일 수 있습니다. 워크플로에 추가되는 각 블록은 누군가가 기억해서 수행해야 하는 일을 하나씩 줄여 줍니다.
-
Standardization across teams – 여러 팀이 각자 설계 플로를 유지하는 조직에서는, 공유 워크플로 블록이 전체 파이프라인 구조가 팀마다 다르더라도 단계 수준에서 일관된 동작을 강제합니다. 예를 들어 규정 준수 검사 블록은 PCB 릴리스 워크플로에 포함되든 라이브러리 승인 워크플로에 포함되든 동일하게 실행됩니다.
블록과 스크립트
스크립트는 직접 호출되는 독립 실행형 작업입니다. 워크플로 블록은 더 큰 파이프라인으로 조립할 수 있도록 설계된 조합 가능한 단위입니다. 블록은 종종 스크립트를 호출합니다. 즉, 스크립트가 로직을 구현하고, 블록은 그 로직이 워크플로 맥락에서 사용 가능하도록 만드는 인터페이스 계약을 제공합니다.
독립 실행형 작업이 필요할 때는 스크립트를 사용하십시오. 그 작업을 여러 워크플로에서 단계로 재사용해야 하거나, 구현과 사용을 분리하는 안정적인 인터페이스가 필요하거나, 파이프라인의 순서 제어 및 게이팅 로직에 참여해야 한다면 그 스크립트를 블록으로 감싸십시오.