Skip to content

Commit

Permalink
Lightning-fast builds: use native GA ARM runners (#1057)
Browse files Browse the repository at this point in the history
  • Loading branch information
awawa-dev authored Jan 16, 2025
1 parent ea1c59e commit 1fcfcae
Show file tree
Hide file tree
Showing 2 changed files with 66 additions and 38 deletions.
72 changes: 43 additions & 29 deletions .github/workflows/push-master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,58 +18,72 @@ jobs:

Linux:
name: ${{ matrix.dockerName }}
runs-on: ubuntu-22.04

runs-on: ${{ matrix.runner }}
strategy:
matrix:
linuxVersion: [ bullseye ]
dockerImage: [ x86_64, arm-32bit-armv6l, arm-64bit-aarch64 ]
include:
- dockerImage: x86_64
include:
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: bullseye
dockerName: Debian Bullseye (x86_64)
platform: linux
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: bookworm
dockerName: Debian Bookworm (x86_64)
platform: linux
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: jammy
dockerName: Ubuntu 22.04 LTS (x86_64)
platform: linux
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: noble
dockerName: Ubuntu 24.04 LTS (x86_64)
platform: linux
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: oracular
dockerName: Ubuntu 24.10 (x86_64)
platform: linux
- dockerImage: arm-32bit-armv6l
platform: linux
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: Fedora_41
dockerName: Fedora 41 (x86_64)
platform: linux
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: ArchLinux
dockerName: Arch Linux (x86_64)
platform: linux
- runner: ubuntu-24.04-arm
dockerImage: arm-32bit-armv6l-native
linuxVersion: bullseye
dockerName: Debian Bullseye (ARM 32-bit Raspberry Pi OS)
dockerName: Debian Bullseye (native ARM 32-bit Raspberry Pi OS)
platform: rpi
- dockerImage: arm-64bit-aarch64
- runner: ubuntu-24.04-arm
dockerImage: arm-64bit-aarch64-native
linuxVersion: bullseye
dockerName: Debian Bullseye (ARM 64-bit Raspberry Pi OS)
dockerName: Debian Bullseye (native ARM 64-bit Raspberry Pi OS)
platform: rpi
- dockerImage: arm-32bit-armv6l
- runner: ubuntu-24.04-arm
dockerImage: arm-32bit-armv6l-native
linuxVersion: bookworm
dockerName: Debian Bookworm (ARM 32-bit Raspberry Pi OS)
dockerName: Debian Bookworm (native ARM 32-bit Raspberry Pi OS)
platform: rpi
- dockerImage: arm-64bit-aarch64
- runner: ubuntu-24.04-arm
dockerImage: arm-64bit-aarch64-native
linuxVersion: bookworm
dockerName: Debian Bookworm (ARM 64-bit Raspberry Pi OS)
platform: rpi
- dockerImage: x86_64
linuxVersion: Fedora_41
dockerName: Fedora 41 (x86_64)
platform: linux
- dockerImage: x86_64
linuxVersion: ArchLinux
dockerName: Arch Linux (x86_64)
platform: linux
dockerName: Debian Bookworm (native ARM 64-bit Raspberry Pi OS)
platform: rpi
steps:
# start docker
- name: Wake-up docker
if: matrix.runner == 'ubuntu-24.04-arm'
run: |
sudo systemctl start docker
# checkout
- uses: actions/[email protected]
with:
Expand Down Expand Up @@ -326,7 +340,7 @@ jobs:

analyze:
name: Analyze (CodeQL)
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
if: ${{ vars.USE_CODEQL == 'true' && vars.USE_CODEQL || false }}

permissions:
Expand Down
32 changes: 23 additions & 9 deletions .github/workflows/upload-to-github-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,58 +15,72 @@ jobs:
######################################
Linux:
name: ${{ matrix.niceName }} ${{ matrix.linuxVersion }} (${{ matrix.arch }})
runs-on: ubuntu-22.04
runs-on: ${{ matrix.runner }}

strategy:
matrix:
niceName: [ Debian ]
linuxVersion: [ bullseye, bookworm ]
dockerImage: [ x86_64, arm-32bit-armv6l, arm-64bit-aarch64 ]
include:
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
dockerName: Debian (amd64)
arch: amd64
platform: linux
- dockerImage: arm-32bit-armv6l
- runner: ubuntu-24.04-arm
dockerImage: arm-32bit-armv6l-native
dockerName: Debian (armhf)
arch: armhf
platform: rpi
- dockerImage: arm-64bit-aarch64
- runner: ubuntu-24.04-arm
dockerImage: arm-64bit-aarch64-native
dockerName: Debian (arm64)
arch: arm64
platform: rpi
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: ArchLinux
dockerName: Arch Linux (x86_64)
arch: amd64
platform: linux
niceName: ""
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: jammy
dockerName: Ubuntu 22.04 LTS (x86_64)
arch: amd64
platform: linux
niceName: Ubuntu 22.04 LTS
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: noble
dockerName: Ubuntu 24.04 LTS (x86_64)
arch: amd64
platform: linux
niceName: Ubuntu 24.04 LTS
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: oracular
dockerName: Ubuntu 24.10 (x86_64)
arch: amd64
platform: linux
niceName: Ubuntu 24.10
- dockerImage: x86_64
- runner: ubuntu-24.04
dockerImage: x86_64
linuxVersion: Fedora_41
dockerName: Fedora 41 (x86_64)
arch: amd64
platform: linux
niceName: Fedora 41

steps:
# start docker
- name: Wake-up docker
if: matrix.runner == 'ubuntu-24.04-arm'
run: |
sudo systemctl start docker
# checkout
- uses: actions/[email protected]
with:
Expand Down

0 comments on commit 1fcfcae

Please sign in to comment.