Skip to content

Linux System Roots

Linux System Roots #6

name: Linux System Roots
on: workflow_dispatch
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- arch: amd64
buildx-arch: linux/amd64
- arch: i386
buildx-arch: linux/386
- arch: arm32v7
buildx-arch: linux/arm/v7
- arch: arm64v8
buildx-arch: linux/arm/v8
name: linux-${{ matrix.arch }}
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push to GitHub Container Registry
env:
IMAGE_ARCH: ${{ matrix.arch }}
BUILDX_ARCH: ${{ matrix.buildx-arch }}
REPO: ${{ github.repository_owner }}/tmbasic-linux-sysroot
run: |
set -euxo pipefail
export TIMESTAMP=$(date -u "+%Y%m%d%H%M%S")
export IMAGE_TAG=${{ matrix.arch }}-$TIMESTAMP
export IMAGE_NAME=ghcr.io/${{ github.repository_owner }}/tmbasic-linux-sysroot:$IMAGE_TAG
cd build/sysroots && ./build.sh
echo "Finished building container: $IMAGE_NAME"