1.1.0 • Published 6 years ago
byted-fe-ci v1.1.0
byted-fe-ci
前端 gitlab CI/CD 工具
功能
-t --npmtest 运行 npm test
在 package.json 中配置 scripts.test
-l --eslint 运行 eslint
需要在项目中配置了 eslint 并且项目中有依赖安装 eslint
-s --tslint 运行 tslint
运行 TSLint,需要配置 tsconfig.json 和 tslint.json
-c --escomplex 运行代码复杂度评估
报告会上传到 TOS,可在游览器中打开查看
-p --prettier 运行代码格式化校验
如果项目配置了 prettier,则会进行 prettier format 校验,校验结果会以 warning 形式报告
若有用 vscode 的工程,若对 prettier 有特殊配置,请将配置提交到 git 仓库 /.vscode/settings.json
因为 prettier 的处理结果跟 eslint、编辑器的插件、编辑器的配置都有关系,所以本地结果可能和服务端 校验结果不一致。WALLE 使用最新版本的 vscode Esben Peterson 的 prettier 插件 v1.5.0(依赖 prettier@1.13.4)进行检查
将报错信息以 Notes 形式评论在 MR 中
MR 是通过 ProjectID + COMMIT_SHA 查找的,若不存在,则不做记录
默认运行所有规则,即:byted-fe-ci -t -l -c -s
使用方法
工程中增加 .gitlab-ci.yml 文件如下:
# 配置缓存策略,前端工程一般缓存 node_modules 即可
cache:
key: "$CI_PROJECT_PATH-$CI_COMMIT_REF_SLUG"
paths:
- node_modules/
before_script: # 脚本执行前进行分支拉去和依赖安装
- git fetch --all
- yarn install --registry=http://npm.byted.org #
lint: # 配置 JOB 名称
tags: # 所有 job 下必须配置 tags 才能在 shared gitlab-runner 里运行
- fe
- xdev
script: # script 这里配置执行的脚本
- byted-fe-ci
关于缓存
- cache.key 指定了缓存唯一标识,可以使用的变量见 GitLab CI/CD Variables,上面的例子中使用了
$groupname
/$projectname
-$branch
作为 key - cache.paths 指定需要缓存的文件或目录
- 更多配置信息可查看:
- GitLab CI/CD quick start
- [Cache dependencies in GitLab CI/CD
1.1.0
6 years ago