From 8b6643a3d60acd7751f98a344eac54743f26ea42 Mon Sep 17 00:00:00 2001 From: octo-gone Date: Thu, 21 Sep 2023 12:17:02 +0300 Subject: [PATCH] feat: add platforms to build action --- .github/workflows/network-docker.yml | 11 ++++++++--- Dockerfile | 10 +++++----- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/.github/workflows/network-docker.yml b/.github/workflows/network-docker.yml index 4cb0174..1ccb55b 100644 --- a/.github/workflows/network-docker.yml +++ b/.github/workflows/network-docker.yml @@ -20,24 +20,29 @@ jobs: submodules: 'true' token: ${{ secrets.NETWORK_REPO_GITHUB_TOKEN }} + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Docker login - uses: docker/login-action@v1 + uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_LOGIN }} password: ${{ secrets.DOCKER_TOKEN }} - name: Build & publish scheduler - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v5 with: context: . + platforms: linux/amd64,linux/arm/v7,linux/arm64/v8,linux/386 target: network-scheduler push: true tags: subsquid/network-scheduler:${{ inputs.tag }} - name: Build & publish query gateway - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v5 with: context: . + platforms: linux/amd64,linux/arm/v7,linux/arm64/v8,linux/386 target: query-gateway push: true tags: subsquid/query-gateway:${{ inputs.tag }} diff --git a/Dockerfile b/Dockerfile index ba305ba..f30b248 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM rust:1.65.0 AS archive-router-builder +FROM --platform=$BUILDPLATFORM rust:1.65.0 AS archive-router-builder RUN apt-get update && apt-get install protobuf-compiler -y WORKDIR /archive-router COPY ./ . @@ -6,14 +6,14 @@ RUN rm -r crates/network-scheduler RUN rm -r crates/query-gateway RUN cargo build --release -FROM debian:bullseye-slim AS archive-router +FROM --platform=$BUILDPLATFORM debian:bullseye-slim AS archive-router RUN apt-get update && apt-get install ca-certificates -y WORKDIR /archive-router COPY --from=archive-router-builder /archive-router/target/release/router ./router ENTRYPOINT ["/archive-router/router"] EXPOSE 3000 -FROM rust:1.70-bookworm AS network-builder +FROM --platform=$BUILDPLATFORM rust:1.70-bookworm AS network-builder RUN apt update RUN apt install -y -V protobuf-compiler @@ -30,7 +30,7 @@ COPY subsquid-network/transport ./subsquid-network/transport RUN cargo build --release --workspace -FROM debian:bookworm-slim as network-scheduler +FROM --platform=$BUILDPLATFORM debian:bookworm-slim as network-scheduler RUN apt-get update && apt-get install ca-certificates net-tools -y @@ -49,7 +49,7 @@ RUN echo "PORT=\${HTTP_LISTEN_ADDR##*:}; netstat -an | grep \$PORT > /dev/null; RUN chmod +x ./healthcheck.sh HEALTHCHECK --interval=5s CMD ./healthcheck.sh -FROM debian:bookworm-slim as query-gateway +FROM --platform=$BUILDPLATFORM debian:bookworm-slim as query-gateway RUN apt-get update && apt-get install ca-certificates net-tools -y