strategy:
fail-fast: false
matrix:
- container_directory: [fedora-latest, centos-7, alpine-edge, opensuse-leap, debian-latest, ubuntu-rolling]
+ container_directory: [fedora-latest, centos-7, alpine-edge, opensuse-leap, debian-latest, ubuntu-rolling, ubuntu-lts]
name: Compile and run tests
steps:
--- /dev/null
+#!/bin/bash
+# Build zchunk-ubuntu-lts:latest if it doesn't exist
+HAVE_IMAGE=$(docker image ls -q zchunk-ubuntu-lts:latest)
+if [ "$HAVE_IMAGE" == "" ]; then
+ autotest/ubuntu-lts/prep.sh
+ if [ "$?" -ne 0 ]; then
+ exit 1
+ fi
+fi
+docker image rm zchunk-ubuntu-lts:test -f 2>/dev/null 1>/dev/null
+docker image build -t zchunk-ubuntu-lts:test --file autotest/ubuntu-lts/build/Dockerfile ./
+
--- /dev/null
+FROM zchunk-ubuntu-lts:latest
+ADD ./ /code
+WORKDIR /code
+RUN meson build && cd build && ninja
+WORKDIR /code/build
+CMD ninja test
--- /dev/null
+#!/bin/bash
+docker pull ubuntu:latest
+if [ "$?" -ne 0 ]; then
+ exit 1
+fi
+docker image rm -f zchunk-ubuntu-lts:latest 2>/dev/null 1>/dev/null
+docker image build -t zchunk-ubuntu-lts:latest --file autotest/ubuntu-lts/prep/Dockerfile ./
--- /dev/null
+FROM ubuntu:latest
+RUN /bin/bash -c 'apt-get update && export DEBIAN_FRONTEND=noninteractive && apt-get -yq install meson gcc pkg-config libzstd-dev libcurl4-openssl-dev libssl-dev'
--- /dev/null
+#!/bin/bash
+# Build zchunk-ubuntu-lts:latest if it doesn't exist
+HAVE_IMAGE=$(docker image ls -q zchunk-ubuntu-lts:test)
+if [ "$HAVE_IMAGE" == "" ]; then
+ autotest/ubuntu-lts/build.sh
+ if [ "$?" -ne 0 ]; then
+ exit 1
+ fi
+fi
+docker rm zchunk-ubuntu-lts-test -f 2>/dev/null 1>/dev/null
+docker run --name zchunk-ubuntu-lts-test zchunk-ubuntu-lts:test
+RETVAL=$?
+docker rm zchunk-ubuntu-lts-test -f 2>/dev/null 1>/dev/null
+docker image rm zchunk-ubuntu-lts:test -f 2>/dev/null 1>/dev/null
+exit $RETVAL