TL: DR: คุณรู้จักผู้ให้บริการ CI / CD สำหรับ iOS ที่มีดาต้าเซ็นเตอร์ / บิลด์บ็อกซ์ในเอเชียหรืออย่างน้อยในยุโรป (คะแนนโบนัสหากพวกเขาให้ทั้งสร้างและปรับใช้ แต่สร้างเป็น MVP)
กลับเรื่อง:
เรากำลังเรียกใช้ CI / CD ในระดับสำหรับ iOS และ Android: เรารันทั้ง 10+ พร้อมกันเพื่อสร้าง / ทดสอบเพื่อตรวจสอบสาขา Merge-Request ของเรา เรากำลังใช้ผู้ให้บริการ SaaS / คลาวด์เราค่อนข้างพอใจกับ ... ยกเว้นที่ตั้งของพวกเขา
เราอยู่ในเอเชียเช่นเดียวกับที่มาของเรา ลูกค้าอยู่ในอุตสาหกรรมที่มีการควบคุมอย่างเข้มงวดและต่อสู้อย่างหนักเพื่อรักษาแหล่งกำเนิดไว้ล่วงหน้าเนื่องจากพวกเขาคิดว่าผู้ควบคุมเครื่องยังไม่สามารถจัดการกับแหล่งที่มาในคลาวด์ได้ โปรดยอมรับหลักฐานนี้ ฉันเข้าใจว่าทำไมพวกเขาต้องปล่อยมันไป แต่ตอนนี้ ... คิดว่าพวกเขาทำไม่ได้
สิ่งที่หมายถึงคือ: แหล่งที่มาอยู่ในเอเชีย แต่ผู้ให้บริการ CI / CD ที่สร้างมันดูเหมือนว่าจะอยู่ในสหรัฐอเมริกา (Circle, Buddybuild ฯลฯ ) แบนด์วิดท์ข้ามมหาสมุทรแปซิฟิกดูดโดยเฉพาะอย่างยิ่งในช่วงวันทำการเอเชีย เวลาที่ใช้โดยทุก ๆ โคลนนิ่งก่อนการสร้างทุกครั้งจะสูงถึง> 60 นาทีสำหรับวันทำการส่วนใหญ่
การทำ CI / CD ในระยะแรกนั้นค่อนข้างง่ายสำหรับ Android ที่สร้างขึ้นบนคอนเทนเนอร์ของนักเทียบท่า แต่ iOS เป็นปัญหา คุณต้องทำให้ตัวเองอยู่ในธุรกิจการสอนคนให้เป็นผู้ดูแลระบบ OSX และใช้งานกล่องที่สร้างได้อย่างต่อเนื่องหรือคุณต้องให้ผู้เชี่ยวชาญแก้ปัญหานั้นให้คุณ
หมายเหตุ:
- ฉันไม่ได้ขอคำแนะนำชุมชน SE! นี่เป็นคำถามทางเทคนิคที่เกิดขึ้นจริง: มีบริการบางอย่างที่ตรงตามข้อกำหนดทางเทคนิคบางอย่างหรือไม่
- เรารู้ว่า MacStadium สามารถให้บริการ MacOS VM ในไอร์แลนด์ได้ แต่นั่นหมายความว่าคุณต้องจัดการกระบวนการ CI ทั้งหมดของคุณเองรวมถึงงานผู้ดูแลระบบระดับต่ำจำนวนมากที่เราต้องการหลีกเลี่ยง นอกจากนี้ยังหมายถึงการแยก build จากการปรับใช้อย่างแน่นอน แต่เวลาแฝงนั้นดูเหมือนจะยอมรับได้
- เรารู้จักคนอื่น ๆ ที่มีแพลตฟอร์ม CI / CD บนคลาวด์ใกล้ชิดกับเรามากขึ้น แต่ไม่มีการสนับสนุน iOS / MacOS
- เรารู้ว่าโคลนตื้น ๆ ต้องการแบนด์วิดท์น้อยกว่าซึ่งจะช่วยบรรเทาปัญหาได้ แต่พวกเขายังมีปัญหาอื่น ๆ ซึ่งหมายความว่าผู้ให้บริการปัจจุบันของเรายังไม่รองรับ และพวกเขาไม่ได้แก้ปัญหาทั้งหมดในทุกกรณี
- เราได้ทดลองใช้การใช้กระจก GitHub นอกสถานที่ซึ่งแก้ปัญหาได้บ้าง แต่ไม่ได้แก้ไขปัญหาด้านกฎระเบียบ มันยังไม่สามารถใช้งานได้กับ webhooks จำนวนมากและโดยเฉพาะ webhooks ของ Merge-Request ที่มีความสำคัญต่อ CI ของเราสำหรับรหัสใหม่ เราสามารถสร้างตัวแทนที่จะคอยตรวจสอบ webhooks จากนั้นจึงส่งคำสั่ง API ไปยังผู้ให้บริการรายอื่น ... แต่นั่นคือการกระโดดข้ามห่วงจริง ๆ และเราได้สร้างรหัสใหม่จำนวนมากเพื่อรักษา