Как автоматически обновлять продакшн из папки dist при новом пуше?

Для автоматического обновления продакшн при новом пуше в Angular можно использовать различные подходы и инструменты. Рассмотрим наиболее популярные из них.

1. Веб-сервер с автоматической перезагрузкой.
При выборе этого подхода вам понадобится установить простой веб-сервер, который будет слушать запросы на порту, где запущено ваше приложение. Когда новый пуш будет добавлен в папку dist, веб-сервер автоматически обнаружит изменения и перезагрузит приложение. Для этого вы можете использовать инструменты, такие как http-server или lite-server, которые можно установить через менеджер пакетов npm и настроить их для запуска после каждого пуша в папке dist.

2. Continuous Integration и Deployment (CI/CD) платформы.
CI/CD платформы, такие как Travis CI, CircleCI или Jenkins, предоставляют мощные инструменты для автоматизации сборки, тестирования и развертывания ваших приложений. Вы можете настроить интеграцию с репозиторием вашего проекта, чтобы при каждом пуше в ветку master или другую выбранную вами, CI/CD система запускала скрипт, который будет автоматически собирать проект из папки dist и размещать его на вашем сервере. Для Angular проектов вы также можете использовать специализированные инструменты CI/CD, такие как Angular CLI или Firebase Hosting, которые обеспечивают автоматическое развертывание приложения в продакшн среде.

3. Облачные платформы развертывания.
Облачные платформы, такие как Amazon Web Services (AWS), Google Cloud Platform (GCP) или Microsoft Azure, предоставляют широкий спектр инструментов для автоматизации сборки, тестирования и развертывания вашего приложения Angular из папки dist. Вы можете создать конфигурацию, которая будет отслеживать ваш репозиторий и при изменении ветки master или другой выбранной вами ветки, будет автоматически запускать процесс сборки и развертывания вашего приложения в облаке. На платформах AWS, GCP и Azure вы можете использовать такие инструменты, как AWS CodePipeline, GCP Cloud Build или Azure DevOps, чтобы настроить CI/CD конфигурацию для вашего проекта.

В конечном итоге, выбор подхода для автоматического обновления продакшн из папки dist при новом пуше будет зависеть от вашей инфраструктуры, требований проекта и предпочтений. Но любой из перечисленных подходов позволит значительно упростить и автоматизировать процесс развертывания вашего Angular приложения в продакшн среде.