juzaweb / auto-deploy
使用 git 和 webhooks 自动化部署
1.1.2
2024-03-24 03:26 UTC
Requires (Dev)
- juzaweb/dev-tool: ^1.0
- juzaweb/modules: ^1.0
This package is auto-updated.
Last update: 2024-08-24 04:27:24 UTC
README
使用 git 和 webhooks 实现自动部署的插件
使用 Webhook 从 GitHub 设置自动化部署
- 在文件
.env
中设置配置
DEPLOY_ENABLE=true DEPLOY_GITHUB_SECRET=<random-string>
- 生成 drploy 令牌,运行命令
php artisan deploy:make-token
- 在构建时设置命令,在源代码根目录下创建
.deploy.yml
文件。
示例
github-deploy: commands: - git pull - composer install --no-dev - php artisan migrate --force
- 在 GitHub 上添加仓库 Webhook
要向现有仓库添加 Webhook,请转到 GitHub 仓库页面,然后转到 "设置" > "Webhooks"。点击 "添加 Webhook"。
- 有效负载 URL — 指向您的服务器或服务器公网 IP 的自定义域名,后面跟
https://yourdomain.com/webhook/deploy/github/{action}/{token}
{action}:在您的 .deploy.yml
文件中定义的操作,例如上面的示例,操作将是 github-deploy
{token}:您上面创建的令牌
- 密钥 — 在
.env
中共享的密钥DEPLOY_GITHUB_SECRET
- 您想触发此 Webhook 的事件有哪些?(默认选项:"仅推送事件")
如果您想向您的命令添加自定义参数,请向 Webhook URL 添加查询字符串
示例
Webhook URL
https://yourdomain.com/webhook/deploy/github/{action}/{token}?theme=default
在文件 .deploy.yml
中
github-deploy: commands: - cd themes/{theme} - git pull