Skip to content

Base

Base #69

Workflow file for this run

name: Base
permissions:
contents: read
on:
# pull_request:
push:
# branches:
# - main
# - dev
tags:
- 'base-[0-9]+-[0-9]+-[0-9]+'
schedule:
- cron: '0 2 1 * *'
workflow_dispatch:
defaults:
run:
shell: bash
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
jobs:
docker:
strategy:
fail-fast: false
matrix:
include:
# Linux (musl)
- target: aarch64-unknown-linux-musl
- target: arm-unknown-linux-musleabi
- target: arm-unknown-linux-musleabihf
- target: armv5te-unknown-linux-musleabi
- target: armv7-unknown-linux-musleabi
- target: armv7-unknown-linux-musleabihf
- target: hexagon-unknown-linux-musl # tier3
- target: i586-unknown-linux-musl
- target: i686-unknown-linux-musl
- target: mips-unknown-linux-musl # tier3
- target: mips64-unknown-linux-muslabi64 # tier3
- target: mips64el-unknown-linux-muslabi64 # tier3
- target: mipsel-unknown-linux-musl # tier3
- target: powerpc-unknown-linux-musl # tier3
- target: powerpc64-unknown-linux-musl # tier3
- target: powerpc64le-unknown-linux-musl # tier3
# - target: riscv32gc-unknown-linux-musl # tier3, musl-cross-make doesn't support this target
- target: riscv64gc-unknown-linux-musl # tier3
- target: s390x-unknown-linux-musl # tier3
- target: thumbv7neon-unknown-linux-musleabihf # tier3
- target: x86_64-unknown-linux-musl
# NetBSD
- target: aarch64-unknown-netbsd # tier3
- target: armv6-unknown-netbsd-eabihf # tier3
- target: armv7-unknown-netbsd-eabihf # tier3
- target: i686-unknown-netbsd # tier3
- target: powerpc-unknown-netbsd # tier3
- target: sparc64-unknown-netbsd # tier3
- target: x86_64-unknown-netbsd
# Solaris
- target: sparcv9-sun-solaris
- target: x86_64-pc-solaris
# illumos
- target: x86_64-unknown-illumos
# Windows (MinGW)
# - target: i686-pc-windows-gnu # TODO
- target: x86_64-pc-windows-gnu
- target: x86_64-pc-windows-gnu
host: aarch64
# Misc
- target: various
- target: various
host: aarch64
runs-on: ubuntu-latest
timeout-minutes: 120
permissions:
contents: read
packages: write
steps:
- uses: taiki-e/github-actions/checkout@main
- uses: taiki-e/github-actions/free-device-space@main
- uses: taiki-e/github-actions/setup-docker@main
- run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u "${{ github.actor }}" --password-stdin
echo "PUSH_TO_GHCR=1" >>"${GITHUB_ENV}"
if: github.repository_owner == 'taiki-e' && (github.event_name == 'push' && (github.ref == 'refs/heads/dev' || startsWith(github.ref, 'refs/tags/')) || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule')
- run: docker/base/build-docker.sh "${{ matrix.target }}"
env:
HOST_ARCH: ${{ matrix.host }}