diff options
author | jaseg <git@jaseg.de> | 2022-06-21 11:02:07 +0200 |
---|---|---|
committer | jaseg <git@jaseg.de> | 2022-06-21 11:02:07 +0200 |
commit | 3aeea67f373fde8a05cd8a72367a48f1d3a4288d (patch) | |
tree | fd898488f6107191e4ebb51cd6041679099b8667 | |
parent | 95d0b6049033289900d70bd10397a2b043dc0347 (diff) | |
download | gerbonara-3aeea67f373fde8a05cd8a72367a48f1d3a4288d.tar.gz gerbonara-3aeea67f373fde8a05cd8a72367a48f1d3a4288d.tar.bz2 gerbonara-3aeea67f373fde8a05cd8a72367a48f1d3a4288d.zip |
Add podman local test runner
-rw-r--r-- | podman/arch-testenv | 6 | ||||
-rw-r--r-- | podman/debian-testenv | 11 | ||||
-rw-r--r-- | podman/fedora-testenv | 7 | ||||
-rwxr-xr-x | podman/testdata/testscript.sh | 8 | ||||
-rw-r--r-- | podman/ubuntu-testenv | 6 | ||||
-rwxr-xr-x | run-tests.sh | 14 |
6 files changed, 52 insertions, 0 deletions
diff --git a/podman/arch-testenv b/podman/arch-testenv new file mode 100644 index 0000000..650438b --- /dev/null +++ b/podman/arch-testenv @@ -0,0 +1,6 @@ + +FROM docker.io/archlinux:latest +MAINTAINER gerbolyze@jaseg.de +RUN pacman --noconfirm -Syu +RUN pacman --noconfirm -Sy git python python-pip base-devel python-numpy python-slugify python-lxml python-click python-pillow librsvg python-scipy python-sphinx python-pytest twine python-beautifulsoup4 gerbv + diff --git a/podman/debian-testenv b/podman/debian-testenv new file mode 100644 index 0000000..544b3f2 --- /dev/null +++ b/podman/debian-testenv @@ -0,0 +1,11 @@ + +FROM docker.io/debian:latest +MAINTAINER gerbolyze@jaseg.de +RUN env DEBIAN_FRONTEND=noninteractive apt update -y +RUN env DEBIAN_FRONTEND=noninteractive apt install -y libopencv-dev libpugixml-dev libpangocairo-1.0-0 libpango1.0-dev libcairo2-dev clang make python3 git python3-wheel curl python3-pip python3-venv + +RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y +RUN sh -c '. ~/.cargo/env && rustup install stable' +RUN sh -c '. ~/.cargo/env && rustup default stable' +RUN sh -c '. ~/.cargo/env && cargo install usvg' + diff --git a/podman/fedora-testenv b/podman/fedora-testenv new file mode 100644 index 0000000..c37de87 --- /dev/null +++ b/podman/fedora-testenv @@ -0,0 +1,7 @@ + +FROM docker.io/fedora:latest +MAINTAINER gerbolyze@jaseg.de +RUN dnf update --refresh -y +RUN dnf install -y python3 make clang opencv-devel pugixml-devel pango-devel cairo-devel rust cargo +RUN cargo install usvg + diff --git a/podman/testdata/testscript.sh b/podman/testdata/testscript.sh new file mode 100755 index 0000000..cd07d8f --- /dev/null +++ b/podman/testdata/testscript.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +set -e +git clone /data/git git +cd git +python3 -m pip install pytest-parallel +python3 -m pytest --workers auto + diff --git a/podman/ubuntu-testenv b/podman/ubuntu-testenv new file mode 100644 index 0000000..f13aa7e --- /dev/null +++ b/podman/ubuntu-testenv @@ -0,0 +1,6 @@ + +FROM docker.io/ubuntu:latest +MAINTAINER gerbolyze@jaseg.de +RUN env DEBIAN_FRONTEND=noninteractive apt update -y +RUN env DEBIAN_FRONTEND=noninteractive apt install -y python3 git python3-wheel curl python3-pip python3-venv +RUN python3 -m pip install numpy slugify lxml click pillow scipy sphinx pytest beautifulsoup4 diff --git a/run-tests.sh b/run-tests.sh new file mode 100755 index 0000000..50af316 --- /dev/null +++ b/run-tests.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +rm -rf podman/testdata/git +git clone --depth 1 . podman/testdata/git + +for distro in arch ubuntu +do + podman build -t gerbonara-$distro-testenv -f podman/$distro-testenv + mkdir -p /tmp/gerbonara-test-out + podman run --mount type=bind,src=podman/testdata,dst=/data,ro --mount type=bind,src=/tmp/gerbonara-test-out,dst=/out gerbonara-$distro-testenv /data/testscript.sh +done + |