From: Jonathan Dieter Date: Mon, 17 Jan 2022 20:06:27 +0000 (+0000) Subject: Add tests for Ubuntu LTS X-Git-Tag: archive/raspbian/1.2.1+ds1-1+rpi1^2~7^2~1^2~3^2~2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=cfaecc26e7d57065ae73c0c650042bcc3a3cf2b7;p=zchunk.git Add tests for Ubuntu LTS Signed-off-by: Jonathan Dieter --- diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index dd25482..14b63fa 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,7 +13,7 @@ jobs: 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: diff --git a/autotest/ubuntu-lts/build.sh b/autotest/ubuntu-lts/build.sh new file mode 100755 index 0000000..e0298cc --- /dev/null +++ b/autotest/ubuntu-lts/build.sh @@ -0,0 +1,12 @@ +#!/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 ./ + diff --git a/autotest/ubuntu-lts/build/Dockerfile b/autotest/ubuntu-lts/build/Dockerfile new file mode 100644 index 0000000..2ffa531 --- /dev/null +++ b/autotest/ubuntu-lts/build/Dockerfile @@ -0,0 +1,6 @@ +FROM zchunk-ubuntu-lts:latest +ADD ./ /code +WORKDIR /code +RUN meson build && cd build && ninja +WORKDIR /code/build +CMD ninja test diff --git a/autotest/ubuntu-lts/prep.sh b/autotest/ubuntu-lts/prep.sh new file mode 100755 index 0000000..0362160 --- /dev/null +++ b/autotest/ubuntu-lts/prep.sh @@ -0,0 +1,7 @@ +#!/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 ./ diff --git a/autotest/ubuntu-lts/prep/Dockerfile b/autotest/ubuntu-lts/prep/Dockerfile new file mode 100644 index 0000000..32780d5 --- /dev/null +++ b/autotest/ubuntu-lts/prep/Dockerfile @@ -0,0 +1,2 @@ +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' diff --git a/autotest/ubuntu-lts/test.sh b/autotest/ubuntu-lts/test.sh new file mode 100755 index 0000000..1fb2cf6 --- /dev/null +++ b/autotest/ubuntu-lts/test.sh @@ -0,0 +1,15 @@ +#!/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