From 3dc4457d2e36288807f69d9fb60e1f14b38df892 Mon Sep 17 00:00:00 2001 From: Everett Badeaux Date: Fri, 1 Aug 2025 23:50:38 -0500 Subject: [PATCH 1/2] Add docker build script --- docker-build.sh | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100755 docker-build.sh diff --git a/docker-build.sh b/docker-build.sh new file mode 100755 index 0000000..162308a --- /dev/null +++ b/docker-build.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +# Variables +CONTAINER_NAME="spectator-build" +IMAGE_NAME="spectator-cpp-image" +CONTAINER_FILE_PATH="/home/ubuntu/spectator-cpp/cmake-build" +HOST_FILE_PATH="$PWD" + +if [[ -z "$BUILD_TYPE" ]]; then + BUILD_TYPE="Debug" +fi + +## Remove any previous container +docker rm $CONTAINER_NAME 2>/dev/null || true + +## Run the container and execute build.sh inside the virtual environment +docker run --name $CONTAINER_NAME \ + --entrypoint bash $IMAGE_NAME -lc \ + "source /home/ubuntu/spectator-cpp/venv/bin/activate && set -x && BUILD_TYPE=$BUILD_TYPE bash /home/ubuntu/spectator-cpp/build.sh" + +## Copy the build output from the container to the host +docker cp $CONTAINER_NAME:$CONTAINER_FILE_PATH $HOST_FILE_PATH + +## Remove the container after copying +docker rm $CONTAINER_NAME \ No newline at end of file From 878241b85785660e81dad258adad5e309f70702d Mon Sep 17 00:00:00 2001 From: Everett Badeaux Date: Sat, 2 Aug 2025 00:05:56 -0500 Subject: [PATCH 2/2] Docker Build Script --- docker-build.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docker-build.sh b/docker-build.sh index 162308a..3d8fd51 100755 --- a/docker-build.sh +++ b/docker-build.sh @@ -10,6 +10,12 @@ if [[ -z "$BUILD_TYPE" ]]; then BUILD_TYPE="Debug" fi +# Build image if it does not exist +if [[ -z "$(docker images -q $IMAGE_NAME 2>/dev/null)" ]]; then + echo "Docker image $IMAGE_NAME not found. Building..." + docker build -t $IMAGE_NAME -f Dockerfiles/Ubuntu.Dockerfile . +fi + ## Remove any previous container docker rm $CONTAINER_NAME 2>/dev/null || true