การเปรียบเทียบเซิร์ฟเวอร์ CI? [ปิด]


87

ฉันกำลังค้นหาการเปรียบเทียบเซิร์ฟเวอร์การรวมต่อเนื่อง (CI) ที่แตกต่างกัน (โดยเฉพาะที่เน้นที่. NET) และไม่พบเลย

ดังนั้นฉันจึงอยากทราบว่าคุณคิดอย่างไรเกี่ยวกับโซลูชันต่างๆที่มีข้อดีข้อเสียข้อกำหนดในการโฮสต์คืออะไรและเหตุใด CI Server XY จึงเป็นเซิร์ฟเวอร์ที่คุณเลือก

ฉันสนใจในความคิดของคุณ (อย่าลังเลที่จะแสดงความคิดเห็นเกี่ยวกับผู้อื่นเพื่อ):

จุดที่น่าสนใจ ได้แก่

  • การกำหนดค่า (ง่ายยืดหยุ่น)
  • การรวมเข้ากับ SCM (โดยเฉพาะ DSVC เช่น git หรือ hg)
  • บูรณาการกับระบบสร้าง (MSBuild, NAnt, Rake)
  • บูรณาการกับกรอบการทดสอบ
  • บูรณาการกับแหล่งที่มา Anaylsis (Simian, NDepend, FxCop, NCover ฯลฯ )
  • WebInterface / Dashboards
  • ข้อกำหนดโครงสร้างพื้นฐาน

31
27 คนพบว่ามีประโยชน์ - ยังปิดอยู่ SIGH
Ryan

CruiseControl.NET ถูกย้ายหลังจากความร่วมมือกับ Thoughtworks สิ้นสุดลง URL ใหม่: cruisecontrolnet.org
Jowen

2
@Ryan มีสิ่งที่น่าสนใจมากมายในโลกที่ไม่เหมาะกับ SO
Andy Wiesendanger

ทำไมไม่Azure DevOps ?
zwcloud

คำตอบ:


51

ไม่มีคำถามเช่นนี้หากไม่มีลิงก์ไปยังเมทริกซ์คุณลักษณะ CIขนาดใหญ่(Web Archive)ซึ่งแสดงรายการตัวเลือก CI ทุกตัว

แต่ฉันคิดว่าสิ่งสำคัญคือต้องมองไปข้างหน้าถึงขอบเขตของสิ่งที่คุณต้องการรวมไว้ในระบบ CI ของคุณ มันจะเป็นเพียงการสร้างหรือคุณกำลังจะนำองค์ประกอบอื่น ๆ เช่นการวิเคราะห์แบบคงที่การอ้างอิงข้ามโครงการการปรับใช้การทดสอบการทำงาน ฯลฯ เพื่อช่วยในการวางแผนนั้นฉันได้สร้างแผนภูมิผนังนี้ในElements of Enterprise CI (PDF ไม่ต้องลงทะเบียน) โปรดอย่าให้ "E-word" ทำให้คุณผิดหวัง ฉันแค่หมายถึงสิ่งที่อยู่นอกเหนือการสร้าง CI คำติชมพื้นฐาน :)

ไม่ใช่เครื่องมือเฉพาะ แต่แสดงวิธีปฏิบัติต่างๆที่คุณอาจพิจารณาในขณะที่คุณอยู่ในขั้นตอนการวางแผน / การประเมินผล


5
Geez เมทริกซ์นั้นทนทุกข์ทรมานจาก "DeathByOverload" UX พื้นฐานกำหนดว่ากริดขนาดใหญ่จะไร้ประโยชน์เว้นแต่จะมีการกรอง หากต้องการเพิ่มการดูถูกการบาดเจ็บไม่มีการดาวน์โหลด (csv) และไม่สามารถดาวน์โหลด markdown ได้โดยตรง แม้จะต่อต้านการคัดลอกลงใน excel ... ฉันยอมแพ้
sehe

4
ลิงก์ Feature Matrix หมดแล้ว :(
Marty


11
หน้าที่เก็บถาวร: web.archive.org/web/20130730154141/http://…
Darren Griffith

1
หน้าเว็บที่เก็บถาวรไม่ทำงานเนื่องจาก robots.txt
Sebazzz

14

ไม่มีประโยชน์ใน:

แก้ไข : Jonik ชี้ให้เห็นในความคิดเห็นฉันพลาดอะไรคือความแตกต่างระหว่างโครงการ Hudson และ CruiseControl สำหรับ Java และทำไมถึงติดตั้งเครื่องสร้าง C #? . คุณจะพบคำตอบที่ลึกซึ้งมาก กล่าวอีกนัยหนึ่งฉันคิดว่าทุกสิ่งที่คุณกำลังมองหานั้นอยู่ใน Stack Overflow แล้ว


1
ฉันยอมรับว่า SO นั้นค่อนข้างเต็มไปด้วยการเปรียบเทียบเซิร์ฟเวอร์ CI ฉันไม่รู้เกี่ยวกับ Teamcity และ CIFactory แต่เท่าที่ CC (.net) และ Hudson ไปทางเลือกก็ค่อนข้างชัดเจนในปัจจุบัน นี่คือสิ่งที่ฉันใช้: stackoverflow.com/questions/604385/… . (ไม่ต้องคำนึงถึงการเน้น Java ในคำถามนั้นฮัดสันก็ยอดเยี่ยมสำหรับ. NET เช่นกัน: stackoverflow.com/questions/616149/… )
Jonik

@Jonik ขอบคุณลิงค์ที่ดีมาก ฉันไม่รู้ว่าพลาดไปได้อย่างไรพวกเขาทั้งสองให้คำตอบที่ดีและข้อมูลที่เป็นประโยชน์มาก
Pascal Thivent

"ไม่รู้เกี่ยวกับ Teamcity และ CIFactory" ... นั่นคือเหตุผลที่ฉันต้องการการเปรียบเทียบ thorugh ที่ไม่เพียง แต่เกี่ยวข้องกับ x กับ y นั่นคือเหตุผลที่เป็นวิกิชุมชนอย่าลังเลที่จะดึงข้อสรุปจากลิงก์ที่อ้างอิง
Johannes Rudolph

@ โจฮันเนสพอใช้; ฉันยอมรับว่าคำถามที่มีอยู่ส่วนใหญ่มีขอบเขต จำกัด มากกว่านี้ แต่อาจจะไม่มีผู้ใช้หลายคนที่นี่ด้วยประสบการณ์ที่มีทั้งหมดของฮัดสัน, CC, TeamCity และ CIFactory ที่สามารถให้การเปรียบเทียบที่ดี หากคุณต้องการเซิร์ฟเวอร์ CI คำแนะนำของฉัน (จากประสบการณ์ส่วนตัวและเช่นการโหวตในstackoverflow.com/questions/140453/… ) ให้ลองใช้ฮัดสันก่อน
Jonik

7

TeamCityมีคุณสมบัติที่ยอดเยี่ยมในการอนุญาตให้นักพัฒนาทำการสร้างส่วนบุคคลก่อนที่จะกระทำ มีประโยชน์มาก!

CruiseControl.NETเป็นปู่ย่าตายายของกลุ่มและด้วยเหตุนี้จึงมีการมองเห็นเล็กน้อยเป็นต้นเนื่องจากเป็นเวลานานแล้ว Google จึงรู้วิธีแก้ไขปัญหาต่างๆที่คุณจะเกิดขึ้น

ด้วยเหตุผลเหล่านี้ (ในหมู่คนอื่น ๆ ) ฉันใช้ CruiseControl.NET ในที่ทำงานและ TeamCity ที่บ้านและในชีวิตโอเพ่นซอร์สของฉัน :)


อ่า CC.Net. net-port ของ CruiseControl ไม่ใช่เหรอ
Mnementh

5

ฉันเป็นผู้ใช้ CruiseControl.NET มาตลอด ทีมของฉันใช้มันในที่ทำงานและฉันใช้ที่บ้านสำหรับโครงการส่วนตัว

โดยเฉพาะอย่างยิ่ง CruiseControl.NET ช่วยให้ฉันสามารถเรียกใช้กระบวนการ CI ทั้งหมด: การสร้างการอัปเดตเวอร์ชันการทดสอบหน่วยและการรวมการเก็บถาวรของแหล่งที่มาหรือผู้สมัครรุ่นการครอบคลุมรหัสแม้กระทั่งการปรับใช้กับระบบทดสอบของเราในที่ทำงาน สามารถปรับแต่งได้สูงทำงานได้ดีกับ MSBuild และ NAnt และยังมีสถาปัตยกรรมปลั๊กอินที่ขยายได้

ฉันทำทุกอย่างที่ฉันต้องการ

ข้อเสียที่ใหญ่ที่สุด: การกำหนดค่าบางครั้งอาจเป็นความเจ็บปวดและอาจต้องใช้เวลา แต่เมื่อเสร็จแล้วก็เสร็จและตามที่ผู้โพสต์คนอื่นบอกว่าฉันชอบที่จะเห็นสัญญาณ "การสร้างที่ประสบความสำเร็จ" เพราะฉันรู้ว่าไม่เพียง แต่สร้างตัวเองเท่านั้น แต่ยังทำให้การทดสอบหน่วยและการผสานรวมของฉันประสบความสำเร็จอีกด้วย


2

Team Foundation Buildเป็นตัวเลือกและโต้ตอบกับ Team Foundation Server ได้เป็นอย่างดี ฟรีตราบเท่าที่คุณได้รับอนุญาต TFS


ฉันคิดว่าไม่มีใครพูดถึง TFS Build System ซึ่งรวมเข้ากับ TFS อย่างสมบูรณ์และรองรับโดย Microsoft นักพัฒนา. Net ส่วนใหญ่อาจติดตั้ง TFS ไว้แล้ว
Diego Mendes

Team Buildsใน TFS 2015/2017 นั้นง่ายกว่ามากในการกำหนดค่าและใช้งานและคุณยังสามารถตรวจสอบได้แบบเรียลไทม์ด้วยCatLight build monitor
Thomas Bennet

อาจมีเหตุผลที่ไม่ได้กล่าวถึง ... 2 เซ็นต์ของฉัน: เพิ่งเริ่มทำงานในโครงการที่ใช้มันเรากำลังพยายามปรับปรุงระบบอัตโนมัติของเราและสร้างไปป์ไลน์การจัดส่ง ... แต่ในขณะนี้ CI "หมด นาที "แล้วเดาว่า ... คุณต้องจ่ายอะไรบ้าง นั่นคือเหตุผลที่ฉันอยู่ในหัวข้อนี้ ...
Julia

1

เราใช้ฮัดสันในที่ทำงาน เหตุผลหลักคือติดตั้งง่ายมาก คุณสามารถทำสงครามได้โดยตรง (เป็น jar ที่ปฏิบัติการได้) หรือปรับใช้ที่ servlet-container ใดก็ได้ และคุณพร้อมที่จะเริ่ม นอกจากนี้ฮัดสันยังรองรับเครื่องมือมากมายและสามารถขยายได้ด้วยระบบปลั๊กอิน


1

เราเปลี่ยนจาก CruiseControl.NET เป็น TeamCity เนื่องจากความง่ายในการกำหนดค่า TeamCity ยังมีคุณสมบัติเพิ่มเติม แต่เหตุผลหลักคือ Web UI ที่ดีนั้นใช้งานง่ายกว่าไฟล์คอนฟิกูเรชัน XML

แก้ไข: งานส่วนใหญ่ TeamCity จะทำนอกกรอบ เมื่อจำเป็นเราใช้ NAnt


1

CruiseControl.NET - อาจเป็นเรื่องยากที่จะตั้งค่า (เช่นเดียวกับระบบ CI ส่วนใหญ่) แต่ก็คุ้มค่าที่จะอดทนกับ. ขณะนี้ฉันได้ตั้งค่าให้เรียกใช้การทดสอบหน่วยเมื่อการสร้างเสร็จสมบูรณ์และเพื่อผลิตตัวติดตั้ง Wix ตามความต้องการ ดังที่ Dan กล่าวว่ามันดูเก่าไปหน่อย แต่ก็ไม่สำคัญเพราะมันให้ข้อมูลมากมายที่ง่ายต่อการอ่านและอ่านง่าย

สิ่งหนึ่ง - ตรวจสอบให้แน่ใจว่านักพัฒนาของคุณทุกคนได้ติดตั้ง CC Tray ทำงานและชี้ไปที่งานสร้างของพวกเขา เป็นความรู้สึกที่ดีที่ได้รับ "งานสร้างที่ประสบความสำเร็จ" ในถาดการแจ้งเตือนของคุณ


0

เรากำลังใช้ ccnet ในที่ทำงานซึ่งเหมาะกับความต้องการส่วนใหญ่ของเรา (เรามีงานสร้างอัตโนมัติประมาณ 50 ชิ้น) แต่ต้องการคนหนึ่งคนสำหรับการปรับแต่งและแก้ไขแบบเต็มเวลา

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

ความนับถือ,

เซบาสเตียน


0

ฉันสืบทอดเซิร์ฟเวอร์ luntbuild ไม่ใช่ตัวเลือกที่ดีสำหรับโครงการ. NET หากคุณพบว่าคุณกลับไปใช้บิลด์เซิร์ฟเวอร์เพื่อรันงานบรรทัดคำสั่งทั่วไปอยู่ตลอดเวลาแสดงว่ามีบางอย่างผิดปกติ เซิร์ฟเวอร์บิลด์ที่ดีมีความเข้าใจที่ดีเกี่ยวกับเอาต์พุตการทดสอบยูนิตและงาน msbuild เป็นมากกว่าคำสั่งทึบแสงที่จะรันเมื่อระบบควบคุมต้นทางเปลี่ยนไป

ฉันสนุกกับการย้ายไปที่ Team City


0

ฉันค่อนข้างใหม่สำหรับ CI-scene และฉันได้มุ่งเน้นไปที่ CruiseControl.NET โดยใช้ NAnt และ Ivy เพื่อสร้างโครงการ. NET ของฉัน

ฉันพบว่า CruiseControl.NET สามารถปรับให้เข้ากับเครื่องมืออื่น ๆ ได้มากมายเช่น NCover / NUnit / ฯลฯ พวกเขาทั้งหมดเชื่อมต่อกับสิ่งนี้และรวมผลลัพธ์สำหรับกระบวนการสร้างแบบรวม

ฉันจะมองหา TeamCity ในอนาคตอันใกล้เพื่อความสนใจของตัวเอง แต่ฉันคิดว่า CruiseControl ทำงานได้ดี แต่ก็ทำได้ดีพอ ๆ กับ build-script ของคุณเท่านั้น! หากเป็นกางเกงแล้วการสร้างของคุณสามารถคาดหวังได้ว่าจะดี

แต่โดยสรุป CruiseControl.NET เป็นทางออกที่ดี แต่ฉันยังไม่พบว่าการแข่งขันนั้นดีเพียงใดเมื่อเปรียบเทียบกัน


0

เรามีความสุขกับฮัดสัน ฉันไม่มีอะไรจะเปรียบเทียบ แต่มันง่ายมากที่จะกำหนดค่าและเริ่มทำงาน ตอนนี้สร้างเฉพาะโปรเจ็กต์ Win32 C ++ และตัวติดตั้ง แต่เรากำลังพอร์ตไปยัง Linux และมันควรจะทำงานร่วมกับมัน

รับที่เก็บSubversionโดยไม่มีปัญหาใด ๆ และส่งอีเมลแจ้งเตือน ฯลฯ เราชอบมันมาก อีกครั้งเรามีประสบการณ์ที่ จำกัด กับการเปรียบเทียบ


0

ฉันทำงานกับ CruiseControl.NET, TFS 2012 และ TeamCity 7.x มาหลายปีแล้วและฉันเชื่อว่า TeamCity ดีที่สุดเนื่องจากใช้งานง่าย UI ที่สะดวกสบายและให้ข้อมูลและคุณสมบัติเจ๋ง ๆ อื่น ๆ เช่นการสร้างการอ้างอิงและอื่น ๆ อีกมากมาย มันใช้งานได้จริงฉันชอบมัน

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