Niestandardowe bloki przepływu pracy

Workflow blocks are reusable, composable units of automation – the building blocks from which pipelines are assembled without rewriting the same logic for every workflow.

W potoku CI/CD dla sprzętu te same operacje pojawiają się wielokrotnie: wywołanie listy zatwierdzonych dostawców, sprawdzenie, czy wymagane parametry są uzupełnione, powiadomienie systemu podrzędnego, walidacja określonej klasy danych projektowych. Bez bloków workflow każdy workflow niezależnie implementuje tę logikę. Z blokami logika jest definiowana raz, testowana raz i składana wszędzie tam, gdzie jest potrzebna.

Blok workflow hermetyzuje określoną operację – jej wejścia, wyjścia i zachowanie – oraz udostępnia ją jako krok, którego można użyć w dowolnym workflow. Blok odpowiada za implementację. Workflow odpowiada za sekwencję.

Co umożliwiają Workflow Blocks

  • Reuse of validated logic – blok implementujący kontrolę zgodności, wywołanie systemu zewnętrznego lub transformację danych jest testowany w izolacji, a następnie ponownie wykorzystywany w wielu workflow. Gdy zmienia się wymaganie bazowe – nowa pozycja dodana do listy części objętych ograniczeniami, nowy parametr wymagany przez dział zakupów – blok jest aktualizowany tylko raz, a zmiana propaguje się do każdego workflow, który z niego korzysta.

  • Separation of concerns – inżynier, który zna system zakupowy, implementuje blok wyszukiwania AVL. Inżynier definiujący proces wydania włącza go do potoku. Żaden z nich nie musi szczegółowo rozumieć domeny drugiego. Interfejs bloku jest kontraktem między nimi.

  • Incremental pipeline construction – zespoły mogą zaczynać od prostych, ręcznych workflow i z czasem zwiększać ich złożoność przez wprowadzanie bloków dla operacji, które obecnie są wykonywane ręcznie. Każdy blok dodany do workflow to o jedną rzecz mniej, która zależy od tego, czy ktoś pamięta, żeby ją wykonać.

  • Standardization across teams – w organizacjach, w których wiele zespołów utrzymuje własne przepływy projektowe, współdzielone bloki workflow wymuszają spójne zachowanie na poziomie kroków, nawet jeśli ogólna struktura potoku różni się między zespołami. Blok kontroli zgodności, na przykład, działa identycznie niezależnie od tego, czy jest osadzony w workflow wydania PCB, czy w workflow zatwierdzania biblioteki.

Bloki a skrypty

Skrypty to samodzielne operacje wywoływane bezpośrednio. Bloki workflow to kompozycyjne jednostki zaprojektowane do składania w większe potoki. Blok często wywołuje skrypt – skrypt implementuje logikę, a blok zapewnia kontrakt interfejsu, który umożliwia jego użycie w kontekście workflow.

Użyj skryptu, gdy potrzebujesz samodzielnej operacji. Opakuj ten skrypt w blok, gdy operacja ma być ponownie używana jako krok w wielu workflow, gdy potrzebuje stabilnego interfejsu oddzielającego implementację od sposobu użycia lub gdy ma uczestniczyć w logice sekwencjonowania i bramkowania potoku.

 

AI-LocalizedTłumaczenie SI
Jeśli znajdziesz błąd, zaznacz tekst/obraz i naciśnij Ctrl + Enter aby wysłać nam wiadomość.
Content