ฉันควรใช้ปลั๊กอินตัวใดเพื่อเริ่มต้นกับเจนกินส์เพื่อจัดการองค์ประกอบเมนเฟรมในรูปแบบ PDS


13

สมมติว่ามีคนคุ้นเคยกับ DevOps และเมนเฟรม แต่ใหม่สำหรับเจนกินส์ต้องการเริ่มต้นกับเจนกินส์เช่นไปที่:

หลังจากการติดตั้งและกำหนดค่าเจนกินส์ (น้อยที่สุด) เสร็จสิ้นแล้วคำถามที่แท้จริงจะกลายเป็น " Which of the typical Jenkins plugins, if any, would be needed?" จากปลั๊กอินต่าง ๆ ของเจนกินส์ที่ดูเหมือนจะสมเหตุสมผลในกรณีของฉันดูเหมือนว่าสิ่งเหล่านี้เป็นตัวเลือกที่เป็นไปได้ (อัญประกาศมาจากหน้าที่เชื่อมโยง):

  • ไอบีเอ็ม Zos เชื่อมต่อ

    ... จัดเตรียมฟังก์ชันผ่านการเชื่อมต่อ FTP กับ IBM z / OS LPAR คุณสามารถกำหนดค่าโครงการ SCLM ของคุณบน z / OS แล้วตรวจสอบการเปลี่ยนแปลงผ่าน Jenkins

    คุณสมบัติรวมถึง:

    • การส่งงาน JCL ของผู้ใช้ (โดยเก็บบันทึกเสริมเมื่อเสร็จสิ้น)
    • แนะนำ SCLM ในฐานะ SCM สำหรับโครงการของคุณซึ่งอนุญาตให้เช็คเอาต์การเปลี่ยนแปลง SCLM
    • ความสามารถในการสร้างโครงการ SCLM ในปัจจุบันสามารถดำเนินการได้ผ่านการดำเนินการสร้าง 'ส่ง zOS Job' เท่านั้น
  • ดาวน์โหลด Compuware Source Code สำหรับ Endevor, PDS และ ISPW ปลั๊กอิน

    ... อนุญาตให้ผู้ใช้ Jenkins ดาวน์โหลดสมาชิก Endevor, PDS หรือ ISPW จากเมนเฟรมลงในพีซี จากนั้นสามารถเข้าถึงซอร์สบนพีซีตัวอย่างเช่นสำหรับการวิเคราะห์และการรายงาน SonarQube

เนื่องจากปลั๊กอินตัวที่ 1 เป็นเรื่องเกี่ยวกับ SCLM (ซึ่งเป็นเรื่องเกี่ยวกับ PDSes) และปลั๊กอินตัวที่ 2 ระบุอย่างชัดเจนว่ารองรับ PDSes (ในชื่อ) ฉันจึงเชื่อว่าทั้งคู่เป็นตัวเลือกที่เป็นไปได้

ดังนั้นสมมติว่าตัวเลือกของฉันเสร็จสมบูรณ์ (มันคืออะไร) ข้อดีและข้อเสียของอันใดอันหนึ่งที่ควรช่วยฉันตัดสินใจว่าอันไหนดีที่สุดสำหรับคดีของฉัน

Ps: บางอย่างเช่น "Jenkins Kickstart" แพ็คเกจดูเหมือนจะไม่มีอยู่ (อย่างน้อยฉันก็ยังไม่พบ)


1
โดยการค้นหาการค้นหาจำนวนมากและอาจถามที่นี่เมื่อมีข้อผิดพลาดในเรื่องที่เฉพาะเจาะจง ในขณะที่การสร้างทรัพยากรของ Q / A นั้นยอดเยี่ยมซึ่งกว้างเกินไป
Tensibai

1
คำถามจะตอบได้ง่ายขึ้นหากคุณต้องการร่างปัญหาที่คุณต้องการแก้ไขด้วยเจนกินส์ การพยายามแก้ปัญหาเฉพาะเป็นการเริ่มต้นที่ดีในการเรียนรู้เครื่องมือใหม่!
Michael Le Barbier Grünewald

1
@ Pierre.Vriens ดูเหมือนดีขึ้นแล้วในตอนนี้; ขอบคุณสำหรับการแก้ไข ฉันลงคะแนนให้เปิดใหม่แล้ว
Aurora0001

1
หลังจากรีเฟล็กชั่นอย่าพยายามสรุปคำถามของคุณมากเกินไปอธิบายปัญหาที่คุณเผชิญและที่ที่คุณกำลังเผชิญกับกำแพงฉันคิดว่านั่นเป็นวิธีที่ดีที่สุด
Tensibai

1
@ Tensibai Merci สำหรับความคิดเห็นทั้งหมด (พยายามที่จะช่วย) ... ใช่ "bit" รุนแรง แต่ไม่ต้องกังวลมากเกินไปเกี่ยวกับเรื่องนั้น (ฉันสามารถจัดการได้) นอกจากนั้นขอให้พยายามปรับปรุงคำถามของฉันให้แคบลง
Pierre.Vriens

คำตอบ:


2

ฉันตั้งค่าเจนกินส์เพื่อจัดการตารางเมนเฟรม ใช้ปลั๊กอินสคริปต์ Groovy เป็นหลัก ฉันเขียนโค้ดที่จัดการการเคลื่อนไหวของไฟล์บนเมนเฟรมและเรียกมันว่าปลั๊กอิน ใช้ประโยชน์จาก mainframes API เป็นหลักในการเชื่อมต่อและคำสั่งของ vsc เพื่อย้ายไฟล์


2

Jenkins slave ทำงานในบริการระบบยูนิกซ์ของ z / OS และสามารถเรียกใช้สคริปต์หรือฟังก์ชั่นใด ๆ จากที่นั่น เราใช้ปลั๊กอิน Git เพื่อดึงซอร์สโค้ดไปยัง z / OS จากนั้นคุณมีทางเลือกที่แตกต่างกันในการทำงานกับมัน คุณสามารถใช้ IBM Dependency Based Build ซึ่งเป็น Groovy ที่ส่งไปยัง z / OS รวมถึงส่วนขยายบางอย่างเพื่อทำงานกับฟังก์ชัน z / OS ดั้งเดิมเช่นคัดลอกไปยัง PDS (หรือ PDSE) หรือคัดลอกกลับไปที่ zFS รวมถึงความสามารถในการเรียกใช้ MVS , TSO, ISPF สั่งและส่ง JCL

นอกจากนี้ด้วยการประกาศ Zowe ใหม่ Zowe.org สำหรับโครงการโอเพนซอร์สใหม่บน z / OS คุณยังสามารถเข้าถึง API ที่ใช้ REST จำนวนหนึ่งทำงานกับไฟล์และทำงานอื่น ๆ บน z / OS เช่นการเรียก zOSMF


ฉันวางแผนที่จะทำสิ่งนี้: เก็บไฟล์เมนเฟรมทั้งหมดใน GitHub และติดตั้งทาสเจนกินส์ใน USS ใน z / OS ในระหว่างการส่งคำขอหรือดึง webhook ใน GitHub จะเริ่มงาน Jenkins ซึ่งจะดาวน์โหลดไฟล์จาก GitHub และส่งไปยัง z / OS เพื่อคอมไพล์และลิงก์ (เรามีสคริปต์ Perl เพื่อทำสิ่งนี้) คุณคิดอย่างไร?
Jirong Hu

1

โดยทั่วไปมีสองวิธีในการดำเนินการอัตโนมัติจาก Jenkins:

  1. ติดตั้งปลั๊กอินสำหรับเจนกินส์และใช้เป็นขั้นตอนเพื่อทำงานอัตโนมัติ
  2. เขียนสคริปต์ (shell, python, อื่น ๆ ) และเรียกใช้จากขั้นตอนเพื่อทำให้งานเป็นไปโดยอัตโนมัติ

มีข้อเสีย / ผลประโยชน์กับทั้งสองวิธี ในขณะที่ # 1 - วิธีปลั๊กอิน - ให้คุณออกจากฟังก์ชันการทำงานของกล่องและไม่ต้องการให้คุณสคริปต์มันอาจจะเข้มงวดและ จำกัด ในความสามารถของมัน # 2 - วิธีการเขียนสคริปต์ - คุณต้องเขียนสคริปต์รวมทั้งรักษาสคริปต์ แต่อาจให้ความยืดหยุ่นและอิสระในการทำสิ่งต่างๆโดยอัตโนมัติ

วิธีการเขียนสคริปต์โดยทั่วไปใช้ CLI จำนวนมาก - aws cli, docker cli เป็นต้น

ถ้า # 2 - วิธีการเขียนสคริปต์ - เป็นไปได้และคุณพอใจกับการเขียนเชลล์สคริปต์หรือสคริปต์อื่น ๆ เช่น python เพื่อโต้ตอบกับเมนเฟรมแล้ว Brightside สามารถช่วยได้

นี่คือตัวอย่างของการใช้Brightside (free 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


คุณเคยใช้มัน?
ลูกไก่

ฉันล้มเหลวที่จะดูว่าสิ่งนี้อาจตอบคำถามได้จากระยะไกลได้อย่างไรโปรดแก้ไขคำตอบของคุณเพื่ออธิบายว่าจะสามารถตอบคำถามได้อย่างไรหรือฉันจะลบออกใน 24 ชั่วโมง
Tensibai

แน่นอนว่าฉันจะเพิ่มรายละเอียดในโพสต์ของฉัน
Sujay Solomon

อีกอย่างหนึ่งโปรดเปิดเผยความร่วมมือของคุณกับ บริษัท ที่คุณกำลังโปรโมต ดูวรรคโปรโมชั่นในตัวเองของเราหน้าพฤติกรรม ดูเหมือนว่าจะพยายามตอบคำถามแบบตรงไปตรงมาฉันรู้สึกว่าพลาดการใช้ปลั๊กอินที่รวมอยู่ใน jenkins สำหรับการใช้ไปป์ไลน์ แต่อย่างน้อยก็ดูเหมือนว่า 'การส่งเสริมผลิตภัณฑ์เท่านั้น' อีกต่อไป
Tensibai

TL; DR: การตอบกลับด้วยผลิตภัณฑ์ที่คุณเป็นเจ้าของ / สร้างนั้นใช้ได้เมื่อคุณเปิดเผยลิงก์ของคุณกับผลิตภัณฑ์และอธิบายว่ามันสามารถแก้ปัญหาได้อย่างไร
Tensibai

1

@ Pierre.Vriens ถามคำถามของคุณเกี่ยวกับ“ ตรวจสอบความเป็นไปได้ในการจัดการข้อมูลที่เก็บไว้ในไฟล์ส่วนบุคคล (PDSes เช่นชุดข้อมูลที่แบ่งพาร์ติชัน) บนเมนเฟรม” คุณสามารถใช้ zOS Management Facility (zOSMF) ซึ่งมาพร้อมกับ z / OS ระบบปฏิบัติการเพื่อเข้าถึง API สำหรับสิ่งนั้น ในคำตอบของ Sujay เขาแนะนำให้ใช้ Brightside และเครื่องมือนั้นแตะลงใน zOSMF API เพื่อทำให้งานนั้นง่ายขึ้น ดังนั้นแล้วถ้าคุณต้องการที่จะผูกเจนกินส์เมนเฟรมในการจัดการชุดข้อมูลพาร์ติชัน (PDS) และชุดข้อมูล (PS), คุณสามารถใช้เหล่านี้ APIs zOSMF หรือคุณอาจจะใช้Brightside

ด้วยจิตวิญญาณของการเปิดเผยข้อมูลฉันทำงานเป็น UX Designer สำหรับ CA Technologies ซึ่งสร้าง Brightside

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.