From: Bastian Dehn Date: Fri, 11 Apr 2025 19:00:27 +0000 (+0200) Subject: change container buildin run X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=090bb23a0e3a2d7f098612ebb84cbf2745a6ed89;p=sane-kds-s2000w-net.git change container buildin run --- diff --git a/builder/Containerfile-bookworm b/builder/Containerfile-bookworm index 980e18b..b5ad605 100644 --- a/builder/Containerfile-bookworm +++ b/builder/Containerfile-bookworm @@ -13,12 +13,5 @@ libjson-c-dev \ libcmocka-dev \ lcov \ && apt-get clean -CMD mkdir -p build-bookworm-test \ -&& cd build-bookworm-test \ -&& cmake -DRUN_TESTS=on .. \ -&& make -j$(nproc) \ -&& cd .. \ -&& mkdir -p build-bookworm \ -&& cd build-bookworm \ -&& cmake -DEXTRA_VERSION="-bookworm" -DCMAKE_BUILD_TYPE=Release .. \ -&& make -j$(nproc) package \ No newline at end of file +COPY run /app/run +ENTRYPOINT /app/run \ No newline at end of file diff --git a/builder/Containerfile-trixie b/builder/Containerfile-trixie index 99d0e22..ec04a34 100644 --- a/builder/Containerfile-trixie +++ b/builder/Containerfile-trixie @@ -13,12 +13,5 @@ libjson-c-dev \ libcmocka-dev \ lcov \ && apt-get clean -CMD mkdir -p build-trixie-test \ -&& cd build-trixie-test \ -&& cmake -DRUN_TESTS=on .. \ -&& make -j$(nproc) \ -&& cd .. \ -&& mkdir -p build-trixie \ -&& cd build-trixie \ -&& cmake -DEXTRA_VERSION="-trixie" -DCMAKE_BUILD_TYPE=Release .. \ -&& make -j$(nproc) package \ No newline at end of file +COPY run /app/run +ENTRYPOINT /app/run \ No newline at end of file diff --git a/builder/build-in-container b/builder/build-in-container index de8e9b6..2df82c1 100755 --- a/builder/build-in-container +++ b/builder/build-in-container @@ -3,10 +3,10 @@ main() { podman build -f builder/Containerfile-bookworm -t sane-kds-s2000w-net-builder-bookworm - podman run -tiv ./:/app --rm sane-kds-s2000w-net-builder-bookworm + podman run -v ./:/source --rm sane-kds-s2000w-net-builder-bookworm || return $? podman build -f builder/Containerfile-trixie -t sane-kds-s2000w-net-builder-trixie - podman run -tiv ./:/app --rm sane-kds-s2000w-net-builder-trixie + podman run -v ./:/source --rm sane-kds-s2000w-net-builder-trixie || return $? } main diff --git a/builder/run b/builder/run new file mode 100755 index 0000000..c1f4727 --- /dev/null +++ b/builder/run @@ -0,0 +1,51 @@ +#!/bin/bash + +errlog() +{ + local lastexit=$? + local msg="$1" + + echo "❌ ERROR: $msg" + echo "🛑 EXIT $lastexit" + return $lastexit +} + +run_tests() +{ + mkdir -p /app-tests + cd /app-tests + cmake -DRUN_TESTS=ON /source + echo "ℹ️ INFO: run tests" + make -j$(nproc) || errlog "tests failed" || return $? +} + +build_package() +{ + mkdir -p /app-build + cd /app-build + source /etc/os-release + cmake -DEXTRA_VERSION="-$VERSION_CODENAME" -DCMAKE_BUILD_TYPE=Release /source + echo "ℹ️ INFO: build package" + make -j$(nproc) package || errlog "could not build package" || return $? +} + +copy_package() +{ + source /etc/os-release + mkdir -p /source/build-$VERSION_CODENAME + echo "ℹ️ INFO: copy package" + cp /app-build/*.deb /source/build-$VERSION_CODENAME +} + +main() +{ + echo "⭐ START: run" + + run_tests || return $? + build_package || return $? + copy_package || return $? + + echo "✅ SUCCESS run" +} + +main \ No newline at end of file