Как заставить CircleCI запускаться при каждом нажатии на репозиторий GitHub?

#git #heroku #github #continuous-integration #circleci

#git #heroku #github #непрерывная интеграция #circleci

Вопрос:

Я хочу добиться такого рабочего процесса в своем проекте: я создаю git push origin master , затем запускаются тесты, затем после тестов проект развертывается в Heroku.

Я уже настроил автоматическое развертывание на Heroku из репозитория github и проверил, что он должен ждать прохождения тестов CircleCI. Но когда я запускаю git push origin master (где origin находится репозиторий GitHub), ничего не происходит. И тесты запускаются только тогда, когда я вручную захожу в панель управления CircleCI, затем в настройки проекта, затем в Test commands , а затем нажимаю Save and Go . Это запускает новую сборку, и после ее завершения мое приложение развертывается.

Как я могу это исправить?

Комментарии:

1. Один из методов заключается в использовании двух отдельных сервисов, существующих на GitHub. Автоматическое развертывание GitHub создаст событие развертывания в любое время, когда будет отправлен master запрос. Пока вы вносите изменения в ветку функций и объединяетесь только master после тестов CircleCI, используя защищенные ветки / статусы, это сработает. Затем вы можете настроить службу HerokuBeta, которая вызывает Heroku всякий раз, когда отправляется событие развертывания.

Ответ №1:

Я делаю огромный удар в темноте, потому что вы ничего не связали, но есть ли у вас circle.yml файл в корне вашего репозитория со всеми необходимыми командами тестирования и развертывания? Похоже, вам этого не хватает. После добавления этого ожидаемый рабочий процесс должен «просто работать».

Комментарии:

1. У меня его нет, но я не уверен, нужно ли мне это, потому что, если я запускаю свои тесты вручную (как я сказал в вопросе), они пройдут (вот почему я предполагаю, что команды тестов уже настроены)