diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6ebe3d33b..ea9878f18 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,11 +38,11 @@ prepare:fedora:docker-dev: - shell - linux -#prepare:raspbian:docker-dev: -# extends: prepare:fedora:docker-dev -# variables: -# DOCKER_FILE: packaging/docker/Dockerfile.dev-raspbian -# DOCKER_IMAGE_DEV: villas/node-dev-raspbian +prepare:raspbian:docker-dev: + extends: prepare:fedora:docker-dev + variables: + DOCKER_FILE: packaging/docker/Dockerfile.dev-raspbian + DOCKER_IMAGE_DEV: villas/node-dev-raspbian prepare:ubuntu:docker-dev: extends: prepare:fedora:docker-dev @@ -79,11 +79,12 @@ build:ubuntu:x86_64: LD_PRELOAD: /lib/x86_64-linux-gnu/libSegFault.so DOCKER_IMAGE_DEV: villas/node-dev-ubuntu -#build:raspbian:armv6l: -# extends: build:fedora:x86_64 -# variables: -# LD_PRELOAD: /lib/arm-linux-gnueabihf/libSegFault.so -# DOCKER_IMAGE_DEV: villas/node-dev-raspbian +build:raspbian:armv6l: + extends: build:fedora:x86_64 + variables: + LD_PRELOAD: /lib/arm-linux-gnueabihf/libSegFault.so + DOCKER_IMAGE_DEV: villas/node-dev-raspbian + CMAKE_OPTS: -DWITH_NODE_INFINIBAND=OFF -DWITH_API=OFF build:docs: stage: build diff --git a/packaging/docker/Dockerfile.app-raspbian b/packaging/docker/Dockerfile.app-raspbian index fa2b8642d..6c593a8a7 100644 --- a/packaging/docker/Dockerfile.app-raspbian +++ b/packaging/docker/Dockerfile.app-raspbian @@ -54,7 +54,7 @@ LABEL \ org.label-schema.vendor = "Institute for Automation of Complex Power Systems, RWTH Aachen University" \ org.label-schema.author.name = "Steffen Vogel" \ org.label-schema.author.email = "stvogel@eonerc.rwth-aachen.de" \ - org.label-schema.description = "A image containing for VILLASnode based on Fedora" \ + org.label-schema.description = "A image containing for VILLASnode based on Raspbian" \ org.label-schema.url = "http://fein-aachen.org/projects/villas-framework/" \ org.label-schema.vcs-url = "https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ org.label-schema.usage = "https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" diff --git a/packaging/docker/Dockerfile.dev-raspbian b/packaging/docker/Dockerfile.dev-raspbian index 4e5eba10d..9cc1e39a8 100644 --- a/packaging/docker/Dockerfile.dev-raspbian +++ b/packaging/docker/Dockerfile.dev-raspbian @@ -27,24 +27,15 @@ ARG GIT_BRANCH=unknown ARG VERSION=unknown ARG VARIANT=unknown -RUN echo 'APT::Default-Release "stable";' > /etc/apt/apt.conf.d/99defaultrelease -RUN echo 'deb http://archive.raspbian.org/raspbian buster main contrib non-free rpi firmware' >> /etc/apt/sources.list.d/buster.list - -RUN apt-get install -y -t buster \ - gcc-8 g++-8 cmake - # Toolchain RUN apt-get update && apt-get install -y \ autoconf automake libtool \ - pkg-config make \ - git curl tar bzip2 \ + pkg-config make gcc g++\ + git curl wget tar bzip2 \ protobuf-compiler protobuf-c-compiler -RUN apt-get install -y -t buster \ - gcc-8 g++-8 - # Dependencies -RUN apt-get install -y \ +RUN apt-get install -y\ libssl-dev \ libprotobuf-dev \ libprotobuf-c-dev \ @@ -58,13 +49,23 @@ RUN apt-get install -y \ librabbitmq-dev \ libmosquitto-dev \ libcomedi-dev \ - libibverbs-dev \ librdmacm-dev \ libre-dev \ libusb-1.0-0-dev -ENV CC=gcc-8 -ENV CXX=gcc-8 +ENV CC=gcc +ENV CXX=g++ + +# Build & Install CMake 3.14.1 +RUN cd /tmp && \ + wget https://github.com/Kitware/CMake/releases/download/v3.14.1/cmake-3.14.1.tar.gz && \ + tar -xzf cmake-3.14.1.tar.gz && \ + cd cmake-3.14.1 && ./bootstrap --parallel=$(nproc) -- -DCMAKE_BUILD_TYPE:STRING=Release && \ + make -j$(nproc) && make install && \ + rm -rf /tmp/* + +# Add CMake install dir to PATH +ENV PATH="usr/local/bin:${PATH}" # Build & Install libwebsockets RUN cd /tmp && \ @@ -107,7 +108,7 @@ LABEL \ org.label-schema.vendor="Institute for Automation of Complex Power Systems, RWTH Aachen University" \ org.label-schema.author.name="Steffen Vogel" \ org.label-schema.author.email="stvogel@eonerc.rwth-aachen.de" \ - org.label-schema.description="A image containing all build-time dependencies for VILLASnode based on Ubuntu" \ + org.label-schema.description="A image containing all build-time dependencies for VILLASnode based on Raspbian" \ org.label-schema.url="http://fein-aachen.org/projects/villas-framework/" \ org.label-schema.vcs-url="https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ - org.label-schema.usage="https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" \ No newline at end of file + org.label-schema.usage="https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker"