Локальный запуск Codeclimate

Я пытаюсь установить Codeclimate через докер, прочитав документы Readme 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 и после долгого ожидания. У меня ошибка тайм-аута.

Что-то не так с моей конфигурацией?


person Set Kyar Wa Lar    schedule 05.05.2018    source источник


Ответы (1)


Выполняемая вами команда извлекает образы докеров с именами codeclimate/codeclimate-structure и codeclimate/codeclimate-duplication, если вы перейдете здесь вы заметите, что они весят примерно 2 ГБ в сжатом виде, поэтому понятно, что выполнение команды занимает много времени.
Вы можете ускорить выполнение команды, заранее извлекая образ, запустив docker pull codeclimate/codeclimate-structure и docker pull codeclimate/codeclimate-duplication.

Я узнал, что это так, добавив переменную окружения отладки в команду запуска докера (-e CODECLIMATE_DEBUG=1), это часто может пригодиться, когда инструменты CLI ведут себя ненормально.

Еще одна вещь, поддерживающая изменение климата, которая может помочь вам в подобных ситуациях, — это установка более высоких порогов тайм-аута — -e CONTAINER_TIMEOUT_SECONDS=1800.

Вся эта информация присутствует в файле readme, на который вы ссылаетесь в своем вопросе. Надеюсь, это решит вашу проблему.

person Yaron Idan    schedule 05.05.2018