首页 > 解决方案 > 在本地运行 Codeclimate

问题描述

我尝试通过阅读 Codeclimate自述文件来通过 docker 安装 Codeclimate 。

为了在本地测试 Codeclimate。我创建了一个新文件夹hello.php并将.codeclimate.yml.

以下是我的hello.php

<?php 

echo("Hello");

以下是我的.codeclimate.yml

version: "2"
checks:
  argument-count:
    enabled: true
  complex-logic:
    enabled: true
  file-lines:
    enabled: true
  method-complexity:
    enabled: true
  method-count:
    enabled: true
  method-lines:
    enabled: true
  nested-control-flow:
    enabled: true
  return-statements:
    enabled: true
  similar-code:
    enabled: true
  identical-code:
    enabled: true

我通过我的终端运行如下 codecliate

docker run \
  --interactive --tty --rm \
  --env CODECLIMATE_CODE="$PWD" \
  --volume "$PWD":/code \
  --volume /var/run/docker.sock:/var/run/docker.sock \
  --volume /tmp/cc:/tmp/cc \
  codeclimate/codeclimate analyze

它显示喜欢Starting analysis和等待很长时间后。我收到超时错误。

我的配置有问题吗?

标签: phpcode-climatecode-climate-cli

解决方案


codeclimate/codeclimate-structure您正在运行的命令是拉取名为and的 docker 映像codeclimate/codeclimate-duplication,如果您去这里,您会注意到它们的压缩量约为 2gb,因此需要很长时间才能运行该命令是可以理解的。您可以通过运行&
提前拉取图像来扩展命令。 docker pull codeclimate/codeclimate-structuredocker pull codeclimate/codeclimate-duplication

我通过将调试环境变量添加到 docker run 命令-e CODECLIMATE_DEBUG=1

另一件事是代码气候支持,并且可以在这种情况下帮助您设置更高的超时阈值 - -e CONTAINER_TIMEOUT_SECONDS=1800.

所有这些信息都存在于您在问题中链接到的自述文件中。希望这能解决您的问题。


推荐阅读