Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: PR Build Validation

on:
pull_request:
branches:
- main
workflow_dispatch:

permissions:
contents: read

jobs:
build-amd64:
name: build-amd64
runs-on: ubuntu-22.04
timeout-minutes: 180
env:
DEBIAN_FRONTEND: noninteractive
FULL_DELEGATES: "false"
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Build ImageMagick for amd64
run: |
set -euxo pipefail
chmod +x ./build.sh
./build.sh latest amd64

build-arm64:
name: build-arm64
runs-on: ubuntu-24.04-arm
timeout-minutes: 180
env:
DEBIAN_FRONTEND: noninteractive
FULL_DELEGATES: "false"
steps:
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Build ImageMagick for arm64
run: |
set -euxo pipefail
chmod +x ./build.sh
./build.sh latest arm64

required-check:
name: required-check
if: always()
needs:
- build-amd64
- build-arm64
runs-on: ubuntu-22.04
steps:
- name: Verify both builds succeeded
run: |
set -euxo pipefail
if [ "${{ needs.build-amd64.result }}" != "success" ]; then
echo "amd64 build failed"
exit 1
fi

if [ "${{ needs.build-arm64.result }}" != "success" ]; then
echo "arm64 build failed"
exit 1
fi

echo "Both architecture builds passed"