From 187f4cd5208b805c9c0597aea76995b10a301d44 Mon Sep 17 00:00:00 2001 From: Daniel Claes Date: Tue, 22 Sep 2020 21:07:17 +0200 Subject: [PATCH 1/2] wip: build within docker --- firmware/.dockerignore | 5 +++++ firmware/SW102/docker/Dockerfile | 9 +++++++++ firmware/build_with_docker.sh | 4 ++++ firmware/docker/Dockerfile | 9 +++++++++ 4 files changed, 27 insertions(+) create mode 100644 firmware/.dockerignore create mode 100644 firmware/SW102/docker/Dockerfile create mode 100755 firmware/build_with_docker.sh create mode 100644 firmware/docker/Dockerfile diff --git a/firmware/.dockerignore b/firmware/.dockerignore new file mode 100644 index 00000000..8467e4b4 --- /dev/null +++ b/firmware/.dockerignore @@ -0,0 +1,5 @@ +# The dockerfile does not need to be copied into the docker, this prevents rebuilds +docker/Dockerfile +.idea +.settings +build \ No newline at end of file diff --git a/firmware/SW102/docker/Dockerfile b/firmware/SW102/docker/Dockerfile new file mode 100644 index 00000000..abd14dc9 --- /dev/null +++ b/firmware/SW102/docker/Dockerfile @@ -0,0 +1,9 @@ +# syntax = docker/dockerfile:experimental +FROM ubuntu:20.04 +RUN apt update\ + && DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi make\ + && rm -rf /var/lib/apt/lists/* +RUN mkdir /build +COPY . /source +#RUN #--mount=type=bind,source=./build,target=/build,rw \ +RUN cd /source/SW102 && make \ No newline at end of file diff --git a/firmware/build_with_docker.sh b/firmware/build_with_docker.sh new file mode 100755 index 00000000..1e8a5059 --- /dev/null +++ b/firmware/build_with_docker.sh @@ -0,0 +1,4 @@ +#!/bin/bash +mkdir -p build + +DOCKER_BUILDKIT=0 docker build -f docker/Dockerfile . \ No newline at end of file diff --git a/firmware/docker/Dockerfile b/firmware/docker/Dockerfile new file mode 100644 index 00000000..abd14dc9 --- /dev/null +++ b/firmware/docker/Dockerfile @@ -0,0 +1,9 @@ +# syntax = docker/dockerfile:experimental +FROM ubuntu:20.04 +RUN apt update\ + && DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi make\ + && rm -rf /var/lib/apt/lists/* +RUN mkdir /build +COPY . /source +#RUN #--mount=type=bind,source=./build,target=/build,rw \ +RUN cd /source/SW102 && make \ No newline at end of file From e5e6fa388a4f5af39c4484455ae4bf5cbac0eb55 Mon Sep 17 00:00:00 2001 From: Daniel Claes Date: Tue, 22 Sep 2020 22:12:46 +0200 Subject: [PATCH 2/2] feature: working version to build with docker --- firmware/.dockerignore | 5 ++++- firmware/build_with_docker.sh | 3 ++- firmware/docker/Dockerfile | 9 +++++---- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/firmware/.dockerignore b/firmware/.dockerignore index 8467e4b4..5d0fe4bf 100644 --- a/firmware/.dockerignore +++ b/firmware/.dockerignore @@ -1,5 +1,8 @@ # The dockerfile does not need to be copied into the docker, this prevents rebuilds docker/Dockerfile +build_with_docker.sh .idea .settings -build \ No newline at end of file +build/* +*/_build +*/_release diff --git a/firmware/build_with_docker.sh b/firmware/build_with_docker.sh index 1e8a5059..7a5b4902 100755 --- a/firmware/build_with_docker.sh +++ b/firmware/build_with_docker.sh @@ -1,4 +1,5 @@ #!/bin/bash mkdir -p build -DOCKER_BUILDKIT=0 docker build -f docker/Dockerfile . \ No newline at end of file +DOCKER_BUILDKIT=0 docker build -f docker/Dockerfile . -t sw102_build +docker run --rm -v $PWD/build:/build sw102_build /bin/bash -c "cp /source/SW102/_build/*.hex /build; cp /source/SW102/_release/*.zip /build" diff --git a/firmware/docker/Dockerfile b/firmware/docker/Dockerfile index abd14dc9..3eda8795 100644 --- a/firmware/docker/Dockerfile +++ b/firmware/docker/Dockerfile @@ -1,9 +1,10 @@ # syntax = docker/dockerfile:experimental FROM ubuntu:20.04 RUN apt update\ - && DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi make\ - && rm -rf /var/lib/apt/lists/* -RUN mkdir /build + && DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi make python3-pip\ + && rm -rf /var/lib/apt/lists/* \ + && pip3 install nrfutil + COPY . /source #RUN #--mount=type=bind,source=./build,target=/build,rw \ -RUN cd /source/SW102 && make \ No newline at end of file +RUN cd /source/SW102 && make && make generate_dfu_package