Skip to content

Commit

Permalink
Merge pull request #6 from subsquid/octo-gone/multiplatform-build
Browse files Browse the repository at this point in the history
Add multi-platform build
  • Loading branch information
Wiezzel authored Sep 21, 2023
2 parents fbc0de7 + 8b6643a commit 02e99e1
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 8 deletions.
11 changes: 8 additions & 3 deletions .github/workflows/network-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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 }}
10 changes: 5 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
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 ./ .
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
Expand All @@ -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

Expand All @@ -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

Expand Down

0 comments on commit 02e99e1

Please sign in to comment.