Skip to content

dev

dev #128

Workflow file for this run

name: Base
permissions:
contents: read
on:
# pull_request:
push:
branches:
- dev
tags:
- 'base-[0-9]+-[0-9]+-[0-9]+'
schedule:
- cron: '0 2 1 * *'
workflow_dispatch:
defaults:
run:
shell: bash --noprofile --norc -CeEuxo pipefail {0}
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
# Linux (musl)
- target: aarch64-unknown-linux-musl
- target: aarch64-unknown-linux-musl
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: arm-unknown-linux-musleabi
- target: arm-unknown-linux-musleabi
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: arm-unknown-linux-musleabihf
- target: arm-unknown-linux-musleabihf
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: armv5te-unknown-linux-musleabi
- target: armv5te-unknown-linux-musleabi
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: armv7-unknown-linux-musleabi
- target: armv7-unknown-linux-musleabi
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: armv7-unknown-linux-musleabihf
- target: armv7-unknown-linux-musleabihf
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: hexagon-unknown-linux-musl # tier3
- target: hexagon-unknown-linux-musl # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: i586-unknown-linux-musl
- target: i586-unknown-linux-musl
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: i686-unknown-linux-musl
- target: i686-unknown-linux-musl
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
# - target: loongarch64-unknown-linux-musl # musl-cross-make doesn't support this target
- target: mips-unknown-linux-musl # tier3
- target: mips-unknown-linux-musl # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: mips64-unknown-linux-muslabi64 # tier3
- target: mips64-unknown-linux-muslabi64 # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: mips64el-unknown-linux-muslabi64 # tier3
- target: mips64el-unknown-linux-muslabi64 # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: mipsel-unknown-linux-musl # tier3
- target: mipsel-unknown-linux-musl # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: powerpc-unknown-linux-musl # tier3
- target: powerpc-unknown-linux-musl # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: powerpc-unknown-linux-muslspe # tier3
- target: powerpc-unknown-linux-muslspe # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: powerpc64-unknown-linux-musl # tier3
- target: powerpc64-unknown-linux-musl # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: powerpc64le-unknown-linux-musl
- target: powerpc64le-unknown-linux-musl
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: riscv32gc-unknown-linux-musl # tier3
- target: riscv32gc-unknown-linux-musl # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: riscv64gc-unknown-linux-musl
- target: riscv64gc-unknown-linux-musl
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: s390x-unknown-linux-musl # tier3
- target: s390x-unknown-linux-musl # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: thumbv7neon-unknown-linux-musleabihf # tier3
- target: thumbv7neon-unknown-linux-musleabihf # tier3
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: x86_64-unknown-linux-musl
- target: x86_64-unknown-linux-musl
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
# NetBSD
- target: aarch64-unknown-netbsd # tier3
- target: aarch64_be-unknown-netbsd # tier3
- target: armv6-unknown-netbsd-eabihf # tier3
- target: armv7-unknown-netbsd-eabihf # tier3
- target: i586-unknown-netbsd # tier3
- target: i686-unknown-netbsd # tier3
- target: mipsel-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
- target: i686-pc-windows-gnu
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
- target: x86_64-pc-windows-gnu
- target: x86_64-pc-windows-gnu
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
# Misc
- target: various
- target: various
os: ubuntu-22.04-arm # TODO: update to 24.04 when https://github.com/rust-lang/rust/issues/135867 solved
runs-on: ${{ matrix.os || 'ubuntu-latest' }}
timeout-minutes: 120
permissions:
contents: read
packages: write # for push to ghcr
steps:
- uses: taiki-e/checkout-action@v1
- uses: taiki-e/github-actions/free-device-space@main
- uses: taiki-e/github-actions/setup-docker@main
with:
qemu: false
- run: |
docker login ghcr.io -u "${{ github.actor }}" --password-stdin <<<"${{ secrets.GITHUB_TOKEN }}"
printf 'PUSH_TO_GHCR=1\n' >>"${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 }}"