Статьи

Использование DeployHQ для автоматизации ваших развертываний

DeployHQ

Эта статья является частью серии, созданной в сотрудничестве с SiteGround . Спасибо за поддержку партнеров, которые делают возможным использование SitePoint.

Проблема: развертывание кода

Итак, у вас есть свои проекты в GitHub, какими бы они ни были — приложение, над которым вы работаете с небольшой командой, сайт для малого бизнеса, платформа для электронной коммерции. Вы решили управлять версиями, но у вас все еще мало возможностей для автоматизированных процессов, и вам все еще нужно обновлять каждую из ваших сред — подготовку, производство, все, что у вас есть — вручную, с помощью FTP. Или у вас есть их сносит изменения Git из ветки.

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

Решение: DeployHQ

DeployHQ может быть связующим звеном между вашим Git-репозиторием и вашими серверами и выполнять ваши развертывания за вас. Вы можете сделать эти развертывания автоматически (каждый раз, когда вы фиксируете свою staging Вы также можете инициировать развертывание вручную (для развертывания на производственном сервере из production Эта гибкость обеспечивает максимальное удобство и автоматизацию, не забирая важные меры предосторожности, такие как проверка кода, объединенного в производство, или график, по которому вы обновляете свой производственный веб-сайт.

DeployHQ кажется особенно полезным для небольшой компании или разработчика, у которых не все процессы тестирования, сборки, CI и т. Д. Автоматизированы и не связаны в единые процессы, и действительно ищет способ протолкнуть код в различные среды с минимальным трением, насколько это возможно. ,

Начало работы с DeployHQ

Когда вы зарегистрируете свою учетную запись DeployHQ, вы войдете в систему и перейдете на экран приветствия.

Затем вам нужно будет выполнить несколько шагов, чтобы начать развертывание!

1. Подготовка

В приведенных ниже примерах конфигурации GitHub будет использоваться в качестве системы контроля версий. Итак, зайдите на GitHub, и, если у вас еще нет проекта, создайте репозиторий. Хранилище, в идеале, должно иметь несколько веток (то есть «подготовка», «производство») просто для демонстрации функциональности, доступной в DeployHQ. В этой демонстрации будут использоваться как промежуточная, так и производственная ветви тестового репозитория. Вы можете оставить это открытым во вкладке, так как вам нужно будет вернуться.

2. Создайте новый проект DeployHQ

Прямо с экрана приветствия нажмите кнопку «Создать новый проект».

Вам нужно будет дать проекту имя и выбрать систему управления версиями, которую вы используете. Для этого примера мы используем GitHub. Затем нажмите «Создать проект»! Вы увидите экран прогресса, а затем, если все пойдет хорошо, вы получите экран, который требует, чтобы вы вошли (или, если уже вошли в систему, авторизовали приложение), чтобы получить доступ к вашему хранилищу.

Как только вы авторизуете DeployHQ для доступа к вашему GitHub, вы попадете на экран, на котором показаны организации, к которым вы подключены (и ваши личные репозитории), со списком этих репозиториев. Выберите один, чтобы связать ваш проект, и как только это будет сделано, DeployHQ попросит вас предоставить информацию о сервере.

3. Добавление сервера

Чтобы добавить сервер, вы дадите ему внутреннее имя, а затем выберите протокол, по которому вы хотите получить доступ к серверу, например SSH/SFTP

После того, как вы сделаете выбор, откроются дополнительные опции, в которых вы сможете заполнить информацию о хостинге вашего веб-сайта, такую ​​как IP-адрес и учетные данные сервера, путь от корневого каталога FTP до файлов вашего сайта и т. Д.

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

4. Развертывание

Теперь, когда вы добавили свой сервер, нажмите кнопку редактирования, чтобы отредактировать сервер в DeployHQ. Здесь вы увидите настройки, которые вы уже выбрали для сервера, а также некоторые другие, особенно на правой боковой панели.

Развертывание вручную

Там могут быть вещи, которые вы не хотите полностью автоматически развертывать. Например, ваша производственная ветвь, возможно, должна пройти проверку или пройти финальный тестовый прогон, прежде чем вы отправите его в живую, или вам может потребоваться сделать это по расписанию. Нет проблем. Просто отключите автоматическое развертывание для этого сервера в меню настроек справа.

Затем, после добавления некоторого кода в соответствующую ветку GitHub, вы сможете заархивировать свой проект DeployHQ и развернуть его вручную одним или двумя щелчками мыши!

Этот тестовый сайт начался с нуля. После инициализации GitHub с помощью начального index.html

Автоматическое развертывание

С другой стороны, может быть, вы хотите, чтобы ваша промежуточная среда просто автоматически отправляла изменения на сервер, как только вы вносите их в GitHub. Пройдите и посмотрите на экран редактирования этого сервера на правой боковой панели. Вы увидите опцию «Автоматическое развертывание» — включите ее. Вы также хотите скопировать URL-адрес под ним. В той же области вы увидите, что в DeployHQ есть документация по автоматическому развертыванию, которая поможет вам при возникновении каких-либо проблем.

Теперь вернитесь в свой репозиторий GitHub и перейдите к настройкам репозитория и Webhooks. Добавьте новый Webhook, выберите кодированный тип URL, используйте скопированный URL из настроек сервера DeployHQ в качестве URL и сохраните его. Это означает, что каждый раз, когда коммиты отправляются в хранилище, GitHub отправляет полезную нагрузку в DeployHQ. DeployHQ, в свою очередь, проверит, является ли это правильной ветвью, и, если да, поставит в очередь и выполнит развертывание, так как у вас есть автоматическое развертывание.

Отлично! Давайте попробуем это. Вернитесь на GitHub и обновите файл index.html Подтвердите изменение, а затем взгляните на свой веб-сайт.

DeployHQ автоматически выдвинул его без необходимости что-либо делать. Отличный материал!

Выводы

DeployHQ определенно не подходит для крупных организаций с их собственными сложными потребностями, превосходящими это приложение. Но для многих, многих веб-разработчиков такие сервисы, как DeployHQ, сэкономят время и энергию. Подберите для них замечательный хост, обеспечивающий надлежащую возможность подключения по SSH или SFTP, например, наш партнер SiteGround , и вы готовы к развертыванию!