Как автоматизировать создание и развертывание сайта Jekyll на веб-сервере по FTP

Мои файлы Jekyll хранятся в BitBucket, и я хотел бы иметь возможность автоматически генерировать папку _site при каждом новом внесении изменений. (Обратите внимание, я не хочу помещать свою папку _site в git, о чем и речи не идет).

После создания этого _сайта я бы хотел автоматически развернуть его на своем веб-сервере через FTP.

Это вообще возможно? Какие у меня варианты?

Спасибо!

1 ответ

Решение

Так как вы не упомянули, где _site папка пойдет, здесь 'общий ответ.

Короче говоря, вам понадобится веб-сервер или служба, которая прослушивает зацепку BitBucket Post Commit, вот соответствующая документация для этого.

Таким образом, при каждом нажатии BitBucket будет запускать действие и уведомлять ваш сервер / приложение / службу, которая затем будет создавать новый _site и развернуть туда, куда вы хотите.

Вот хороший учебник по настройке с использованием заданий cron и веб-сервера. ссылка на сайт

Также будет работать простой VPS или какой-нибудь крошечный экземпляр Amazon EC / виртуальная машина Azure.

Конечно, они, вероятно, не будут на 100% бесплатными.

Если вы ненавидите использовать серверы, вместо этого можно использовать службу непрерывной интеграции (CI), где при фиксации перехватчики будут запускать сборку,

Travis-CI и Drone.io бесплатны для публичных репо, но если ваше репо является частным, вам придется пойти на платную услугу. Есть и много других.

(Обратите внимание, что Travis-CI не совместим с BitBucket на момент написания, он работает с GitHub)

По сути, CI используется для запуска тестов, но помимо этого, мы можем использовать его для генерации сборки и отправки или копирования _site где-то, может быть, ваш собственный сервер. Или в случае, как эта статья описывает это, другой репо. (Прочтите "Как стать богом Джекилла" о том, как творчески использовать способы развертывания)

Другие вопросы по тегам