Newer
Older
include:
- project: shore/ci-templates
file: templates/pre-commit.yml
- project: shore/ci-templates
file: templates/python.yml
- project: shore/ci-templates
file: templates/gitlab-release.yml
test:
stage: test
image: $project:$version-slim
- apt-get update
- >-
apt-get install -y
bats
build-essential
git
libdbus-1-dev
libffi-dev
libglib2.0-dev
libssl-dev
# yamllint disable-line rule:line-length
- wget https://github.com/cloudbees-oss/juxr/releases/download/0.1.22/juxr-x86_64-unknown-linux-gnu.tar.gz -O - | tar -xzC /usr/local/bin
- |-
if [ "$project" = 'pypy' ]
then
ln -sf /opt/pypy/bin/pypy "/usr/local/bin/python$version"
fi
- pip install pipenv
- pipenv install --dev --python=$version
script:
- pipenv run bats | tee results.tap
- pipenv run doctest --junit-xml results/doctest.xml
after_script:
- juxr tap --name bats --output results/ -- cat results.tap
XDG_CACHE_HOME: "$CI_PROJECT_DIR/.cache"
PIPENV_VENV_IN_PROJECT: "1"
LANG: C.UTF-8
cache:
key: "$CI_JOB_NAME"
paths:
- .cache/
- .venv/
artifacts:
reports:
junit: results/*.xml