Это моя первая попытка настроить CI, но всё получилось. Решила начать с самого простого и просто сделать проверки при Pull Request (что всё ок и что проходят unit-тесты).
Итак, шаги:
— Открываем проект, где хотим подключить. Я выбрала https://github.com/Ladgertha/IrregularVerbsApp. Жмем на вкладку Actions и видим кучу шаблонов.
— В поиске вводим android и возле Android CI выбираем Configurate. Тут есть готовый шаблон и мы его выбрали просто чтобы не писать всё самостоятельно.
— Возле name можем указать любое имя. И в конце я еще поменяла ./gradlew на gradle, потому что у меня иначе не запускалось. В файлике самая простая информация: на что триггеримся, где запускаем проверки (ubuntu-latest), какие проверки и версию джавы. Что получилось у меня:
run: gradle build --stacktrace — вот тут добавила stacktrace, чтобы все ошибки показались.
— Вливаем файлик в девелоп/мастер.
— Переходим в настройки — Branches — Edit напротив Develop/Master — ставим галочки как на скриншоте, чтобы у нас проходили проверки. Сохраняем.
— Готово. Теперь можно создать PR и увидеть, что что-то происходит.
После первого успешного билда заходим настройки — Branches — Edit напротив Develop/Master — вводим в поле поиска, которое на скриншоте слово build и жмем Enter. Сохраняем. Это надо сделать, чтобы поставить запрет на вливание, если сборка упала. Стоит заметить, что у меня не сразу это сработало и получилось добавить build только спустя несколько успешных MR.
В итоге, если всё пройдет успешно, то получится так.
Пример: https://github.com/Ladgertha/IrregularVerbsApp/blob/develop/.github/workflows/pull.yml
Дубль статей в телеграмме — https://t.me/android_junior
Мои заметки в телеграмме — https://t.me/android_junior_notes