From 637a5cc14ff50f92d08a21bedd529442b8698f85 Mon Sep 17 00:00:00 2001 From: syeopite <70992037+syeopite@users.noreply.github.com> Date: Mon, 9 Aug 2021 22:34:52 -0700 Subject: [PATCH] Add CI for testing arm64 docker (#2315) * Add CI for testing build of docker-arm64 * Add specs check to dockerfiles --- .github/workflows/ci.yml | 26 ++++++++++++++++++++++++++ docker/Dockerfile | 4 ++++ docker/Dockerfile.arm64 | 4 ++++ 3 files changed, 34 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 00302f28..fa6f9e33 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -91,3 +91,29 @@ jobs: - name: Test Docker run: while curl -Isf http://localhost:3000; do sleep 1; done + build-docker-arm64: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + with: + platforms: arm64 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Build Docker ARM64 image + uses: docker/build-push-action@v2 + with: + context: . + file: docker/Dockerfile.arm64 + platforms: linux/arm64/v8 + + - name: Test Docker + run: while curl -Isf http://localhost:3000; do sleep 1; done + + diff --git a/docker/Dockerfile b/docker/Dockerfile index 9a535414..0b6c6ceb 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -43,6 +43,10 @@ COPY ./src/ ./src/ # TODO: .git folder is required for building – this is destructive. # See definition of CURRENT_BRANCH, CURRENT_COMMIT and CURRENT_VERSION. COPY ./.git/ ./.git/ + +RUN crystal spec --warnings all \ + --link-flags "-lxml2 -llzma" + RUN crystal build ./src/invidious.cr \ --static --warnings all \ --link-flags "-lxml2 -llzma" diff --git a/docker/Dockerfile.arm64 b/docker/Dockerfile.arm64 index 1ec95d8a..54226b66 100644 --- a/docker/Dockerfile.arm64 +++ b/docker/Dockerfile.arm64 @@ -43,6 +43,10 @@ COPY ./src/ ./src/ # TODO: .git folder is required for building – this is destructive. # See definition of CURRENT_BRANCH, CURRENT_COMMIT and CURRENT_VERSION. COPY ./.git/ ./.git/ + +RUN crystal spec --warnings all \ + --link-flags "-lxml2 -llzma" + RUN crystal build ./src/invidious.cr \ --static --warnings all \ --link-flags "-lxml2 -llzma"