Gitlab代码质量:报告在哪里?

问题描述 投票:4回答:3

在这个项目: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]

这个阶段总是“通过”。日志:qazxsw poi

我怀疑我的代码是完美的,所以在某处应该存在一些代码质量问题。

应该输出代码质量报告在哪里? 这个参数是什么:“paths:[gl-code-quality-report.json]”?

gitlab gitlab-ci
3个回答
5
投票

这里有2个问题:


4
投票

GitLab在合并请求中解析并显示结果。它的工作原理是与之前的代码质量结果进行比较,因此第一次将作业合并到where to download artifacts时,您将看不到任何内容。但是,它应该适用于后续的合并请求。

这里有更详细的解释:master


0
投票

这是旧的,但在这里添加,以防其他人偶然发现它。我发现了同样的问题(成功,但没有输出),结果是测试超时了。 codeclimate引擎上有一个默认的900秒超时。 codeclimate使用的图像远远超过1.5GB的数据,因此它们需要永久地在慢速连接上下载。当它们超时时,它们返回退出代码0,但没有报告。

通过在本地执行验证:

Code Quality

如果超时是您的问题,添加CONTAINER_TIMEOUT_SECONDS作为环境变量将允许您超越此值。我没有在GitLab中进一步使用它,因为缺少文档,我只想要checkstyle,而不是GitLab中附带的所有其他代码,并且文档不清楚如何做到这一点。

© www.soinside.com 2019 - 2024. All rights reserved.