diff -r fc3542685741 -r ccb2abb60b46 .gitlab-ci.yml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.gitlab-ci.yml Wed Nov 27 19:39:45 2019 +0100 @@ -0,0 +1,96 @@ +image: python:3.5 + +stages: + - test + - dist + - quality + +cache: + paths: + - bin/ + - eggs/ + - parts/ + +before_script: + - export http_proxy=http://172.17.0.1:3128/ + - export HTTP_PROXY=http://172.17.0.1:3128/ + - export https_proxy=http://172.17.0.1:3128/ + - export HTTPS_PROXY=http://172.17.0.1:3128/ + +bootstrap: + stage: .pre + script: + - python3.5 bootstrap.py --buildout-version=2.12.0 + - ./bin/buildout + +test: + stage: test + script: + - pip install anybadge + - mkdir ./coverage + - ./bin/test --coverage coverage | tee ./coverage/coverage.log + - GLOBAL_COVER=$(grep -e '^[[:space:]]*[[:digit:]]\+[[:space:]]\+[[:digit:]]\+\%' ./coverage/coverage.log | + awk 'BEGIN { lines=0; cov=0 } + { lines = lines + $1; cov = cov + $1 * $2 / 100 } + END { printf "%.2f", cov / lines * 100 }') + - anybadge --label=Coverage --file=./coverage/coverage.svg --value=$GLOBAL_COVER 20=red 40=orange 60=yellow 80=green + - echo "Global tests coverage is $GLOBAL_COVER %" + artifacts: + paths: + - ./coverage/ + +dist: + stage: dist + script: + - ./bin/buildout setup setup.py clean --all sdist bdist_egg bdist_wheel + artifacts: + paths: + - ./dist + +pylint: + stage: quality + allow_failure: true + script: + - pip install pylint-exit anybadge + - mkdir ./pylint + - ./bin/pylint src/pyams_viewlet/ | tee ./pylint/pylint.log || pylint-exit $? + - PYLINT_SCORE=$(sed -n 's/^Your code has been rated at \([-0-9.]*\)\/.*/\1/p' ./pylint/pylint.log) + - anybadge --label=Pylint --file=./pylint/pylint.svg --value=$PYLINT_SCORE 2=red 4=orange 8=yellow 10=green + - echo "Pylint score is $PYLINT_SCORE" + artifacts: + paths: + - ./pylint/ + +quality: + stage: quality + allow_failure: true + image: docker:stable + services: + - docker:stable-dind + variables: + DOCKER_DRIVER: overlay2 + DOCKER_TLS_CERTDIR: "" + script: + - | + if ! docker info &>/dev/null; then + if [ -z "$DOCKER_HOST" -a "$KUBERNETES_PORT" ]; then + export DOCKER_HOST='tcp://localhost:2375' + fi + fi + - 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:12-0-stable" /code + artifacts: + reports: + codequality: gl-code-quality-report.json + expire_in: 1 week + dependencies: [] + only: + refs: + - branches + - tags + except: + variables: + - $CODE_QUALITY_DISABLED