diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 5c5d383e3d..6a9113941f 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -311,8 +311,8 @@ jobs: - name: Run ShellCheck uses: ludeeus/action-shellcheck@master - docker-build-check: - name: "Build [docker]" + docker_build_ubuntu: + name: "Docker [ubuntu]" runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -320,3 +320,18 @@ jobs: run: docker compose -f docker/single-node/docker-compose.yaml up --build -d - name: Docker Cluster Workflow run: docker compose -f docker/cluster/docker-compose.yaml up --build -d + + docker_build_macos: + name: Docker [macosx_${{ matrix.arch }}] + runs-on: ${{ matrix.os }} + strategy: + matrix: + include: + - os: macos-14 + arch: arm64 + steps: + - uses: actions/checkout@v4 + - name: Docker Single-Node Workflow + run: docker compose -f docker/single-node/docker-compose.yaml up --build -d + - name: Docker Cluster Workflow + run: docker compose -f docker/cluster/docker-compose.yaml up --build -d diff --git a/docker/Dockerfile b/docker/Dockerfile index 5d3cc80d1f..fb8c9bfc65 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -FROM docker.io/ubuntu:22.04 AS builder +FROM docker.io/ubuntu:24.04 AS builder # Set up CA certificates first before installing other dependencies RUN apt-get update && \ @@ -6,8 +6,9 @@ RUN apt-get update && \ apt-get install -y --no-install-recommends \ build-essential \ gdb \ + cmake \ curl \ - python3.10 \ + python3 \ ninja-build \ pkg-config \ bison \ @@ -18,14 +19,6 @@ RUN apt-get update && \ && apt clean \ && rm -rf /var/lib/apt/lists/* -# BDE build requires CMake > 3.24, which is not available in Ubuntu 22.04 yet -# Consider installation of cmake from apt once it's met BDE requirements -RUN mkdir -p /deps_build/CMake \ - && cd /deps_build/CMake \ - && curl -s -L -O https://github.com/Kitware/CMake/releases/download/v3.27.1/cmake-3.27.1-linux-x86_64.sh \ - && /bin/bash cmake-3.27.1-linux-x86_64.sh -- --skip-license --prefix=/usr/local \ - && rm -rf /deps_build - WORKDIR /workspace COPY docker/build_deps.sh bin/build_deps.sh @@ -55,7 +48,7 @@ RUN cd srcs/bmq \ && mv /bmq/bin/bmqbrkr.tsk /bmq/bin/bmqbrkr \ && mv /bmq/bin/bmqtool.tsk /bmq/bin/bmqtool -FROM docker.io/ubuntu:22.04 +FROM docker.io/ubuntu:24.04 COPY --from=builder /bmq /usr/local diff --git a/docker/single-node/docker-compose.yaml b/docker/single-node/docker-compose.yaml index 5039bdb27e..c58daf152e 100644 --- a/docker/single-node/docker-compose.yaml +++ b/docker/single-node/docker-compose.yaml @@ -1,6 +1,7 @@ services: bmqbrkr: image: bmqbrkr:latest + platform: linux/amd64 build: context: ../.. dockerfile: docker/Dockerfile @@ -11,6 +12,7 @@ services: bmqtool: image: bmqbrkr:latest + platform: linux/amd64 build: context: ../.. dockerfile: docker/Dockerfile