Понимание того, что отличает дженкинсов и джанго-дженкинсов
Мой вопрос довольно субъективен, модераторы, пожалуйста, не закрывайте его, потому что я хочу знать мнения опытных кретинов.
Я новичок в области развертывания и делаю RTFM на jenkins, исходя из фона python/django. Я искал github, чтобы найти django-jenkins.
Вся идея CI состоит в том, чтобы иметь непрерывный процесс сборки, чтобы вы могли вернуться на ваш последний этап, если сборка завершилась неудачей.
Насколько я могу судить, jenkins запускается на сервере, который запускает тест и разворачивается, если все тесты проходят, когда код переносится на github или какое-то другое репо. Он может разговаривать с репо посредством опроса или работы cron.
В то время, когда я смотрел на django-jenkins в документации, упоминается
./manage.py jenkins
Это означает, что мы можем добавлять команды в файл настроек, тестировать вещи локально и затем развертывать. (исправьте меня, если я ошибаюсь)
Итак, что его отличает? Удаляет ли django-jenkins необходимость дополнительного сервера, использующего jenkins для CI?
Пожалуйста, дайте мне знать и очистите меня, где я ошибаюсь.
Ответы
Ответ 1
Jenkins - это сам инструмент непрерывной интеграции: он обрабатывает ручные и автоматические сборки, развертывания и может запускать тестовые скрипты и выводить отчеты. Это полезно, чтобы проверить, проходят ли ваши тесты еще и успешны ли сборки.
django-jenkins - это пакет Python для веб-фреймворка Django, который предоставляет дополнительные инструменты, которые вы можете использовать в Jenkins. Например, он генерирует отчеты, которые могут быть прочитаны Дженкинсом. Вы можете добавить эти команды в свою сборку script для создания отчетов.
Другими словами, Jenkins можно использовать для различных целей непрерывной интеграции, но если вы создаете веб-сайт в Python/Django, тогда django-jenkins предоставляет дополнительные функции, чтобы облегчить жизнь.