gentritabazi / laradeploy
Laradeploy 通过 GitHub webhook 自动化部署。
1.0.0
2021-06-02 07:30 UTC
Requires
- illuminate/support: ^5.0|^6.0|^7.0|^8.0
This package is auto-updated.
Last update: 2024-08-29 05:37:25 UTC
README
介绍
Laradeploy 通过 GitHub webhook 提供自动化部署功能。
简单快捷,只需在 GitHub 上进行 git push 操作,即可将新修改部署到远程服务器。
您可以为该包指定要拉取的分支。
该包对开发和生产服务器都非常有用。
工作原理
GitHub 向服务器上的特定 URL 发送 POST 请求。
该 URL 触发部署 shell 脚本的执行。
安装与配置
首先,通过 composer 安装包
composer require gentritabazi/laradeploy
复制配置文件 laradeploy.php
运行 php artisan vendor:publish --provider="GentritAbazi\Laradeploy\Providers\LaradeployServiceProvider"
以发布 laradeploy.php 配置文件。
根据需要配置 laradeploy.php。
在 scripts/deploy.sh 中创建 shell 脚本
#!/bin/bash
php artisan down
git fetch -av
git reset --hard origin/master
composer install --no-interaction --no-dev --prefer-dist
php artisan route:cache
php artisan config:cache
php artisan event:cache
php artisan view:cache
php artisan migrate --force
php artisan up
创建 GitHub webhook
在 GitHub 上,在您的仓库页面,选择 设置 选项卡,然后在左侧导航中选择 Webhook。
点击 添加 webhook
有效负载 URL: http://<your-server.com>/deploy
密钥: 一个长的随机字符串(与您在 config/laradeploy.php 中设置的密钥相同)。