Gitlab CI 运行 代码质量不生成.json 文件

Gitlab CI run code quality not generate .json file

我按照 official guid 部署了一个管道来分析我的代码质量。尽管管道通过并且作业成功,但 json 文件并未由 docker 生成。并且显示了这些通知:

WARNING: A new version (v0.83.0) is available. Upgrade instructions are available at: https://github.com/codeclimate/codeclimate#packages Uploading artifacts... WARNING: gl-code-quality-report.json: no matching files ERROR: No files to upload
Job succeeded

这是我的 /etc/gitlab-runner/config.toml 文件:

    concurrent = 1
    check_interval = 0

    [session_server]
      session_timeout = 1800

    [[runners]]
      name = "code_quality"
      url = "http://192.168.0.2/"
      token = "pyKK8v9C6Bnay8yMmfph"
      executor = "docker"
      [runners.docker]
        tls_verify = false
        image = "docker:stable"
        privileged = true
        cache_dir = "cache"
        disable_entrypoint_overwrite = false
        oom_kill_disable = false
        disable_cache = false
        volumes = ["/cache", "/var/run/docker.sock:/var/run/docker.sock"]
        shm_size = 0
      [runners.cache]
        [runners.cache.s3]
        [runners.cache.gcs]

我的Gitlab版本是11.7

这是我的 .gitlab-ci.yml 文件:

 code_quality:
      tags: 
        - quality
      image: docker:latest
      variables:
        DOCKER_DRIVER: overlay2
      before_script:
      - ip -4 a
      allow_failure: true
      services:
        - name: docker:stable-dind
          command: ["--insecure-registry=192.168.0.1:5000"]
      script:
        - ip -4 a
        - docker pull 192.168.0.1:5000/codeclimate:0.72.0
        - docker tag 192.168.0.1:5000/codeclimate:0.72.0 codeclimate/codeclimate:0.72.0
        - docker pull 192.168.0.1:5000/codeclimate-coffeelint:latest
        - docker tag 192.168.0.1:5000/codeclimate-coffeelint:latest codeclimate/codeclimate-coffeelint:latest
        - docker pull 192.168.0.1:5000/codeclimate-csslint:latest
        - docker tag 192.168.0.1:5000/codeclimate-csslint:latest codeclimate/codeclimate-csslint:latest
        - docker pull 192.168.0.1:5000/codeclimate-eslint:latest
        - docker tag 192.168.0.1:5000/codeclimate-eslint:latest codeclimate/codeclimate-eslint:latest
        - docker pull 192.168.0.1:5000/codeclimate-rubocop:latest
        - docker tag 192.168.0.1:5000/codeclimate-rubocop:latest codeclimate/codeclimate-rubocop:latest
        - docker pull 192.168.0.1:5000/codeclimate-fixme:latest
        - docker tag 192.168.0.1:5000/codeclimate-fixme:latest codeclimate/codeclimate-fixme:latest
        - docker pull 192.168.0.1:5000/codeclimate-structure:latest
        - docker tag 192.168.0.1:5000/codeclimate-structure:latest codeclimate/codeclimate-structure:latest
        - docker pull 192.168.0.1:5000/codeclimate-duplication:latest
        - docker tag 192.168.0.1:5000/codeclimate-duplication:latest codeclimate/codeclimate-duplication:latest
        - export SP_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/--stable/')
        - docker images
        - docker run
            --env SOURCE_CODE="$PWD"
            --env CODECLIMATE_VERSION=0.72.0
            --env TIMEOUT_SECONDS=900
            --volume "$PWD":/code
            --volume /var/run/docker.sock:/var/run/docker.sock
            192.168.0.1:5000/codequality:latest /code
      artifacts:
        reports:
          codequality: gl-code-quality-report.json

由于我想提高拉取镜像的速度,所以我在本地部署了一个docker注册中心。

你能给我一些建议吗?

谢谢大家!

无论如何,几个月后,如果您使用的是 Gitlab CE,那么这将不起作用,这是仅适用于 EE 的功能。