Cztery warstwy runtime
Generator
Wejściem jest opis zadania: cel, język, ograniczenia efektów ubocznych, przykład wejścia i przykład wyjścia. Wyjściem jest skrypt, który da się odpalić lokalnie i w jobie. Język wynika z repo i z planu, nie z domyślnego szablonu marketingowego.
Integracje
Skrypt woła endpoint HTTP, kolejkę albo bazę. Schema żądania i odpowiedzi jest opisana obok skryptu. Błąd API nie kończy się ciszą: job zapisuje kod statusu, identyfikator przebiegu i fragment logu bez sekretów.
Biblioteka
Powtarzalne skrypty wchodzą do prywatnej biblioteki zespołu. Wersja biblioteki jest wersją w repo. Szablon firmowy da się podmienić w jednym miejscu, zamiast kopiować plik między projektami i gubić poprawkę.
CI i kontener
Szablon joba wskazuje obraz runtime, katalog skryptu i sekret z magazynu CI. Docker jest sposobem na powtarzalny runtime, nie osobnym produktem. Po zakończeniu job może wysłać webhook.
Co zostaje w repozytorium
- skrypt albo paczka skryptów z czytelną ścieżką uruchomienia,
- opis wejścia: zmienne, plik, endpoint, którego job ma użyć,
- szablon joba CI zgodny z runnerem zespołu,
- przykład wywołania, na którym da się sprawdzić, że skrypt wstaje,
- notatka, których sekretów szablon oczekuje i gdzie mają leżeć poza repo.
Czego w repo nie ma: haseł, tokenów, kluczy API, zrzutów produkcyjnych baz. Sekret jest referencją. Wartość zostaje w magazynie CI albo w sejfie sekretów organizacji.
Przebieg, który da się odtworzyć
-
01
Opis zadania w katalogu automatyzacji
Autor wskazuje runtime, źródło danych i warunek stopu. Bez tego generator nie uzupełnia kontraktu wejścia domysłem. Brakujący opis wraca jako pytanie, nie jako wpis w kodzie.
-
02
Skrypt w bibliotece
Plik przechodzi ten sam przegląd co reszta zmian w repo. Generator przyspiesza pierwszy szkic. Nie omija review i nie merguje sam.
-
03
Job na branchu
Pipeline uruchamia skrypt na zmianie. Log pokazuje komendę, obraz, czas i kod wyjścia. Czerwony job zostaje czerwony. Nie ma ręcznego „odznacz, że przeszło”.
-
04
Webhook po statusie
Gdy plan obejmuje integracje, endpoint dostaje identyfikator builda, status i adres logu. Payload nie zawiera sekretu ani treści, która nie jest potrzebna odbiorcy.
Co hub robi z API i bazą
Automatyzacja API, dostępna od planu Team, składa wywołanie według schematu: metoda, ścieżka, nagłówki bez sekretu w pliku, ciało, oczekiwany status. Powtarzalny przebieg może złożyć kilka wywołań w kolejności, z warunkiem przerwania po błędzie. Zapis do bazy idzie przez zapytanie opisane w skrypcie i przez konto techniczne o uprawnieniach wyciętych do tej operacji, nie przez konto administratora wklejone do zmiennej.
Jeżeli endpoint nie ma stabilnego kontraktu, najpierw powstaje opis kontraktu i test kontraktu w TestLab. Hub nie owija niestabilnego API kolejną warstwą retry bez limitu. Retry, timeout i idempotencja są parametrami skryptu, widocznymi w repo.
Granice planów
Plan Developer obejmuje generator, wybrane runtime i prywatną bibliotekę, z limitem przetwarzania tego planu. Team dokłada automatyzację API, generator testów i szablony CI oraz wyższy limit. Business otwiera pełny zestaw funkcji huba, firmowe szablony i 2 godziny pracy inżyniera KoneV w miesiącu. Business Pro dokłada integrację z repozytorium Git, orkiestrację przebiegów, priorytet kolejki i rozszerzony log audytowy oraz 5 godzin pracy inżyniera. Enterprise opisuje dedykowany runtime, SSO i warunki poza siatką planów.
Żaden plan nie sprzedaje „nielimitowanych użytkowników”. Ograniczeniem jest zakres funkcji, limit przetwarzania i liczba godzin inżyniera wpisana w plan. Kto w zespole uruchamia job, wynika z uprawnień w repo i w CI klienta.
Czego hub nie robi
- nie merguje zmian z pominięciem bramki i review,
- nie trzyma sekretów w historii gita,
- nie podmienia systemu CI, jeśli istniejący runner umie odpalić szablon,
- nie wysyła danych osobowych z payloadu do webhooka, jeśli odbiorca ich nie potrzebuje,
- nie zastępuje właściciela kodu po stronie klienta. Właściciel zostaje przy repo.
Praktyka, na której hub stoi, pochodzi z ponad 20 lat składania takich przebiegów jako usługa zewnętrzna. Spółka KoneV Software tę praktykę dopiero produktuje. Historia osób i status spółki są opisane na stronie o nas.
Zakres funkcji w planach Dalej: TestLab