Який плагін я повинен використовувати для початку роботи з Jenkins для управління компонентами мейнфрейму у форматі PDS?


13

Припустимо, хтось знайомий з DevOps та мейнфреймами, але новим для Дженкінса хоче розпочати роботу з Дженкінсом, наприклад:

Після завершення якоїсь (мінімальної) установки та конфігурації Дженкінса актуальне питання стає " Which of the typical Jenkins plugins, if any, would be needed?". З різних плагінів Дженкінса, які, мабуть, мають сенс у моєму випадку, здається, що це можливі кандидати (цитати зі зв’язаних сторінок):

  • Роз'єм IBM zOS .

    ... надає свої функції через FTP-з'єднання з IBM z / OS LPAR. Ви можете налаштувати свій проект SCLM на z / OS, а потім перевірити його на зміни через Jenkins.

    Особливості включають:

    • Подання користувача JCL завдання (з додатковим журналом, зібраним після закінчення).
    • Впровадження SCLM як SCM для ваших проектів, що дозволяє перевірити зміни SCLM.
    • Можливість побудови проектів SCLM в даний час може бути виконана лише за допомогою дії "Надіслати роботу ZOS".
  • Завантажити вихідний код Compuware для плагіна Endevor, PDS та ISPW .

    ... дозволяє користувачам Jenkins завантажувати члени Endevor, PDS або ISPW з мейнфрейму на ПК. Потім джерело можна отримати на ПК, наприклад, для аналізу та звітності SonarQube.

Оскільки 1-й плагін стосується SCLM (що стосується PDS), а 2-й плагін прямо заявляє про підтримку PDSes (від його імені), я вірю, що обидва можливі кандидати.

Отож, якщо припустити, що мій список входить у повний список (це?), Які плюси і мінуси будь-якого з них, які повинні допомогти мені вирішити, який із моїх справ найкращий?

Ps: Щось на кшталт пакету "Дженкінс Кікстарт", здається, не існує (принаймні, я його ще не знайшов).


1
Шукаючи, чимало пошуків, а може, і запитань тут, коли є певна проблема з певної теми. Хоча створення ресурсу Q / A чудово, але це занадто широко, як є.
Тенсібай

1
На питання було б простіше відповісти, якби ви окреслили проблему, яку ви хочете вирішити разом із Дженкінсом. Спроба вирішити конкретну проблему - це також гарний початок для вивчення нового інструменту!
Michael Le Barbier Grünewald

1
@ Pierre.Vriens Здається, набагато краще; дякую за редагування Я проголосував за повторне відкриття.
Aurora0001

1
Після рефлексії просто не намагайтеся занадто сильно узагальнити своє питання, опишіть проблему, з якою ви стикаєтесь, і де ви стикаєтесь зі стіною, я думаю, що це найкращий спосіб.
Тенсібай

1
@Tensibai merci за всі коментарі (спроби допомогти) ... Так "трохи" суворо, але не хвилюйся над цим (я можу це впоратися). Крім цього: затримайтеся на новій спробі вдосконалити (звузити) моє запитання.
Pierre.Vriens

Відповіді:


2

Я налаштував джинкіни для управління таблицями мейнфреймів. По суті, використовуючи плагін-скрипт плагіну. Я написав код, який обробляє переміщення файлів у мейнфреймі та викликав їх, хоча плагін. По суті, використання API мейнфреймів для підключення та команд vsc для переміщення файлів.


2

Раб Дженкінса працює в системних службах Unix z / OS і може виконувати звідти будь-який скрипт або функцію. Ми використовуємо плагін Git, щоб перетягнути вихідний код на z / OS, тоді у вас є різні варіанти роботи з ним. Ви можете використовувати збірку на основі залежностей від IBM, яка Groovy переноситься на z / OS плюс деякі розширення, щоб спеціально працювати з нативними функціями z / OS, такими як копія в PDS (або PDSE) або копіювання назад в zFS, а також можливість запуску MVS , TSO, ISPF команди та подають JCL.

Крім того, з новим оголошенням Zowe Zowe.org для нового проекту з відкритим кодом на z / OS ви також отримаєте доступ до ряду API на основі REST, що працюють з файлами та виконують інші завдання на z / OS, такі як виклик zOSMF.


Я планую це зробити: зберігати всі файли мейнфрейму в GitHub та встановлювати рабовласницю Jenkins в USS в z / OS. Під час запиту на фіксацію або витягнення веб-кукі в GitHub запустить роботу Дженкінса, яка завантажить файл з GitHub і подасть в z / OS для компіляції та посилання (у нас є сценарії Perl для цього зараз). Що ти думаєш?
Jirong Hu

1

Загалом, є два способи автоматизації дій від Дженкінса:

  1. Встановіть плагін для Дженкінса і використовуйте його в кроках для автоматизації завдань.
  2. Напишіть скрипт (оболонку, пітон, інше) та зателефонуйте йому з кроку для автоматизації завдань.

У обох підходів є недоліки / переваги. Хоча номер 1 - підхід до плагінів - дає вам функціональність і не вимагає від вас сценарію, він може бути жорстким і обмеженим у своїх можливостях. №2 - сценарій сценаріїв - вимагає писати сценарії та підтримувати їх, але може забезпечити набагато більшу гнучкість та свободу в автоматизації речей.

Сценаристичний підхід, як правило, використовує багато CLI - Aws cli, Docker cli тощо.

Якщо №2 - сценарій сценаріїв - життєздатний і вам зручно писати сценарії оболонки або інші сценарії, такі як python, щоб взаємодіяти з мейнфреймом, то Brightside може допомогти.

Ось приклад використання Brightside (безкоштовного CLI) для взаємодії з PDS на z / OS із сценарію оболонки:

    #!/bin/sh
    echo 'bright files create classic "USER.PUBLIC.SAMPLE.PDS"'
    bright files create classic "USER.PUBLIC.SAMPLE.PDS"
    echo ''

    echo 'bright files download all-members "USER.LIB.SAMP" -d MyPDS'
    bright files download all-members "USER.LIB.SAMP" -d MyPDS
    echo ''

    echo 'bright files upload dir-to-pds MyPDS "USER.PUBLIC.SAMPLE.PDS"'
    bright files upload dir-to-pds MyPDS "USER.PUBLIC.SAMPLE.PDS"
    echo ''

    echo 'bright files list all-members "USER.PUBLIC.SAMPLE.PDS"'
    bright files list all-members "USER.PUBLIC.SAMPLE.PDS"
    echo ''

    echo 'bright files delete data-set "USER.PUBLIC.SAMPLE.PDS(ALLOCLIB)" -f'
    bright files delete data-set "USER.PUBLIC.SAMPLE.PDS(ALLOCLIB)" -f
    echo ''

    echo 'bright files list all-members "USER.PUBLIC.SAMPLE.PDS"'
    bright files list all-members "USER.PUBLIC.SAMPLE.PDS"
    echo ''

    echo 'bright files delete data-set "USER.PUBLIC.SAMPLE.PDS" -f'
    bright files delete data-set "USER.PUBLIC.SAMPLE.PDS" -f
    echo ''

Ось вихід із цього сценарію:

введіть тут опис зображення введіть тут опис зображення

Досить просто зателефонувати до цих сценаріїв з Дженкінса і проаналізувати вихід з будь-якою метою.

Повне розкриття: Я працюю в CA, який створив Brightside, але ми використовуємо внутрішню програму CLI для точної мети інтеграції тестування нашої мейнфрейм-програми з Jenkins.


Ви його використовували?
пташенята

Я не бачу, як це може відповісти на питання навіть віддалено, будь ласка, відредагуйте свою відповідь, щоб пояснити, як вона може відповісти на питання, або я
видаляю

Звичайно, я додам більше деталей до своєї публікації.
Суджай Соломон

Ще одна річ, розкрийте свою приналежність до компанії, яку ви рекламуєте. Дивіться пункт про саморекламу на нашій сторінці поведінки . Це звучить як чесна спроба відповісти, я відчуваю, що втрачає сенс використовувати плагін, інтегрований у джинкіни для використання конвеєра, але принаймні це вже не схоже на "лише просування продукту".
Тенсібай

TL; DR: відповідати з вашим власником / створенням продукту - це нормально, коли ви розкриваєте своє посилання на продукт і пояснюєте, як це може вирішити проблему.
Тенсібай

1

@ Pierre.Vriens, wrt запитайте про "досліджувати доцільність управління даними, що зберігаються в особистих файлах (PDSes, тобто набори розділених даних) в мейнфреймі". операційна система для доступу до API для цього. У відповіді Sujay він пропонує використовувати Brightside, і цей інструмент використовує API zOSMF для спрощення цього завдання. Тоді, якщо ви хочете прив’язати Дженкінса до мейнфрейму для управління розділеними наборами даних (PDS) та наборами даних (PS), ви можете використовувати ці zOSMF API або ви можете використовувати Brightside .

У дусі розкриття інформації я працюю дизайнером UX для технологій CA, який будує Brightside.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.