AppVeyor

Привет, хабр.Я разрабатываю плагин под Java приложения для запуска кода на .Net. Проект открытый, выложен на GitHub. И в какое-то время я решил, что хорошо бы найти Continious Build & Test такой, чтобы я смог в нем собирать продукт.

После небольших поисков мне попалось на глаза довольно интересное и простое решение.

Disclaimer: я не имею никакого отношения к разработке этого продукта, не знаю автора и т.д. Мне просто понравился этот сервис, и я решил написать пост.Итак, задача: найти SaaS сервис, который бы решил следующие задачи:

Простая интеграция с GitHub Простая настройка системы Возможность запуска произвольного скрипта для тестов (мне требовалось запустить Java приложение, чтобы проверить, что плагин прижился и так далее) Наличие бесплатного тарифного плана (с ограничениями, естественно) Естественно, сначала я перебрал парочку вариантов. Не могу сказать, что искал досконально, однако одной из идей было найти Team City SaaS решение и воспользоваться им. Это логично, так как сам Team City написан на Java, и он умеет запускать MS Build. Мои поиски не увенчались успехом, однако я нашел ответ на StackOverflow, где автор AppVeyor немного рекламировал свой сервис.Я попробовал его погонять, и мне понравился интерфейс данного решения:

Скрин 2c4ae93e3f74401291fc3e7fc055310c.PNG Для работы с ним хватит аккаунта на GitHub. Система поставит хуки на push-операции и будет внимательно следить за репозиторием. В целом, у сервиса есть немало плюсов (с моей точки зрения): Легкая начальная конфигурация. Подключаем аккаунт; говорим, где sln файлы. Всё, билды у Вас уже будут. Несколько режимов тестов: Вы или запускаете стандартные Unit-тесты, или запускаете свой скрипт, что мне и хотелось/ Несколько вариантов Deployment’а, в частности Вы можете обновлять beta-версию Вашего сайта (в т.ч. в облаке) автоматически. А главное — это можно легко и быстро настроить. Вы можете даже автоматически выкладывать NuGet пакет после успешного билда. Как видно на картинке, эта система может проставлять версию билда в файлы автоматически, так сказать, из коробки. Конфигурацию можно хранить в самом репозитории с помощью YAML файлов. Как я сказал выше, мне требовалась Java для запусков тестов. На билд-машинах её не было. Я написал пожелание на сайте, и уже через пару часов на машинах стояла Java. Очень классный сервис в этом отношении.

Естественно, всё это подходит скорее для небольших «домашних» проектов, так как, в отличии от Team City, TFS и подобных систем, здесь у Вас нет полного контроля над процессом сборки, Вы не сможете, например, делать Build какого-нибудь Solution’а после выполнения тестов от предыдущего. Однако же, если есть желание быстро настроить билд, то его легко удовлетворить с помощью этой системы.

И еще раз: я не имею никакого отношения к данному сервису и к его разработке. Цель поста: показать еще один простой способ настроить билд для Вашего репозитория.

Ссылка:

© Habrahabr.ru