Skip to content

qi.bash

qi.bash #2

Workflow file for this run

name: qi.bash tests
on:
workflow_dispatch:
push:
paths:
- 'qi.bash'
permissions:
contents: write
jobs:
test:
runs-on: ${{ matrix.runs-on }}
strategy:
fail-fast: false
matrix:
runs-on: ["ubuntu-24.04"]
arch: ["amd64", "arm32v6", "arm32v7", "arm64v8", "i386", "riscv64"]
container_image: [
"ubuntu:latest",
"debian:latest",
"alpine:edge"
]
include:
- arch: amd64
platform: linux/amd64
- arch: arm32v6
platform: linux/arm/v6
- arch: arm32v7
platform: linux/arm/v7
- arch: arm64v8
platform: linux/arm64
- arch: i386
platform: linux/i386
- arch: riscv64
platform: linux/riscv64
exclude:
- arch: i386
container_image: ubuntu:latest
- arch: arm32v6
container_image: ubuntu:latest
- arch: riscv64
container_image: debian:latest
- arch: arm32v6
container_image: debian:latest
env:
container_name: "build"
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Create docker ${{ env.container_name }} ${{ matrix.container_image }} ${{ matrix.platform }} container
run: >
docker run --name ${container_name} -it -d
-w /root
-v ${{ github.workspace }}:/root
-e "GH_TOKEN=${{ github.token }}"
--platform ${{ matrix.platform }}
${{ matrix.arch }}/${{ matrix.container_image }}
- name: Run apk update
if: matrix.container_image == 'alpine:edge'
run: |
docker exec ${container_name} apk update
docker exec ${container_name} apk add bash github-cli
- name: Run apk update
if: matrix.container_image == 'alpine:edge'
run: docker exec ${container_name} gh --version
- name: Run alpine apk --print-arch
if: matrix.container_image == 'alpine:edge'
run: |
printf '\n%b\n' "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
docker exec ${container_name} apk --print-arch | tee -a $GITHUB_STEP_SUMMARY
printf '\n%b\n' "\`\`\`" >> $GITHUB_STEP_SUMMARY
- name: Run debian dpkg --print-architecture
if: matrix.container_image == 'debian:latest' || matrix.container_image == 'ubuntu:latest'
run: |
printf '\n%b\n' "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
docker exec ${container_name} dpkg --print-architecture | tee -a $GITHUB_STEP_SUMMARY
printf '\n%b\n' "\`\`\`" >> $GITHUB_STEP_SUMMARY
- name: Run apt-get update
if: matrix.container_image == 'debian:latest' || matrix.container_image == 'ubuntu:latest'
run: |
docker exec ${container_name} apt-get update
docker exec ${container_name} apt-get install -y wget
- run: |
chmod +x qi.bash
printf '\n%b\n' "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
docker exec ${container_name} bash -l qi.bash | sed 's/\x1b\[[0-9;]*m//g' | tee -a $GITHUB_STEP_SUMMARY
printf '\n%b\n' "\`\`\`" >> $GITHUB_STEP_SUMMARY