--- /dev/null
+# Official language image. Look for the different tagged releases at:
+# https://hub.docker.com/r/library/python/
+image: python:3
+
+stages:
+ - test
+ - build
+
+# Change pip's cache directory to be inside the project directory since we can
+# only cache local items.
+variables:
+ PIP_CACHE_DIR: "$CI_PROJECT_DIR/cache"
+
+# Pip's cache doesn't store the python packages
+# https://pip.pypa.io/en/stable/reference/pip_install/#caching
+#
+# If you want to also cache the installed packages, you have to install
+# them in a virtualenv and cache it as well.
+cache:
+ paths:
+ - cache/pip
+ - venv/
+
+before_script:
+ - python -V # Print out python version for debugging
+ - python -m venv venv
+ - source venv/bin/activate
+
+test:
+ stage: test
+ script:
+ - pip install pytest-cov
+ - py.test -q --cov=sima tests
+ - python setup.py test
+ - pip install tox flake8
+ - tox -e py36,flake8
+
+run:
+ stage: test
+ script:
+ - python setup.py bdist_wheel sdist
+ - pip install dist/*
+ - mpd-sima --help
+ cache:
+ paths: dist/
+ policy: pull
+ artifacts:
+ paths:
+ - dist/*.whl
+
+tag_release:
+ stage: build
+ script:
+ - python -V
+ artifacts:
+ paths:
+ - dist/*.whl
+ - dist/*.tar.gz
+ - dist/*.zip
+ name: "$CI_PROJECT_NAME-$CI_COMMIT_TAG"
+ only:
+ - tags