PTU5KAS/.travis.yml
Jan Kiszka 8b91666943 travis: Add python 3.7 test
We just need to lift the dist for that target to xenial - but not to
bionic because 3.4 is then no longer supported.

In xenial, mercurial is part of travis image. Additionally installing it
is not needed and actually breaks things. But things are more
complicated because hg is under /usr/local/bin, and kas used a built-in
PATH for tools that does not include this.

At this chance, remove "sudo: required" - no longer needed.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2019-10-04 21:10:49 +02:00

53 lines
1.5 KiB
YAML

language: python
dist: xenial
python:
- "3.4"
- "3.5"
- "3.6"
- "3.7"
services:
- docker
install:
# install kas to have all kas dependencies:
- pip install .
# checkcode dependencies:
- pip install flake8 pycodestyle doc8 Pygments
# test dependencies:
- pip install -U pytest
# workaround, needed because kas uses a cleaned-up PATH internally
- sudo ln -s /usr/local/bin/hg /usr/bin/
script:
- scripts/checkcode.sh .
- pytest
jobs:
include:
- stage: docker
python: "3.6"
script:
- docker build -t kasproject/kas .
- docker build -t kasproject/kas-isar -f Dockerfile.isar .
- TAG=`git describe --exact-match --tags 2>/dev/null || echo "<none>"`
- case "$TRAVIS_BRANCH" in
master|next|"$TAG")
docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD";
for IMAGE in kasproject/kas kasproject/kas-isar; do
if [ "$TRAVIS_BRANCH" == "$TAG" ]; then
docker tag $IMAGE $IMAGE:$TAG;
docker push $IMAGE:$TAG;
docker tag $IMAGE $IMAGE:latest-release;
docker push $IMAGE:latest-release;
elif [ "$TRAVIS_BRANCH" == "next" ]; then
docker tag $IMAGE $IMAGE:next;
docker push $IMAGE:next;
else
docker push $IMAGE;
fi
done
;;
esac