radio-t / rt-bot

Мета-репо для движения "создай своего бота"
129 stars 46 forks source link

Автоматический push образов в docker hub #114

Closed selevit closed 7 years ago

selevit commented 7 years ago
  1. При успешной сборке ботов в ветке мастер, все docker-образы должны отправляться в docker-hub.
  2. Имя пользователя в docker-hub и доступы для авторизации должны передаваться через переменные окружения. Секретные ключи, такие как пароли или API-токены не должны выводиться в лог при сборке в travis.
  3. Если репозитория в docker hub еще не существует, его нужно создать через API. Нужно сделать автоматически собираемый репозиторий со ссылкой на Dockerfile конкретного бота. Настроить автосборку только только на master-ветке.
  4. После успешной сборки и тестирования всех ботов в master, нужно в любом случае сделать push всех собранных контейнеров в docker hub. Либо дождаться успешной сборки со стороны docker-hub и после этого закончить выполнение билда.
  5. Для ускорения сборки ботов в travis, нужно сперва делать docker pull всех ботов из travis. Это позволит избежать тотального пересбора ботов на каждое изменение.
  6. В docker-compose для всех ботов вместе с ключом build нужно добавить еще ключ image, откуда будет пулиться и пушиться этот бот. Имя пользователя docker-hub (в docker-compose.yml) должно быть настраиваемым через переменную окружения. По умолчанию используется значение rt-bot.
selevit commented 7 years ago

Нельзя создавать Automated builds через API. Поэтому просто будем пушить репозитории в registry.

selevit commented 7 years ago

Для ускорения сборки ботов в travis, нужно сперва делать docker pull всех ботов из travis. Это позволит избежать тотального пересбора ботов на каждое изменение.

Build cache не пушится в registry, поэтому ускорения сборки пока не будет.