.gitlab-ci.yml (1714B)
1 stages: 2 - test 3 - run-coverage 4 - slither-analyzer 5 6 7 variables: 8 PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip" 9 10 cache: 11 paths: 12 - .cache/pip 13 - .venv/ 14 15 before_script: 16 - python -V # Print out python version for debugging 17 - pip install virtualenv 18 - virtualenv venv 19 - source venv/bin/activate 20 21 test: 22 image: registry.gitlab.com/grassrootseconomics/cic-base-images/ci-solc-python:latest 23 script: 24 # install test dependencies 25 - cd python 26 - export PYTHONPATH=. 27 - pip install --extra-index-url https://pip.grassrootseconomics.net 28 --extra-index-url https://gitlab.com/api/v4/projects/27624814/packages/pypi/simple 29 -r requirements.txt -r test_requirements.txt 30 # run tests 31 - bash run_tests.sh 32 33 run-coverage: 34 stage: test 35 image: registry.gitlab.com/grassrootseconomics/cic-base-images/ci-solc-python:latest 36 script: 37 - cd python 38 - export PYTHONPATH=. 39 - pip install --extra-index-url https://pip.grassrootseconomics.net 40 --extra-index-url https://gitlab.com/api/v4/projects/27624814/packages/pypi/simple 41 -r requirements.txt -r test_requirements.txt 42 - pip install pytest pytest-cov 43 - coverage run -m pytest 44 - coverage html 45 - coverage report --fail-under=90 46 47 coverage: '/^TOTAL.+?(\d+\%)$/' 48 artifacts: 49 reports: 50 coverage_report: 51 coverage_format: cobertura 52 path: python/htmlcov/index.html 53 54 slither-analyzer: 55 image: registry.gitlab.com/grassrootseconomics/cic-base-images/ci-solc-python:latest 56 allow_failure: true 57 script: 58 - cd solidity 59 - slither ERC20TransferAuthorization.sol 60 - slither ERC20TransferAuthorization.sol --print human-summary