diff --git a/.gitignore b/.gitignore index 3733b89..38df44a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -liscences/** +licenses/** diff --git a/README.md b/README.md index e69de29..042b8a4 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,2 @@ +## Building with docker secrets +TODO: Figure out a safer way to include secrets in the docker file diff --git a/dockerfiles/exways_test.dockerfile b/dockerfiles/exways_test.dockerfile deleted file mode 100644 index 18d8c2b..0000000 --- a/dockerfiles/exways_test.dockerfile +++ /dev/null @@ -1,5 +0,0 @@ -FROM ros:jazzy-ros-core - -# Copy and install the package -COPY ../pkgs/exwayz_navigation-ros2_jazzy-1.2.2-linux-u24.04-amd64.deb /tmp/ -RUN apt-get update && apt-get install -y /tmp/exwayz_navigation-ros2_jazzy-1.2.2-linux-u24.04-amd64.deb && rm -rf /var/lib/apt/lists/* diff --git a/exwayz_test.dockerfile b/exwayz_test.dockerfile new file mode 100644 index 0000000..e496db8 --- /dev/null +++ b/exwayz_test.dockerfile @@ -0,0 +1,29 @@ +# syntax=docker/dockerfile:1.3 +FROM ros:jazzy-ros-core + +# Build argument provided by buildx/BuildKit: `TARGETARCH` (amd64, arm64, etc.). +# Default to amd64 when not provided. +ARG TARGETARCH=amd64 + +# Copy both architecture-specific packages into the image and choose the right one at build time +COPY pkgs/exwayz_3d_mapping-1.2.2-linux-u24.04-amd64.deb /tmp/exwayz_amd64.deb +COPY pkgs/exwayz_3d_mapping-1.2.2-linux-u24.04-aarch64.deb /tmp/exwayz_aarch64.deb + +RUN --mount=type=secret,id=exwayz_license set -eux; \ + if [ "${TARGETARCH}" = "aarch64" ]; then \ + pkg=/tmp/exwayz_aarch64.deb; \ + else \ + pkg=/tmp/exwayz_amd64.deb; \ + fi; \ + apt-get update; \ + apt-get install -fy "$pkg"; \ + if [ -s /run/secrets/exwayz_license ]; then \ + exwayz_license --query "$(cat /run/secrets/exwayz_license)" || true; \ + fi; \ + rm -f /tmp/exwayz_amd64.deb /tmp/exwayz_aarch64.deb; \ + rm -rf /var/lib/apt/lists/* + +# TODO verify license was applied successfully + +# Set entrypoint +ENTRYPOINT ["/ros_entrypoint.sh"] diff --git a/liscences/README.md b/liscences/README.md deleted file mode 100644 index 4c9d13b..0000000 --- a/liscences/README.md +++ /dev/null @@ -1 +0,0 @@ -Add your liscence files for Exways in this folder under the name 'exways_liscence'