diff --git a/.github/workflows/linux-arm.yml b/.github/workflows/linux-arm.yml index d21d7ee89..06c921f3a 100644 --- a/.github/workflows/linux-arm.yml +++ b/.github/workflows/linux-arm.yml @@ -9,29 +9,32 @@ on: env: DEBIAN_FRONTEND: noninteractive - OPENCV_VERSION: 4.11.0 + OPENCV_VERSION: 4.12.0 jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: docker/setup-qemu-action@v3 + - uses: docker/setup-buildx-action@v3 with: install: true - - uses: docker/setup-qemu-action@v3 - - - name: Build with Docker - run: | - # Override OpenCV version in Dockerfile - docker build \ - -t opencvsharp-linux-arm:latest \ - --output=type=docker \ - --platform=linux/arm/v7 \ - --build-arg OPENCV_VERSION \ - ./docker/ubuntu22-dotnet6-opencv4.8.0 + # Build with Buildx and cache Docker layers in GitHub Actions cache + - name: Build with Docker (cached) + uses: docker/build-push-action@v6 + with: + context: ./docker/ubuntu24-dotnet8-opencv4.12.0 + platforms: linux/arm64 + build-args: | + OPENCV_VERSION=${{ env.OPENCV_VERSION }} + # Load the built image to local Docker for later docker create/cp + outputs: type=docker,name=opencvsharp-linux-arm:latest + cache-from: type=gha + cache-to: type=gha,mode=max - name: Extract build files from Docker instance run: |