Skip to content

Commit

Permalink
github/workflows: Enable image builds on arm64
Browse files Browse the repository at this point in the history
Signed-off-by: Din Music <[email protected]>
  • Loading branch information
MusicDin committed Apr 19, 2024
1 parent 3ea900b commit 672c43e
Show file tree
Hide file tree
Showing 22 changed files with 251 additions and 82 deletions.
17 changes: 13 additions & 4 deletions .github/workflows/image-almalinux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build AlmaLinux Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
almalinux:
runs-on: ubuntu-latest
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -25,7 +29,12 @@ jobs:
- cloud
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
17 changes: 13 additions & 4 deletions .github/workflows/image-alt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build ALT Linux Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
alt:
runs-on: ubuntu-latest
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -26,7 +30,12 @@ jobs:
- cloud
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
18 changes: 14 additions & 4 deletions .github/workflows/image-amazonlinux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build AmazonLinux Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
amazonlinux:
runs-on: ubuntu-20.04
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-20.04' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -24,7 +28,13 @@ jobs:
- default
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
- {architecture: arm64, release: 2}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
16 changes: 12 additions & 4 deletions .github/workflows/image-archlinux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build ArchLinux Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
archlinux:
runs-on: ubuntu-latest
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -25,8 +29,12 @@ jobs:
- desktop-gnome
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
- {architecture: arm64, variant: cloud}
- {architecture: arm64, variant: desktop-gnome}
env:
Expand Down
17 changes: 13 additions & 4 deletions .github/workflows/image-busybox.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build BusyBox Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
busybox:
runs-on: ubuntu-latest
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -23,7 +27,12 @@ jobs:
- default
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
18 changes: 14 additions & 4 deletions .github/workflows/image-centos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build CentOS Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
centos:
runs-on: ubuntu-20.04
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-20.04' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -26,7 +30,13 @@ jobs:
- cloud
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
- {architecture: arm64, release: 7}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
17 changes: 13 additions & 4 deletions .github/workflows/image-debian.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build Debian Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
debian:
runs-on: ubuntu-latest
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -28,7 +32,12 @@ jobs:
- cloud
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
17 changes: 13 additions & 4 deletions .github/workflows/image-devuan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build Devuan Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
devuan:
runs-on: ubuntu-latest
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -26,7 +30,12 @@ jobs:
- cloud
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
17 changes: 13 additions & 4 deletions .github/workflows/image-fedora.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,22 @@ name: Build Fedora Images

on:
schedule:
# Run at 00:00 UTC daily.
- cron: '0 0 * * *'
- cron: '0 0 * * *' # Build amd64 (Daily at 00:00 UTC).
- cron: '0 0 * * 1' # Build arm64 (Weekly on Monday at 00:00 UTC).
workflow_dispatch:
inputs:
publish:
type: boolean
default: false
description: Publish built image
build-arm64:
type: boolean
default: false
description: Build arm64 images

jobs:
fedora:
runs-on: ubuntu-latest
runs-on: ${{ matrix.architecture == 'arm64' && 'Ubuntu_ARM64_4C_16G_01' || 'ubuntu-latest' }}
strategy:
fail-fast: false
matrix:
Expand All @@ -25,7 +29,12 @@ jobs:
- cloud
architecture:
- amd64
# - arm64
- arm64
build_arm64:
- ${{ inputs.build-arm64 == true || github.event.schedule == '0 0 * * 1' }}
exclude:
- {architecture: amd64, build_arm64: true}
- {architecture: arm64, build_arm64: false}
env:
type: "container"
distro: "${{ github.job }}"
Expand Down
Loading

0 comments on commit 672c43e

Please sign in to comment.