14
วิธีทำเครื่องหมายบิลด์ไม่เสถียรในเจนกินส์เมื่อเรียกใช้เชลล์สคริปต์
ในโปรเจ็กต์ที่ฉันกำลังทำอยู่เรากำลังใช้เชลล์สคริปต์เพื่อดำเนินการงานต่างๆ บางสคริปต์เป็นสคริปต์ sh / bash ที่รัน rsync และบางสคริปต์เป็น PHP สคริปต์ PHP ตัวหนึ่งกำลังเรียกใช้การทดสอบการรวมบางอย่างที่ส่งออกไปยัง JUnit XML รายงานการครอบคลุมโค้ดและสิ่งที่คล้ายกัน เจนกินส์สามารถทำเครื่องหมายงานที่ประสบความสำเร็จ / ล้มเหลวขึ้นอยู่กับสถานะทางออก ในPHP สคริปต์จะออกด้วย 1หากตรวจพบว่าการทดสอบล้มเหลวระหว่างการรัน เชลล์สคริปต์อื่น ๆ รันคำสั่งและใช้โค้ดออกจากโค้ดเหล่านั้นเพื่อทำเครื่องหมายบิลด์ว่าล้มเหลว // :: End of PHP script: // If any tests have failed, fail the build if ($build_error) exit(1); ในJenkins Terminologyโครงสร้างที่ไม่เสถียรถูกกำหนดให้เป็น: บิวด์ไม่เสถียรหากสร้างสำเร็จและผู้เผยแพร่อย่างน้อยหนึ่งรายรายงานว่าไม่เสถียร ตัวอย่างเช่นหากกำหนดค่าผู้เผยแพร่ JUnit และการทดสอบล้มเหลวโครงสร้างจะถูกทำเครื่องหมายว่าไม่เสถียร ฉันจะทำให้เจนกินส์ทำเครื่องหมายบิลด์ว่าไม่เสถียรแทนที่จะเป็นเพียงความสำเร็จ / …