PTU5KAS/.travis.yml
Jan Kiszka 1e405f155d Add Dockerfile for Isar image builder
Isar requires a number of extra packages compared to a Yocto build. It
also needs a newer e2fsprogs version which can be taken from backports.
Last but not least, its keystone multistrap contains a nasty bug [1]
under in jessie so that we need to pull the updated version from
stretch.

The value of having this image still based on jessie is that it can be
used for both purposes: Yocto (2.1/2.2) and Isar builds. We push it
along the kas core image as kas-isar during the CI run.

Isar still requires some raised privileges. Therefore, the image has to
be started with the additional switches "--cap-add=SYS_ADMIN
--cap-add=MKNOD --device $(/sbin/losetup -f)".

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=774698

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2017-06-29 09:09:08 +02:00

36 lines
964 B
YAML

language: python
python:
- "3.4"
- "3.5"
- "3.6"
sudo: required
services:
- docker
install:
# install kas to have all kas dependencies:
- pip install .
# checkcode dependencies:
- pip install pylint pep8 doc8 Pygments
script:
- scripts/checkcode.sh .
- docker build -t kasproject/kas .
- docker build -t kasproject/kas-isar -f Dockerfile.isar .
after_success:
- if [ "$TRAVIS_BRANCH" == "master" ] || [ "$TRAVIS_BRANCH" == "next" ]; then
docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD";
for IMAGE in kasproject/kas kasproject/kas-isar; do
docker push $IMAGE;
if [ "$TRAVIS_BRANCH" == "master" ] && git describe --exact-match 2>/dev/null >/dev/null; then
VERSION="$(/usr/bin/python3 -c 'from kas import __version__; print(__version__)')";
docker tag $IMAGE $IMAGE:$VERSION;
docker push $IMAGE:$VERSION;
fi
done
fi