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
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
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
--- /dev/null
+#!/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