关于这个项目:https://gitlab.com/tyvain/parcoursup/tree/master
我有一个代码质量阶段:
code_quality:
stage: code_quality
image: docker:stable
variables:
DOCKER_DRIVER: overlay2
allow_failure: true
services:
- docker:stable-dind
script:
- export SP_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/')
- docker run
--env SOURCE_CODE="$PWD"
--volume "$PWD":/code
--volume /var/run/docker.sock:/var/run/docker.sock
"registry.gitlab.com/gitlab-org/security-products/codequality:$SP_VERSION" /code
artifacts:
paths: [gl-code-quality-report.json]这一阶段永远是“过去”的。日志:https://gitlab.com/tyvain/parcoursup/-/jobs/94665791
我怀疑我的代码是否完美,所以应该有一些代码质量问题。
代码质量报告应该在哪里输出?
这个参数是什么:“path:gl-code质量-report.json”?
发布于 2018-09-05 03:59:21
这里有两个问题:

发布于 2018-09-05 04:02:20
GitLab在合并请求中分析和显示结果。它的工作原理是与以前的代码质量结果进行比较,所以当您第一次将作业合并到master中时,您将什么都看不到。但是,它应该可以处理后续的合并请求。
在这里有更详细的解释:代码质量
发布于 2019-03-27 13:56:13
这是旧的,但在这里添加,以防止其他人绊倒它。我发现了同样的问题(成功,但没有输出),结果是测试超时。在codeclimate引擎上有一个默认的900秒超时。codeclimate使用的图像的数据量远远超过1.5gb,因此它们需要很长时间才能在一个缓慢的连接上下载。当它们超时时,它们返回退出代码0,但没有报告。
通过在本地这样做来验证:
docker run \
--env CODECLIMATE_CODE=/path/to/my/code \
--env CONTAINER_TIMEOUT_SECONDS=9000 \
--volume /path/to/my/code:/code \
--volume /tmp/cc:/tmp/cc \
--volume /var/run/docker.sock:/var/run/docker.sock \
--env CODECLIMATE_DEBUG=1 "codeclimate/codeclimate:0.83.0" \
analyze -f json如果超时是您的问题,将添加CONTAINER_TIMEOUT_SECONDS作为环境变量将允许您超过此值。我还没有在GitLab中进一步使用它,因为缺少文档,我只想要校验样式,而不是GitLab中所有其他的代码质量,而且文档不清楚如何做到这一点。
https://stackoverflow.com/questions/52174028
复制相似问题