在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
PCIT (PCIT is CI TOOLKIT Written by PHP)国内首个基于 GitHub Checks API 使用 PHP 编写的运行于 Docker 之上的由 Tencent AI 驱动的开源云原生 CI/CD 系统
项目状态积极开发中 部分描述或功能只是 路线图 中的一部分,有待实现,请点击 关注项目作者微信订阅号,接收项目最新动态 预览点击 https://ci.khs1994.com/github/khs1994-docker/lnmp 查看 PCIT 功能界面。 参与开发本项目适用于对 CI/CD 感兴趣的开发者(特别是 PHP 开发者),欢迎开发者 参与 PCIT 开发。 愿景你尽管 push by you, test and deploy by us. 掌上 PCIT掌上 PCIT 什么是持续集成 Continuous Integration (CI)?持续集成 (CI) 是一种 软件开发实践,即团队开发成员经常集成他们的工作,而不是在开发周期结束时进行集成,通过每个成员每天至少集成一次,这意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。 持续集成 (CI) 的 目标 是通过以较小的增量进行 开发 和 测试 来构建更健康的软件。 作为一个持续集成系统,PCIT 可以自动的在代码变更时进行 构建 和 测试,同时为代码变更的构建状态提供即时的反馈。PCIT 还可以通过管理 部署 和 通知 来自动化软件开发过程中的其他流程。 当开发者提交代码到 Git(即代码发生变更), PCIT 会把 Git 仓库克隆到一个容器环境中,并执行一系列 构建 和 测试 代码的任务。如果其中一项或多项任务失败,则认为构建失败。如果没有任何任务失败,构建被认为通过。同时 PCIT 可以将代码部署到 Web 服务器、应用程序主机或容器集群中。 PCIT 架构PCIT 由 PHP 分布式后端(1+N)(
开放(合作共赢)使用方法(使用之前需要私有部署 PCIT EE)
1. 点击 PCIT-CE GitHub App 进行安装 2. Git 仓库根目录包含 language: phpsteps: before_install: ['echo exec init script'] install: composer install script: - composer test after_success: image: bash if: status: success run: - echo "build is success"services: redis: mysql:
{+ "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
# 安装 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 Settings > Developer settings > GitHub Apps 注册一个 GitHub App 2. 启用 GitHub App 的 OAuth。 3. 准备证书文件,包括网站证书以及 GitHub App 的私钥证书 4. 编辑 $ ./lnmp-docker pcit-up 5. 点击刚才注册好的 GitHub App 地址 https://github.com/apps/YOUR_APP_NAME ,进行安装。 6. Git 仓库根目录包含 7. 推送项目到 GitHub,在 Commit 详情处查看构建。 详细的步骤请查看 https://github.com/pcit-ce/pcit/blob/master/docs/install/ee.md 示例项目目前 PCIT 官方维护以下语言的示例项目。
生态系统Why PCITPCIT 子项目项目拆分待拆分已拆分Docker Image
致谢国内友商GitHub 上的其他 CI/CD 项目
什么是云原生 Cloud Native?Cloud native computing uses an open source software stack to be:
|
请发表评论