สำหรับโครงการของฉันฉันต้องเลือกระหว่าง Jenkins และ Travis-CI ฉันใช้ Jenkins มาหลายปีแล้ว แต่ฉันก็อ่านบทวิจารณ์ที่ดีเกี่ยวกับ Travis-CI ด้วย
คุณจะใช้อันไหนกับโครงการโอเพ่นซอร์ส ประโยชน์หรือข้อดีหลักของทั้งคู่คืออะไร
สำหรับโครงการของฉันฉันต้องเลือกระหว่าง Jenkins และ Travis-CI ฉันใช้ Jenkins มาหลายปีแล้ว แต่ฉันก็อ่านบทวิจารณ์ที่ดีเกี่ยวกับ Travis-CI ด้วย
คุณจะใช้อันไหนกับโครงการโอเพ่นซอร์ส ประโยชน์หรือข้อดีหลักของทั้งคู่คืออะไร
คำตอบ:
Travis-ci และ Jenkins ในขณะที่ทั้งสองเป็นเครื่องมือสำหรับการรวมอย่างต่อเนื่องจะแตกต่างกันมาก
Travis เป็นบริการโฮสต์ (ฟรีสำหรับโอเพ่นซอร์ส) ในขณะที่คุณต้องโฮสต์ติดตั้งและกำหนดค่า Jenkins
เทรวิสไม่มีงานทำเหมือนในเจนกินส์ คำสั่งที่เรียกใช้เพื่อทดสอบรหัสนั้นมาจากไฟล์ที่มีชื่อ.travis.yml
ซึ่งตั้งอยู่ตามรหัสโครงการของคุณ สิ่งนี้ทำให้ง่ายต่อการมีรหัสทดสอบที่แตกต่างกันในแต่ละสาขาเนื่องจากแต่ละสาขาสามารถมีไฟล์. travis.yml เวอร์ชันของตนเอง
คุณสามารถมีคุณสมบัติที่คล้ายกันกับเจนกินส์ถ้าคุณใช้หนึ่งในปลั๊กอินต่อไปนี้:
.jervis.yml
ไฟล์ที่พบที่รากของรหัสโครงการ หาก.jervis.yml
ไม่มีอยู่ก็จะกลับไปใช้.travis.yml
ไฟล์แทนมีบริการโฮสต์อื่น ๆ ที่คุณอาจพิจารณาสำหรับการรวมอย่างต่อเนื่อง (รายการที่ไม่ครบถ้วน):
คุณอาจต้องการอยู่กับเจนกินส์เพราะคุณคุ้นเคยหรือไม่ต้องการพึ่งพาบุคคลที่สามสำหรับระบบการรวมอย่างต่อเนื่องของคุณ อีกอย่างฉันจะทิ้งเจนกินส์และไปกับหนึ่งในบริการ CI ที่โฮสต์ฟรีเพราะพวกเขาช่วยให้คุณประหยัดปัญหาได้มาก (โฮสต์ติดตั้งกำหนดค่าเตรียมงาน)
ฉันจะเลือกตัวเลือกต่อไปนี้ขึ้นอยู่กับที่ที่เก็บรหัสของคุณอยู่:
ในการตั้งค่า Travis-CI ในโครงการ github สิ่งที่คุณต้องทำคือ:
คุณสมบัติที่คุณได้รับคือ:
ฉันทำงานกับทั้ง Travis และ Jenkins: ฉันจะทำรายการคุณสมบัติของทั้งสอง:
เทรวิสมาในสถานที่แรก มันง่ายมากที่จะติดตั้ง ใช้เวลาน้อยกว่าหนึ่งนาทีในการตั้งค่าด้วย GitHub
เจนกินส์:
เทรวิส:ทุกคนที่มีสิทธิ์การเขียนบน GitHub สามารถเรียกใช้งานบิลด์ใหม่ได้โดยคลิกที่ `เริ่มสร้างใหม่
Jenkins:เรียกใช้งานบิลด์ใหม่โดยอ้างอิงจากวลี คุณให้ข้อความวลีใน PR / commit reverify jenkins
คำอธิบายเช่น
Travis: Travis จัดเตรียมสภาพแวดล้อมที่โฮสต์ มันติดตั้งซอฟต์แวร์ที่จำเป็นสำหรับทุกรุ่น มันเป็นกระบวนการที่ใช้เวลานาน
Jenkins:ตั้งค่าครั้งเดียว ติดตั้งซอฟต์แวร์ที่จำเป็นทั้งหมดบนเครื่องโหนด / บ่าวจากนั้นสร้าง / ทดสอบบนสภาพแวดล้อมที่ติดตั้งไว้ล่วงหน้า
เทรวิส:รองรับการสร้างบันทึกเพื่อวางใน Amazon S3
Jenkins:ติดตั้งง่ายด้วยปลั๊กอิน build วัตถุ
ฉันจะแนะนำ Travis สำหรับโครงการโอเพ่นซอร์ส ง่ายเพียงกำหนดค่าและใช้งาน
ขั้นตอนการตั้งค่าง่าย ๆ :
.travis.yml
ไฟล์ในรูทของโครงการของคุณ เพิ่ม Travis เป็นบริการในหน้าการตั้งค่าที่เก็บของคุณตอนนี้ทุกครั้งที่คุณยอมรับในพื้นที่เก็บข้อมูลของคุณเทรวิสจะสร้างโครงการของคุณ คุณสามารถทำตามขั้นตอนง่าย ๆ เพื่อเริ่มต้นกับ Travis CI
.travis.yml
!) ฉันมีโครงการ github หลายอย่างที่ฉันใช้เจนกินส์เป็นของตัวเองและฉันก็ไม่เสียใจเลย หากคุณมีความสามารถในการจัดการเจนกินส์ของคุณเองฉันขอแนะนำให้ใช้ตัวเลือกนั้น ยินดีที่ได้ควบคุม 100% สภาพแวดล้อม CI ของคุณ