Testing XSnow #440
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test_Build | |
# Controls when the workflow will run | |
on: | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
inputs: | |
name: | |
description: 'App Name, PR #, or zip URL' | |
required: true | |
default: '' | |
buster: | |
description: 'Build on PiOS Buster' | |
required: true | |
type: boolean | |
bullseye: | |
description: 'Build on PiOS Bullseye' | |
required: true | |
type: boolean | |
bookworm: | |
description: 'Build on PiOS Bookworm' | |
required: true | |
type: boolean | |
architecture: | |
type: choice | |
description: 'For Buster/Bullseye/Bookworm, test on 32bit, 64bit, or Both if available' | |
options: | |
- Both | |
- 64bit | |
- 32bit | |
l4t_bionic_64: | |
description: 'Build on Switchroot Ubuntu Bionic 64bit' | |
required: true | |
type: boolean | |
l4t_focal_64: | |
description: 'Build on Nvidia Jetpack 35.3.1 Focal 64bit' | |
required: true | |
type: boolean | |
l4t_jammy_64: | |
description: 'Build on Switchroot Ubuntu Jammy 64bit' | |
required: true | |
type: boolean | |
l4t_noble_64: | |
description: 'Build on Switchroot Ubuntu Noble 64bit' | |
required: true | |
type: boolean | |
noble_64: | |
description: 'Build on RPi Ubuntu Noble 64bit' | |
required: true | |
type: boolean | |
run-name: Testing ${{ inputs.name }} | |
# A workflow run is made up of one or more jobs that can run sequentially or in parallel | |
jobs: | |
buster-32bit: | |
# The type of runner that the job will run on | |
runs-on: ubuntu-latest | |
if: ${{ inputs.buster && ( inputs.architecture == '32bit' || inputs.architecture == 'Both' ) }} | |
# Steps represent a sequence of tasks that will be executed as part of the job | |
steps: | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
- uses: actions/checkout@v4 | |
- name: Test installing app on buster armhf | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
# this is a buster armhf image | |
base_image: https://downloads.raspberrypi.org/raspios_oldstable_armhf/images/raspios_oldstable_armhf-2023-05-03/2023-05-03-raspios-buster-armhf.img.xz | |
# bind mount the directory so any changes propogate to outside the chroot | |
bind_mount_repository: yes | |
# give the image more space | |
image_additional_mb: 5000 | |
# set CPUs to use | |
cpu: cortex-a7:cortex-a72 | |
# use custom /proc/cpuinfo | |
cpu_info: cpuinfo/raspberrypi_4b | |
# user runner name as default path | |
copy_repository_path: /home/runner/pi-apps | |
# export github env back to outside the chroot | |
export_github_env: yes | |
import_github_env: true | |
# set shell to bash | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
bullseye-32bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.bullseye && ( inputs.architecture == '32bit' || inputs.architecture == 'Both' ) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on bullseye armhf | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://downloads.raspberrypi.org/raspios_oldstable_armhf/images/raspios_oldstable_armhf-2024-03-12/2024-03-12-raspios-bullseye-armhf.img.xz | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
cpu: cortex-a7:cortex-a72 | |
cpu_info: cpuinfo/raspberrypi_4b | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
bookworm-32bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.bookworm && ( inputs.architecture == '32bit' || inputs.architecture == 'Both' ) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on bookworm armhf | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://downloads.raspberrypi.com/raspios_armhf/images/raspios_armhf-2024-03-15/2024-03-15-raspios-bookworm-armhf.img.xz | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
cpu: cortex-a7:cortex-a72 | |
cpu_info: cpuinfo/raspberrypi_4b | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
buster-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.buster && ( inputs.architecture == '64bit' || inputs.architecture == 'Both' ) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on buster arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://downloads.raspberrypi.org/raspios_arm64/images/raspios_arm64-2021-05-28/2021-05-07-raspios-buster-arm64.zip | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
cpu: cortex-a7:cortex-a72 | |
cpu_info: cpuinfo/raspberrypi_4b | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
bullseye-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.bullseye && ( inputs.architecture == '64bit' || inputs.architecture == 'Both' ) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on bullseye arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://downloads.raspberrypi.org/raspios_oldstable_arm64/images/raspios_oldstable_arm64-2024-03-12/2024-03-12-raspios-bullseye-arm64.img.xz | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
cpu: cortex-a7:cortex-a72 | |
cpu_info: cpuinfo/raspberrypi_4b | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
bookworm-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.bookworm && ( inputs.architecture == '64bit' || inputs.architecture == 'Both' ) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on bookworm arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://downloads.raspberrypi.com/raspios_arm64/images/raspios_arm64-2024-03-15/2024-03-15-raspios-bookworm-arm64.img.xz | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
cpu: cortex-a7:cortex-a72 | |
cpu_info: cpuinfo/raspberrypi_4b | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
l4t-bionic-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.l4t_bionic_64 }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on L4T bionic arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://download.switchroot.org/ubuntu-bionic/switchroot-ubuntu-5.1.1-2023-06-12.7z | |
# add special arguments for switchroot image format | |
bootpartition: | |
rootpartition: 1 | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
# use TX1 ARM CPU cores | |
cpu: cortex-a7:cortex-a57 | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
l4t-focal-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.l4t_focal_64 }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Clear up some disk space | |
run: | | |
# Workaround to provide additional free space for testing. | |
# https://github.com/actions/virtual-environments/issues/2840 | |
sudo rm -rf /usr/share/dotnet | |
sudo rm -rf /opt/ghc | |
sudo rm -rf "/usr/local/share/boost" | |
sudo rm -rf "$AGENT_TOOLSDIRECTORY" | |
- name: Test installing app on L4T focal arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://developer.nvidia.com/downloads/embedded/l4t/r35_release_v3.1/sd_card_b49/jp511-xnx-sd-card-image.zip | |
bootpartition: | |
rootpartition: 1 | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
enable_image_caching: no | |
cpu: cortex-a7:cortex-a72 | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
l4t-jammy-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.l4t_jammy_64 }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on L4T jammy arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://download.switchroot.org/ubuntu-jammy/theofficialgman-ubuntu-jammy-5.1.2-2024-03-29.7z | |
# add special arguments for switchroot image format | |
bootpartition: | |
rootpartition: 1 | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
# use TX1 ARM CPU cores | |
cpu: cortex-a7:cortex-a57 | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
l4t-noble-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.l4t_noble_64 }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on L4T noble arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://download.switchroot.org/ubuntu-noble/theofficialgman-kubuntu-noble-5.1.2-2024-05-20.7z | |
# add special arguments for switchroot image format | |
bootpartition: | |
rootpartition: 1 | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
# use TX1 ARM CPU cores | |
cpu: cortex-a7:cortex-a57 | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh | |
noble-64bit: | |
runs-on: ubuntu-latest | |
if: ${{ inputs.noble_64 }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Test installing app on noble arm64 | |
uses: theofficialgman/arm-runner-action@v12 | |
with: | |
base_image: https://cdimage.ubuntu.com/releases/24.04/release/ubuntu-24.04-preinstalled-desktop-arm64+raspi.img.xz | |
bind_mount_repository: yes | |
image_additional_mb: 5000 | |
cpu: cortex-a7:cortex-a72 | |
cpu_info: cpuinfo/raspberrypi_4b | |
copy_repository_path: /home/runner/pi-apps | |
export_github_env: yes | |
import_github_env: true | |
shell: /bin/bash | |
commands: | | |
export name="${{ inputs.name }}" | |
./.github/workflows/test_build_commands.sh |