# Gitee 自动化部署
**Repository Path**: marksirl/deploy
## Basic Information
- **Project Name**: Gitee 自动化部署
- **Description**: Gitee webhook实现自动化发布
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 4
- **Forks**: 2
- **Created**: 2021-05-30
- **Last Updated**: 2023-06-02
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# deploy
#### 介绍
自动化部署
#### 软件架构
自动化部署利用webhook实现项目自动化部署发布,支持 Gitee、Github、Gitlab
#### 安装教程
1. 将本项目部署到发布服务器,并保证可以正常被webhook访问;
2. 项目源码 push 到仓库,在服务器上创建ssh访问公钥,保证可以免密访问;
> ssh秘钥钥文件一般存储在 `/home/www/.ssh` 下, 可以通过`finger www` 确定`www`用户目录

3. 进入仓库项目 - 管理 - WebHooks 配置触发事件通知Hook, `WebHook 密码/签名密钥` 选择 `签名秘钥`,值需要和部署脚本 `config/Config.php` 下对应项目名称 package(名称不可以包含特殊`.`、`$` 等特殊符号,否则项目可能无法正常解析部署)的 `SECRET` 保持一致; URL: `http://您的域名/deploy.php?package=项目名称`
- Gitee

- Github

4. 项目配置 `config/Config.php`
- Gitee

5. 重要:保证项目下所有文件和目录包括隐藏文件`.git`目录的所有者为`www`
6. 项目部署脚本需要放到根目录下(即WEB_PATH),文件格式为 yaml,文件名必须为 `deploy-ci.yml`,具体可参考项目内文件。
7. 增加命令行管理工具:
- `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需要填写检测domain
- `php bin/grace project check [project]` 创建配置

#### 使用说明
1. 推送测试发布结果;
#### 功能支持
1. Support Gitlab
2. Support Github
3. Console manager
4. Support Gitee
#### 参与贡献
1. zrone