From b54641a2a165caefedc5352b2c66f9a21a72fd80 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Thu, 5 May 2022 19:48:04 +0200 Subject: [PATCH 1/6] install catch2 for CI/CD --- automation/Dockerfile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/automation/Dockerfile b/automation/Dockerfile index 32d7240f..1391dfe2 100644 --- a/automation/Dockerfile +++ b/automation/Dockerfile @@ -16,5 +16,11 @@ RUN mkdir -p /usr/tools; \ curl https://buggy.irs.uni-stuttgart.de/eive/tools/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.gz \ | tar -xz -C /usr/tools +RUN git clone https://github.com/catchorg/Catch2.git && \ + cd Catch2 && \ + git checkout v3.0.0-preview5 && \ + cmake -Bbuild -H. -DBUILD_TESTING=OFF && \ + cmake --build build/ --target install + ENV ZYNQ_7020_SYSROOT="/usr/rootfs/eive-compile-rootfs" ENV PATH=$PATH:"/usr/tools/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin" From a920f60c61486dbfb4f9b9fb1ba2f3728ee40c7c Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Thu, 5 May 2022 19:50:53 +0200 Subject: [PATCH 2/6] use newer docker container d5 --- automation/Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/automation/Jenkinsfile b/automation/Jenkinsfile index e8ad8851..6504bd1d 100644 --- a/automation/Jenkinsfile +++ b/automation/Jenkinsfile @@ -5,7 +5,7 @@ pipeline { } agent { docker { - image 'eive-obsw-ci:d4' + image 'eive-obsw-ci:d5' args '--sysctl fs.mqueue.msg_max=100' } } From e98563d834d4376bb32845b9c8c0ab3c70b85ced Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Thu, 5 May 2022 19:51:25 +0200 Subject: [PATCH 3/6] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 311fc08a..b338c8d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ list yields a list of all related PRs for each release. - Build unittest as default side product of hosted builds - Let CI/CD build host build and run unittest side product in same step +- Catch2 pre-installed in CI/CD docker container ## Changed From 81b29cfda6f6af2c69baa5b8b45110148575af5f Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Thu, 5 May 2022 20:16:42 +0200 Subject: [PATCH 4/6] lets hope this works --- automation/Dockerfile | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/automation/Dockerfile b/automation/Dockerfile index 1391dfe2..1adcbb4f 100644 --- a/automation/Dockerfile +++ b/automation/Dockerfile @@ -6,10 +6,11 @@ RUN apt-get --yes upgrade ARG DEBIAN_FRONTEND=noninteractive RUN apt-get --yes install cmake libgpiod-dev xz-utils nano curl git gcc g++ lcov valgrind libgps-dev -# Q7S root filesystem, required for cross-compilation. -RUN mkdir -p /usr/rootfs; \ -curl https://buggy.irs.uni-stuttgart.de/eive/tools/eive-compile-rootfs-v0.1.0-7-gae69838.tar.xz \ - | tar -xJ -C /usr/rootfs +ARG XIPHOS_SDK_NAME=sdk-xiphos-eive-v0.2.0.tar +# Install Xiphos ARK SDK, which also installs Q7S root filesystem, required for cross-compilation. +RUN curl https://buggy.irs.uni-stuttgart.de/eive/tools/${XIPHOS_SDK_NAME} | tar -x && \ + cd ${XIPHOS_SDK_NAME} && \ + ./ark-glibc-x86_64-eive-image-cortexa9hf-neon-toolchain-nodistro.0.sh -y # Cross compiler RUN mkdir -p /usr/tools; \ @@ -22,5 +23,5 @@ RUN git clone https://github.com/catchorg/Catch2.git && \ cmake -Bbuild -H. -DBUILD_TESTING=OFF && \ cmake --build build/ --target install -ENV ZYNQ_7020_SYSROOT="/usr/rootfs/eive-compile-rootfs" +ENV ZYNQ_7020_SYSROOT="/opt/xiphos/sdk/ark/sysroots/cortexa9hf-neon-xiphos-linux-gnueabi" ENV PATH=$PATH:"/usr/tools/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin" From 09f80f63b5e9f5d7a823bb6917d463e09a6e5db1 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Fri, 6 May 2022 01:01:56 +0200 Subject: [PATCH 5/6] small dockerfile fix --- automation/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/automation/Dockerfile b/automation/Dockerfile index 1adcbb4f..94bfbf92 100644 --- a/automation/Dockerfile +++ b/automation/Dockerfile @@ -6,9 +6,9 @@ RUN apt-get --yes upgrade ARG DEBIAN_FRONTEND=noninteractive RUN apt-get --yes install cmake libgpiod-dev xz-utils nano curl git gcc g++ lcov valgrind libgps-dev -ARG XIPHOS_SDK_NAME=sdk-xiphos-eive-v0.2.0.tar +ARG XIPHOS_SDK_NAME=sdk-xiphos-eive-v0.2.0 # Install Xiphos ARK SDK, which also installs Q7S root filesystem, required for cross-compilation. -RUN curl https://buggy.irs.uni-stuttgart.de/eive/tools/${XIPHOS_SDK_NAME} | tar -x && \ +RUN curl https://buggy.irs.uni-stuttgart.de/eive/tools/${XIPHOS_SDK_NAME}.tar | tar -x && \ cd ${XIPHOS_SDK_NAME} && \ ./ark-glibc-x86_64-eive-image-cortexa9hf-neon-toolchain-nodistro.0.sh -y From 31425877b4f92e54d4eb955168f91fb141430fe3 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Fri, 6 May 2022 01:09:25 +0200 Subject: [PATCH 6/6] apparently python3 is needed --- automation/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/automation/Dockerfile b/automation/Dockerfile index 94bfbf92..73275ffb 100644 --- a/automation/Dockerfile +++ b/automation/Dockerfile @@ -4,7 +4,7 @@ RUN apt-get update RUN apt-get --yes upgrade #tzdata is a dependency, won't install otherwise ARG DEBIAN_FRONTEND=noninteractive -RUN apt-get --yes install cmake libgpiod-dev xz-utils nano curl git gcc g++ lcov valgrind libgps-dev +RUN apt-get --yes install cmake libgpiod-dev xz-utils nano curl git gcc g++ lcov valgrind libgps-dev python3 ARG XIPHOS_SDK_NAME=sdk-xiphos-eive-v0.2.0 # Install Xiphos ARK SDK, which also installs Q7S root filesystem, required for cross-compilation.