# Official language image. Look for the different tagged releases at:
-# https://hub.docker.com/r/library/python/
+# https://hub.docker.com/_/python
image: python:3
+include:
+ - local: .gitlab/gitlab-templates.yml
+ - local: .gitlab/pylint.yml
+ - template: Security/SAST.gitlab-ci.yml
+
variables:
#XDG_CACHE_HOME: "$CI_PROJECT_DIR/.cache"
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache"
- test
- build
-test:
+smoketest:
stage: test
script:
- - pip install pytest-cov requests
- - py.test -q --cov=sima tests
+ - pip install requests python-musicpd sphinx
- python setup.py test
# build wheel and source
- python setup.py bdist_wheel sdist
+ # manual and HTML documentation
+ - python setup.py build_sphinx
# install
- pip install dist/*.whl
# smoke test
- dist/*.tar.gz
- dist/*.zip
+unittests:
+ stage: test
+ script:
+ - pip install pytest-cov requests python-musicpd
+ - py.test -q --cov=sima --junitxml=report.xml tests
+ artifacts:
+ when: always
+ reports:
+ junit: report.xml
+
+vinstall:
+ stage: test
+ script:
+ # test virtualenv install
+ - python3 ./vinstall.py
+ # smoke test
+ - ./vmpd-sima --help
+ artifacts:
+ expire_in: 1 hour
+
+sast:
+ variables:
+ SAST_EXCLUDED_ANALYZERS: brakeman, eslint, flawfinder, gosec, kubesec, nodejs-scan,
+ phpcs-security-audit, pmd-apex, security-code-scan, semgrep, sobelow, spotbugs
+ stage: test
+
tag_release:
stage: build
dependencies:
- - test
+ - smoketest
script:
- python -V
artifacts: