Як розробник iOS, я хотів створити інфраструктуру CI та CCQ (= Постійна якість коду) для проектів iOS, які ми розробляємо до цього часу. Ми вже використовуємо Jenkins та SonarQube майже для всіх проектів в Інтернеті та Android (за допомогою проекту VM foreach, автоматична установка та налаштування CI та CCQ), і це чудово працює. Але для проектів iOS, Дженкінс повинен робити побудову на комп'ютері під управлінням macOS, тому я не впевнений, що у мене є ідеальне рішення для цього.
- Я шукав рішення для віртуалізації macOS. Для кожного проекту створіть віртуальний macOS та встановіть Дженкінс як раб, щоб обробляти складання. Рішення виглядало ідеально, але здається, що не більше ніж 2 VM працює з macOS (і, звичайно, лише на комп'ютері Mac), http://images.apple.com/legal/sla/docs/macOS1012.pdf -> Точка 2.Б. Тож це не є рішенням для моєї справи.
- Ще одне поширене рішення, про яке я читав, - це мати комп’ютер Mac (можливо, MacMini), який буде обробляти всі складання для всіх проектів. Що ви думаєте про цю реалізацію? Скільки проектів може працювати? Розробникам, можливо, доведеться робити деякі конфігурації за власним проектом (особливо в SonarQube), це безпечно?
- Чи можемо ми мати кілька екземплярів Jenkins і SonarQube на одній машині, використовуючи різні порти? Це навіть рішення, яке слід розглядати, або я говорю безглуздо?
- Чи є якесь інше життєздатне рішення, можливо, краще, ніж вищезгадане :)?
Примітка. Я не дотримуюся дуету Jenkins + SonarQube, якщо є якісь інші інструменти, які краще підходять для розробки iOS, будь ласка, поділіться ними зі мною.