diff --git a/tests/gitlab.yml b/tests/gitlab.yml index 41a47e1ff592f18a248d81206f0095ce43165bb9..529d1bd90dce4e6f801266cddb44e6f92ff99f93 100644 --- a/tests/gitlab.yml +++ b/tests/gitlab.yml @@ -22,6 +22,56 @@ code_quality: variables: GIT_STRATEGY: none CODE_QUALITY_IMAGE: registry.lakedrops.com/docker/code-climate-drupal/code-climate-drupal + REPORT_FORMAT: html + script: + - | + export SOURCE_CODE='$(php /usr/local/bin/volume.php /code) | cut -d: -f1 + - | + if ! docker info &>/dev/null; then + if [ -z "$DOCKER_HOST" -a "$KUBERNETES_PORT" ]; then + export DOCKER_HOST='tcp://localhost:2375' + fi + fi + - | # this is required to avoid undesirable reset of Docker image ENV variables being set on build stage + function propagate_env_vars() { + CURRENT_ENV=$(printenv) + + for VAR_NAME; do + echo $CURRENT_ENV | grep "${VAR_NAME}=" > /dev/null && echo "--env $VAR_NAME " + done + } + - docker pull --quiet "$CODE_QUALITY_IMAGE" + - | + echo docker run --rm \ + $(propagate_env_vars \ + SOURCE_CODE \ + TIMEOUT_SECONDS \ + CODECLIMATE_DEBUG \ + CODECLIMATE_DEV \ + REPORT_STDOUT \ + REPORT_FORMAT \ + ENGINE_MEMORY_LIMIT_BYTES \ + CODECLIMATE_PREFIX \ + ) \ + --volume "$(php /usr/local/bin/volume.php /code)" \ + --volume /var/run/docker.sock:/var/run/docker.sock \ + "$CODE_QUALITY_IMAGE" /code + - | + docker run --rm \ + $(propagate_env_vars \ + SOURCE_CODE \ + TIMEOUT_SECONDS \ + CODECLIMATE_DEBUG \ + CODECLIMATE_DEV \ + REPORT_STDOUT \ + REPORT_FORMAT \ + ENGINE_MEMORY_LIMIT_BYTES \ + CODECLIMATE_PREFIX \ + ) \ + --volume "$(php /usr/local/bin/volume.php /code)" \ + --volume /var/run/docker.sock:/var/run/docker.sock \ + "$CODE_QUALITY_IMAGE" /code + - ls -lisa artifacts: name: code-quality paths: ['gl-code-quality-report.json']