PHP from Packagist Build Status Support Docs
积极开发中 部分描述或功能只是 路线图 中的一部分,有待实现,请点击 Star 或关注微信订阅号保持对 PCIT 的关注。
关注项目作者微信订阅号,接收项目最新动态
本项目适用于对 CI/CD 感兴趣的开发者(特别是 PHP 开发者),欢迎开发者 愿景
你尽管 push,其他的 PCIT 搞定。
push by you, test and deploy by us.
掌上 PCIT
PCIT 由 PHP 分布式后端(1+N)(Webhooks Server + Daemon CLI + Runner(N)) + GitHub App + CLI + 开放平台(插件、API)四部分组成
Webhooks Server 接收 Git 事件
Daemon CLI 后端常驻 (守护) 程序,解析 Git 事件生成一个 build 并将其分解为多个 job (Server 节点),之后在 Docker 单机或集群(Kubernetes)中执行构建、测试、容器化部署的自动化过程(Runner)。
CLI 提供各种实用的功能,例如命令行查看构建状态
开放平台 包含用于功能扩展的 插件 和 RESTFul API,与开发者一道构建 PCIT 生态系统
这里只是介绍部署 PCIT 之后如何使用 PCIT 进行 CI/CD 实践,如何部署 PCIT 请查看下一小节
1. 点击 .pcit.yml 来配置 CI 规则
language: php steps: before_install: ['echoexecinitscript'] install: composer install script: - composer test after_success: image: bash if: status: success run: - echo "build is success" services: redis: mysql:
为了智能补全、错误提示等功能,推荐使用 vsCode 编辑
.pcit.yml文件。安装redhat.vscode-yaml扩展并在项目的.vscode/settings.json文件中增加以下内容。
{ + "yaml.schemas": { + "https://github.com/pcit-ce/pcit/raw/master/config/config.schema.json": [ + ".pcit.yaml", + ".pcit.yml", + ".pcit/**.yaml", + ".pcit/**.yml" + ] + } }
3. 推送 git 仓库到 GitHub,PCIT 开始进行 构建 测试 部署 等一系列工作。
查看构建的聚合页面,请登录 PCIT CE vs PCIT EE
在未来 PCIT 可能会提供 公有云服务 让开发者无需私有部署即可方便快捷的使用 PCIT。我们将这个有待实现的版本称为 PCIT CE。
所以 CE 和 EE 的区别为是否需要开发者自行部署。
部署 PCIT EE
依托于 khs1994-docker/lnmp LNMP 容器化解决方案,私有部署 PCIT 也很方便。
(削除) PHP (削除ここまで)
(削除) MySQL (削除ここまで)
(削除) Redis (削除ここまで)仅仅 需要 khs1994-docker/lnmp 和 # 安装 Docker 这里不再赘述 # 安装 khs1994-docker/lnmp $ git clone --depth=1 https://github.com/khs1994-docker/lnmp.git ~/lnmp # 中国镜像 # $ git clone --depth=1 https://gitee.com/khs1994-docker/lnmp.git ~/lnmp $ cd ~/lnmp
1. 在 GitHub $ ./lnmp-docker pcit-up
5. 点击刚才注册好的 GitHub App 地址 https://github.com/pcit-ce/pcit/blob/master/docs/install/ee.md
目前 PCIT 官方维护以下语言的示例项目。
| 语言 | 地址 | 构建页面 | |
|---|---|---|---|
| PHP | Build Status | ||
| Node.js | Build Status | ||
| 微信小程序 (Node.js) | https://github.com/khs1994/khs1994.github.io | https://github.com/khs1994-docker/lnmp | 生态系统
Why PCIT
|