metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2016-11-15 01:17 am

Уведомления для CI задом наперед

Столкнулся тут с очередным порождением сумеречного хипстерского гения - CI сервер drone.io.
Сам сервер живет внутри докер-образа, собирает и тестирует софт тоже внутри докера - т.е. к одной хипсторятине добавляется еще и вторая - докер.
Далее, если я правильно понял из просмотра документации краем глаза - чтобы узнавать про изменения в репозиториях, этой софтине нужно зарегистрировать "приложение" в гитхабе, которому надо дать доступ к репозиториям и оно на них настроит хуки, которые будут дергать оный сервер за торчащий в интернет http-endpoint. Т.е. запустить его внутри локалки - это надо заниматься пробросом портов, а еще надо бы выяснить какими средствами аутентификации оно прикрыто (вроде OAuth, но с ходу во всей это конструкции из гитхаба, докеров, приложения и хипстософта непонятно, кто есть кто).

Собственно, идея не поллить репозиторий, а ждать что тебя дернет хук - достаточно интересная, но вся эта комбинация безумных новомодных технологий для меня выглядит странновато, особенно с учетом того, что я до сих пор не уверен в пользе от облаков и паранойя не велит сборочные и тестовые сервера держать за пределами периметра охраняемого паранойей.

[identity profile] nikon-nlg.livejournal.com 2016-11-15 04:04 pm (UTC)(link)
"Так исторически сложилось". Часть сервисов на github oauth завязана, плюс некоторые там код-ревью делают (хотя специально для этого phabricator поднят). Локальное зеркало конечно тоже есть, но оно на случай когда совсем всё плохо.

[identity profile] hshhhhh.livejournal.com 2016-11-15 04:06 pm (UTC)(link)
> "Так исторически сложилось"

Удачи!

[identity profile] hshhhhh.livejournal.com 2016-11-15 04:07 pm (UTC)(link)
Мне, кстати, для ревью больше нравится gitlab. Поставьте его внутрь и никто не заметит не заметит что это не гитхаб.

[identity profile] nikon-nlg.livejournal.com 2016-11-15 04:18 pm (UTC)(link)
Там на фабрикатор сверху уже куча своих хуков и прочей непонятной фигни накручено, так что трогать не хочется.
Ну и смотрел я уже на gitlab - нормальное решение, имеет право на жизнь как и многие другие. Но зачем ломать то что уже хорошо работает?

[identity profile] hshhhhh.livejournal.com 2016-11-15 04:21 pm (UTC)(link)
Затем что оно стоит в соседней комнате и минус одна точка отказа, нет? Ну в плане вы хотя бы можете починить это хоть как-нибудь, а с гитхабом что делать?
Edited 2016-11-15 16:22 (UTC)

[personal profile] zaharchenko 2016-11-15 04:59 pm (UTC)(link)
С гитхабом, так же как и с gitlab, в случае если ожидаемое время простоя не вас не устраивает - развернуть из бекапа.

[identity profile] nikon-nlg.livejournal.com 2016-11-15 07:35 pm (UTC)(link)
Нет соседней комнаты. Есть, грубо говоря, Амазон, Гитхаб, и вся команда по миру разбросанная. Само собой если бы все сидели в одном месте, то проще было юзать локальный gitlab, и сливать копию на github/bitbucket/whatever, но в моём случае уже мне придётся следить, чтобы gitlab не навернулся.
Ну и ниже уже написали - если гитхаб навернётся, то поменять remote - дело пары минут. В общем, в конкретно моём случае использование гитхаба предпочтительнее. В вашем может быть локальный gitlab удобнее чем забивать канал бесконечными push/pull