############################## # code testing and analysis # ############################# # branch: all # event: all clone: git: image: woodpeckerci/plugin-git pipeline: # check code style - shell test-shfmt: image: cr.44net.ch/ci-plugins/tests pull: true commands: - shfmt -d -i 4 -bn -ci -sr . # check code style - python test-black: image: cr.44net.ch/ci-plugins/tests pull: true commands: - black --check --diff . # check imports - python test-isort: image: cr.44net.ch/ci-plugins/tests pull: true commands: - isort --check-only --diff . # check static typing - python test-mypy: image: cr.44net.ch/ci-plugins/tests pull: true commands: - mypy --install-types --non-interactive mangadlp/ # test code with different python versions test-tox-pytest: image: cr.44net.ch/ci-plugins/multipy:1-linux-amd64 pull: true commands: - tox # generate coverage report test-tox-coverage: when: branch: master image: cr.44net.ch/ci-plugins/multipy:1-linux-amd64 pull: true commands: - tox -e coverage # analyse code with sonarqube and upload it sonarqube-analysis: when: branch: master image: cr.44net.ch/ci-plugins/sonar-scanner pull: true settings: sonar_host: https://sonarqube.44net.ch sonar_token: from_secret: sq-44net-token usingProperties: true