自动化部署
自动化部署利用webhook实现项目自动化部署发布,支持 Gitee、Github、Gitlab
- 将本项目部署到发布服务器,并保证可以正常被webhook访问;
- 项目源码 push 到仓库,在服务器上创建ssh访问公钥,保证可以免密访问;
ssh秘钥钥文件一般存储在
/home/www/.ssh
下, 可以通过finger www
确定www
用户目录
- 进入仓库项目 - 管理 - WebHooks 配置触发事件通知Hook,
WebHook 密码/签名密钥
选择签名秘钥
,值需要和部署脚本config/Config.php
下对应项目名称 package(名称不可以包含特殊.
、$
等特殊符号,否则项目可能无法正常解析部署)的SECRET
保持一致; URL:http://您的域名/deploy.php?package=项目名称
- 项目配置
config/Config.php
- 重要:保证项目下所有文件和目录包括隐藏文件
.git
目录的所有者为www
- 项目部署脚本需要放到根目录下(即WEB_PATH),文件格式为 yaml,文件名必须为
deploy-ci.yml
,具体可参考项目内文件。 - 增加命令行管理工具:
php bin/grace project list [all]
查看配置php bin/grace project create
创建配置php bin/grace project modify project_name
删除配置php bin/grace project remove project_name
修改配置php bin/grace power id_rsa [repository [domain]]
检查rsa是否有效,支持gitee、github和gitlab, 注意gitlab需要填写检测domainphp bin/grace project check [project]
创建配置
- 推送测试发布结果;
- Support Gitlab
- Support Github
- Console manager
- Support Gitee
- zrone xujining2008@126.com