Bloques de flujo de trabajo personalizados
Workflow blocks are reusable, composable units of automation – the building blocks from which pipelines are assembled without rewriting the same logic for every workflow.
En una canalización de CI/CD de hardware, las mismas operaciones aparecen repetidamente: consultar la lista de proveedores aprobados, comprobar que los parámetros requeridos estén completos, notificar a un sistema posterior, validar una clase específica de datos de diseño. Sin bloques de flujo de trabajo, cada flujo de trabajo vuelve a implementar esta lógica de forma independiente. Con bloques, la lógica se define una sola vez, se prueba una sola vez y se compone allí donde se necesite.
Un bloque de flujo de trabajo encapsula una operación específica —sus entradas, sus salidas y su comportamiento— y la expone como un paso que puede usarse en cualquier flujo de trabajo. El bloque es propietario de la implementación. El flujo de trabajo es propietario de la secuencia.
Qué permiten los bloques de flujo de trabajo
-
Reuse of validated logic – un bloque que implementa una comprobación de cumplimiento, una llamada a un sistema externo o una transformación de datos se prueba de forma aislada y luego se reutiliza en múltiples flujos de trabajo. Cuando cambia el requisito subyacente – un nuevo elemento añadido a la lista de piezas restringidas, un nuevo parámetro requerido por compras– el bloque se actualiza una sola vez y el cambio se propaga a cada flujo de trabajo que lo utiliza.
-
Separation of concerns – el ingeniero que conoce el sistema de compras implementa el bloque de búsqueda AVL. El ingeniero que define el proceso de liberación lo integra en una canalización. Ninguno necesita comprender en detalle el dominio del otro. La interfaz del bloque es el contrato entre ambos.
-
Incremental pipeline construction – los equipos pueden comenzar con flujos de trabajo simples y manuales, e ir añadiendo complejidad con el tiempo mediante la introducción de bloques para operaciones que actualmente son pasos manuales. Cada bloque añadido a un flujo de trabajo es una cosa menos que depende de que alguien recuerde hacerlo.
-
Standardization across teams – en organizaciones donde varios equipos mantienen sus propios flujos de diseño, los bloques de flujo de trabajo compartidos imponen un comportamiento coherente a nivel de paso, incluso cuando la estructura general de la canalización difiere entre equipos. El bloque de comprobación de cumplimiento, por ejemplo, se ejecuta de forma idéntica tanto si está integrado en un flujo de trabajo de liberación de PCB como en un flujo de trabajo de aprobación de bibliotecas.
Bloques frente a scripts
Los scripts son operaciones autocontenidas que se invocan directamente. Los bloques de flujo de trabajo son unidades componibles diseñadas para ensamblarse en canalizaciones más grandes. Un bloque a menudo llama a un script: el script implementa la lógica y el bloque proporciona el contrato de interfaz que hace posible usarlo en el contexto de un flujo de trabajo.
Utiliza un script cuando necesites una operación independiente. Envuelve ese script en un bloque cuando la operación deba reutilizarse como paso en múltiples flujos de trabajo, cuando necesite una interfaz estable que desacople la implementación de su uso, o cuando deba participar en la lógica de secuenciación y control de una canalización.