Załóżmy, że ktoś zaznajomiony z DevOps i komputerami mainframe, ale nowy w Jenkins , chce zacząć od Jenkins, np .:
- zbadać wykonalność zarządzania danymi przechowywanymi w plikach osobistych (PDS, tj. partycjonowanych zestawach danych ) na komputerze mainframe (więc jeszcze nie zarządzanym przez żadne z typowych rozwiązań SCM do zarządzania oprogramowaniem na komputerze mainframe ).
- do uruchomienia Jenkinsa w jakimś osobistym środowisku programistycznym, np. w środowisku Linux w Virtual Box (jeśli miałoby to sens).
Po zakończeniu jakiejś (minimalnej) instalacji i konfiguracji Jenkinsa , pytanie brzmi „ Which of the typical Jenkins plugins, if any, would be needed?
”. Z różnych wtyczek Jenkins, które wydają się mieć sens w moim przypadku, wydaje się, że są to potencjalni kandydaci (cytaty pochodzą z połączonych stron):
-
... udostępnia swoje funkcje poprzez połączenie FTP z partycją LPAR IBM z / OS. Możesz skonfigurować projekt SCLM w systemie z / OS, a następnie sprawdzić zmiany za pośrednictwem Jenkins.
Dodatki zawarte:
- Przedłożenie zadania JCL użytkownika (z opcjonalnym dziennikiem zbieranym po zakończeniu).
- Wprowadzenie SCLM jako SCM do twoich projektów pozwalających na sprawdzenie zmian SCLM.
- Możliwość budowania projektów SCLM można obecnie wykonać tylko poprzez akcję kompilacji „Prześlij zadanie zOS”.
Pobierz kod źródłowy Compuware dla wtyczek Endevor, PDS i ISPW .
... pozwala użytkownikom Jenkinsa pobierać członków Endevor, PDS lub ISPW z komputera mainframe na komputer. Dostęp do źródła można uzyskać na komputerze, na przykład w celu analizy i raportowania SonarQube.
Ponieważ pierwsza wtyczka dotyczy SCLM (która dotyczy PDS), a druga wtyczka wyraźnie określa obsługę PDS (w jej nazwie), ufam, że oba są potencjalnymi kandydatami.
Więc zakładając, że moja krótka lista jest kompletna (prawda?), Jakie są zalety i wady któregoś z nich, które powinny pomóc mi zdecydować, który z nich jest najlepszy w moim przypadku?
Ps: Coś w rodzaju pakietu „Jenkins Kickstart” nie istnieje (przynajmniej jeszcze go nie znalazłem).
źródło
Odpowiedzi:
Skonfigurowałem jenkins do zarządzania tabelami komputerów mainframe. Zasadniczo wykorzystując świetną wtyczkę skryptu. Napisałem kod, który obsługuje ruch plików na komputerze mainframe i wywołuję je przez wtyczkę. Zasadniczo wykorzystuje interfejs API komputerów mainframe do łączenia się i polecenia vsc do przenoszenia plików.
źródło
Jenkins slave działa w usługach systemu Unix w systemie z / OS i może z niego uruchomić dowolny skrypt lub funkcję. Używamy wtyczki Git do pobierania kodu źródłowego do systemu z / OS, a następnie masz różne możliwości pracy z nim. Można użyć kompilacji opartej na IBM Dependency, która jest Groovy przeniesiona do systemu z / OS, a także niektórych rozszerzeń, aby specyficznie współpracować z natywnymi funkcjami systemu z / OS, takimi jak kopiowanie do PDS (lub PDSE) lub kopiowanie z powrotem do zFS, a także możliwość uruchamiania MVS , TSO, polecenia ISPF i prześlij JCL.
Również dzięki nowej zapowiedzi Zowe.org dla nowego projektu open source w systemie z / OS masz również dostęp do wielu interfejsów API opartych na REST, które działają z plikami i wykonują inne zadania w systemie z / OS, takie jak wywoływanie zOSMF.
źródło
Ogólnie istnieją dwa sposoby automatyzacji działań z Jenkins:
Oba podejścia mają wady / zalety. Podczas gdy # 1 - podejście oparte na wtyczkach - zapewnia gotową funkcjonalność i nie wymaga pisania skryptów, może być sztywne i ograniczone w swoich możliwościach. # 2 - podejście skryptowe - wymaga pisania skryptów, a także ich konserwacji, ale może zapewniać znacznie większą elastyczność i swobodę w automatyzacji rzeczy.
Podejście skryptowe ogólnie używa wielu interfejsów CLI - aws cli, docker cli itp.
Jeśli # 2 - podejście skryptowe - jest wykonalne i nie masz nic przeciwko pisaniu skryptów powłoki lub innych skryptów, takich jak python, do interakcji z komputerem mainframe, to Brightside może ci pomóc.
Oto przykład użycia Brightside (darmowego CLI) do interakcji z PDS w systemie z / OS ze skryptu powłoki:
Oto wynik tego skryptu:
Łatwo wywołać te skrypty od Jenkinsa i przeanalizować dane wyjściowe w dowolnym celu.
Pełne ujawnienie: Pracuję dla CA, który stworzył Brightside, ale używamy tego CLI wewnętrznie w celu zintegrowania testowania aplikacji mainframe z Jenkins.
źródło
@ Pierre.Vriens, napisz pytanie o „zbadanie wykonalności zarządzania danymi przechowywanymi w plikach osobistych (PDSes, tj. Partycjonowanych zestawach danych) na komputerze mainframe.”, Możesz użyć zOS Management Facility (zOSMF), który jest dostarczany z systemem z / OS system operacyjny, aby uzyskać do tego dostęp do interfejsów API. W odpowiedzi Sujay sugeruje użycie Brightside, a to narzędzie łączy się z interfejsami API zOSMF, aby uprościć to zadanie. Jeśli więc chcesz powiązać Jenkinsa z komputerem mainframe w celu zarządzania partycjonowanymi zestawami danych (PDS) i zestawami danych (PS), możesz użyć tych interfejsów API zOSMF lub Brightside .
W duchu ujawnienia pracuję jako projektant UX dla CA Technologies, który tworzy Brightside.
źródło