Есть ли ферма сборки для проверки приложений с открытым исходным кодом на разных ОС?

У меня есть приложение с открытым исходным кодом, и оно работает в Windows, Linux и Macintosh (оно написано на C++ и создано с помощью gcc). Я тестировал его только на нескольких разных версиях Linux, поэтому я не знаю, компилируется ли он и работает ли он на всех разных версиях Linux. Есть ли место, где я могу загрузить свой код и протестировать его на множестве разных систем, таких как другие разновидности Linux и такие вещи, как Solaris, FreeBSD и другие операционные системы?

Было бы здорово, если бы я мог напрямую подключиться к моему репозиторию svn и получить последний код, а затем отправить мне по электронной почте любые сгенерированные ошибки компиляции и с какой ОС возникла проблема.

Я был бы счастлив просто узнать, что он компилируется, поскольку это приложение на основе графического интерфейса, поэтому я не ожидал, что оно действительно будет запущено и протестировано.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
19
0
2 740
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Взгляните на Служба сборки OpenSuSE, он включает довольно широкий спектр дистрибутивов Linux (не только SuSE / OpenSuSE).

Ответ принят как подходящий

Есть несколько вариантов, но, похоже, не так много (каких-либо?) Бесплатных сервисов, подобных этой, что неудивительно, учитывая количество требуемых усилий и ресурсов. Sourceforge раньше управлял компилируемой фермой, подобной той, которую вы описываете, но закрылся год назад или около того. Вы можете изучить некоторые из следующих вещей. Если вы склонны платить за услугу или самостоятельно, то некоторые из этих ссылок могут быть полезны. Если вы просто ищете бесплатную ферму компиляции / сборки с открытым исходным кодом, которая охватывает несколько платформ, похоже, вам в значительной степени не повезло.

Служба сборки OpenSuse

Упомянутый Тед первым, стоит повторить - в настоящее время только для Linux, но поддерживает ряд дистрибутивов.

Ферма компиляции GCC

В основном ориентирован на тестирование сборок для GCC, но также поддерживает несколько других проектов, таких как coLinux, BTG BitTorrent client, ClamAV и другие. Может быть, вы можете воспользоваться преимуществами, хотя я не вижу, какие ОС находятся в ферме компиляции (содержит как минимум Linux и Solaris, судя по примечаниям к странице).

BuildLocker

BuildLocker - это веб-решение для непрерывной интеграции проектов Java и .NET. BuildLocker - это виртуальная выделенная машина для сборки, которая помогает командам находить ошибки на ранних этапах цикла разработки, экономя время и деньги. BuildLocker управляет запланированными автоматическими сборками исходного кода в вашем репозитории ProjectLocker Source Control. Просто проверьте исходный код, и запланированные сборки подтвердят целостность кода. BuildLocker может даже запускать автоматические тесты и предупреждать вас в случае сбоя теста.

Круиз-контроль

CruiseControl - это основа для непрерывного процесса сборки. Он включает, помимо прочего, плагины для уведомлений по электронной почте, Ant и различные инструменты управления версиями. Предоставляется веб-интерфейс для просмотра сведений о текущей и предыдущей сборках.

Интересное примечание: CruiseControl фактически используется командой разработчиков StackOverflow для автоматического тестирования сборки, согласно подкасту.

Hudson

Hudson отслеживает выполнение повторяющихся заданий, таких как создание программного проекта или задания, выполняемые cron.

RunCodeRun

Упомянутый в другом связанном вопросе, поддерживает только проекты Ruby и в настоящее время находится в частной бета-версии. Однако, если ваш проект написан на Ruby, возможно, стоит присмотреться к RunCodeRun.

Матрица функций CI

Доступно множество систем непрерывной интеграции. Эта страница - попытка провести беспристрастное сравнение как можно большего числа из них.

Ссылка на BuildLocker не работает. Как и матрица функций CI.

Alexis Wilke 23.08.2014 01:22

С точки зрения программного обеспечения, есть также buildbot (сайт проекта sourceforge), который можно использовать для настройки вашего собственного сервера сборки / непрерывной интеграции. Это было предложено и считается используемым для разработки gcc (как упоминалось на вики-странице фермы компиляции gcc, опубликованной выше).

Если вы планируете коммерческое использование своего продукта с открытым исходным кодом, вы можете рассмотреть наш Parabuild. Это позволяет вам запускать набор сборок на нескольких платформах и машинах параллельно. Сборка будет успешной только в том случае, если все сборки для конкретной платформы будут успешными.

Другие вопросы по теме