主要是基于CodeIgniter框架的开发包,前端部分基于webpack+vue.js,便于快速搭建开发环境,适合中小应用的开发。 里面引入自动化构建,包括:
- 单元测试
- 代码静态检测
- 自动部署
- 前后端分离开发
CI_FastDev在开发中共有三个分支,分别为:
- dev:开发版本
- test:测试版本
- master:线上版本
在过程中我们会采用git flow 工作流。
可以参考: Git工作流指南:Gitflow工作流
该项目是基于CodeIgniter
CI_FastDev
├──application ... 框架自带目录 内部结构不在复述
├──static ... 存放静态文件 由于基于webpack+vue 后面会详细介绍下
├──system ... 框架自带目录
├──.htaccess
├──build.properties ... 自动化构建的配置 jenkins平台 尚未集成
├──build_win.properties ... 自动化构建的配置 windows平台 一般指windows 开发环境 尚未集成
├──build.xml ... 基于phing的自动化构建脚本 尚未集成
├──CI_phpstrom.php ... phpstorm下面的CI框架代码提示
├──index.php ... 框架自带
├──index-test.php ... 测试环境
├──index-production.php ... 生产环境
└──php.properties ... 自动化脚本使用的php环境配置 尚未集成
application
└──tests
├── _ci_phpunit_test ... 核心模块 请勿修改
├── Bootstrap.php ... phpunit的引导程序
├── TestCase.php ... TestCase 类
├── controllers ... controllers 测试
├── libraries ... libraries 测试
├── mocks/
│ └── libraries/ ... mock 类库
├── models/ ... model 测试
└── phpunit.xml ... PHPUnit 默认配置文件
$ cd /path/to/CI_FastDev/
$ cd application/tests/
$ phpunit
PHPUnit 5.4.6 by Sebastian Bergmann and contributors.
...
Time: 341 ms, Memory: 5.50Mb
OK (3 tests, 3 assertions)
Generating code coverage report in Clover XML format ... done
Generating code coverage report in HTML format ... done
static
├──assets ... 此目录由webpack 自动生成
├──css ... 存放css
├──img ... 存放图片
├──js
│ ├──class ... 存放公共的类
│ ├──components ... 存放vue 组件
│ ├──lib ... 所依赖的第三方库
│ ├──helper ...工具js文件
│ ├──fliters ... vue 过滤器
│ └──其它 ... 各个模块对于的js文件
├──package.json ... node配置
└──webpack.config.js ... webpack 配置
前提你已经安装了node.js
首先在static
目录下执行:
npm install
下载所安装的依赖包。
也可以配置国内npm镜像然后执行
cnpm install
开发环境执行
npm run dev
mvn package
就会自动生成assets
目录,里面包含项目所引用的js文件
测试环境前端build执行
npm run test
生产环境前端build执行
npm run pro
尚未完成
-
自动化构建主要完成以下几件事:
- 编译前端代码
- 生成最新前端url后缀,防止版本缓存
- 自动生成对应版本所需配置文件
- 部署到测试服务器
-
后期会引入:
- 单元测试
- 代码check
- 一些列代码静态检查
application/config/development/config.php 文件里面的base_url一定要重新配置 默认:
$config['base_url'] = 'http://localhost/CI_FastDev';
尚未完成
未完待续!!!
有兴趣的可以联系我 QQ:276147613 欢迎交流