1111 fail-fast : false
1212 matrix :
1313 python-version : [ '3.9', '3.10', '3.11', '3.12', '3.13' ]
14+ podman-version : ['4.3.1', '5.4.2']
1415
1516 runs-on : ubuntu-latest
1617 container :
@@ -20,10 +21,53 @@ jobs:
2021 options : --privileged --cgroupns=host
2122 steps :
2223 - uses : actions/checkout@v5
23- - name : Install dependencies
24+ - name : Install podman-4.3.1
25+ if : matrix.podman-version == '4.3.1'
2426 run : |
2527 set -e
2628 apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y podman
29+ - name : Install dependencies for dpkg
30+ if : matrix.podman-version == '5.4.2'
31+ shell : bash
32+ run : |
33+ DEBIAN_FRONTEND=noninteractive apt update -y
34+ DEBIAN_FRONTEND=noninteractive apt-get install -y conmon golang-github-containers-common libgpgme11 libsubid4
35+ DEBIAN_FRONTEND=noninteractive apt update -y && apt upgrade -y buildah
36+ - name : Install podman-5.4.2 and required dependencies from .deb files in podman-compose-test-data repository
37+ if : matrix.podman-version == '5.4.2'
38+ shell : bash
39+ run : |
40+ BASE_URLS=(
41+ "https://raw.githubusercontent.com/mokibit/podman-compose-test-data/main/deb_files/podman-5.4.2"
42+ "https://raw.githubusercontent.com/mokibit/podman-compose-test-data/main/deb_files/crun-1.21"
43+ "https://raw.githubusercontent.com/mokibit/podman-compose-test-data/main/deb_files/netavark-1.14"
44+ "https://raw.githubusercontent.com/mokibit/podman-compose-test-data/main/deb_files/aardvark-dns-1.14"
45+ )
46+ DEB_FILES=(
47+ "podman_5.4.2+composetest-1_amd64.deb"
48+ "crun_1.21-1_amd64.deb"
49+ "netavark_1.14.0-2_amd64.deb"
50+ "aardvark-dns_1.14.0-3_amd64.deb"
51+ )
52+ TMPDIR=$(mktemp -d)
53+ trap 'rm -rf "$TMPDIR"' EXIT
54+ for i in "${!BASE_URLS[@]}"; do
55+ url="${BASE_URLS[i]}/${DEB_FILES[i]}"
56+ echo "Downloading $url ..."
57+ curl -fsSL -o "$TMPDIR/${DEB_FILES[i]}" "$url"
58+ done
59+ echo "Installing packages ..."
60+ apt-get update -qq
61+ apt-get install -y -qq "$TMPDIR"/*.deb
62+ - name : Verify installation of podman-5.4.2, crun-1.21, netavark-1.14, aardvark-dns-1.14
63+ run : |
64+ podman --version
65+ echo "crun version: $(dpkg -l | awk '$2=="crun" {print $3}')"
66+ echo "netavark version: $(dpkg -l | awk '$2=="netavark" {print $3}')"
67+ echo "aardvark-dns version: $(dpkg -l | awk '$2=="aardvark-dns" {print $3}')"
68+ - name : Install other test dependencies
69+ run : |
70+ set -e
2771 python -m pip install --upgrade pip
2872 pip install -r requirements.txt
2973 pip install -r test-requirements.txt
0 commit comments