#laravel #github
#laravel #github
Вопрос:
Есть ли какой-либо способ обновить проект Laravel с помощью GitHub?
Пример:
Мой проект загружен на GitHub как частный или общедоступный, и каждый раз, когда там изменяются файлы, я хочу получать уведомление об обновлении в своем приложении live и, нажав кнопку обновить, мои текущие файлы на сервере будут заменены файлами в GitHub.
Вопросы
- Возможно ли это?
- Существуют ли какие-либо пакеты по этому вопросу или мне нужно написать свои пользовательские коды?
Комментарии:
1. Это в значительной степени то, для чего используется непрерывная интеграция / непрерывное развертывание . По какой-либо причине вы хотите сделать это вручную вместо использования уже доступных решений, таких как jenkins?
2. @Namoshek нет, я просто подумал, что если для этого нет пакета, я открыт для получения пользовательских решений, оба способа хороши для меня, пока это работает
Ответ №1:
Если вы не хотите устанавливать свою собственную систему CI / CD (например, Jenkins) и webhook, прослушивающий push-события… вы можете использовать действия GitHub, создав рабочий процесс.
У вас есть множество примеров , перечисленные здесь, являются введение существует.
Этот пример прослушивает push, а затем может отправить сообщение вашему приложению.
Комментарии:
1. это обработка на стороне github, как мне внедрить это на стороне laravel?
2. @mafortis, отправив сообщение вашему приложению, которое будет прослушивать такое сообщение.
3. я думаю, вы меня неправильно поняли, я могу обработать сообщение в моем приложении laravel для части сообщений, мне не нужен github, все, что мне нужно, это проверить изменения в моем приложении в github, если они есть, тогда я могу выполнить пользовательское сообщение с помощью session :: flash.
4. @mafortis «проверить изменения в GitHub»: либо с помощью webhook (как я упоминал в начале ответа), либо с помощью действия GitHub: «изменения в GitHub» — это событие «на стороне GitHub».
5. Хорошо, итак, вы хотите что-то вроде того, что использует WordPress? Скорее всего, вы не стали бы делать это напрямую через GitHub. Я думаю, вам понадобится где-нибудь какой-нибудь файл ссылки на версию , который считывается приложением, чтобы определить, какие новые версии доступны.