Skip to content

Workflow file for this run

# TODO: https://stackoverflow.com/questions/59180385/using-an-array-of-values-to-repeat-a-step-in-github-actions-workflow
name: environment and tools
on: [push]
jobs:
docker-base:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: |
cat <<'EOF'
${{ toJSON(github) }}
EOF
- uses: ./.github/actions/task
with:
name: "docker image: base"
docker:
needs: docker-base
strategy:
fail-fast: false
matrix:
image:
- build
- build-tools
- test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: "docker image: ${{ matrix.image }}"
msys-base:
runs-on: ubuntu-latest
needs: docker-base
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: "msys2 image: base x86_64"
msys:
strategy:
fail-fast: false
matrix:
image:
- build
- test
runs-on: windows-latest
needs: msys-base
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: "msys2 image: ${{ matrix.image }} x86_64"
git:
strategy:
fail-fast: false
matrix:
version:
- 1.8.5
- 2.7.4
- 2.47.1
- 2.47.1.windows.1 windows x86_64
runs-on: ubuntu-latest
needs: docker
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: git v${{ matrix.version }}
mercurial:
strategy:
fail-fast: false
matrix:
runner: [ubuntu-latest]
version:
- 1.9.3
- 2.5.4
- 3.4.2
- 6.8
include:
- runner: windows-latest
version: 6.8 windows x86_64
- runner: macos-13
version: 6.8 macos x86_64
- runner: macos-14
version: 6.8 macos arm64
runs-on: ${{ matrix.runner }}
needs: [docker, msys]
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: hg v${{ matrix.version }}
git-cinnabar:
strategy:
fail-fast: false
matrix:
type:
- linux arm64
- linux x86_64
- linux x86_64 asan
- linux x86_64 coverage
- windows x86_64
runner: [ubuntu-latest]
include:
- type: macos x86_64
runner: macos-13
- type: macos arm64
runner: macos-14
runs-on: ${{ matrix.runner }}
needs: docker
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: build ${{ matrix.type }}
cram:
strategy:
fail-fast: false
matrix:
type:
- git-2.47.1 hg-6.8
- git-2.47.1 hg-6.8 asan
runner: [ubuntu-latest]
include:
- type: git-2.47.1 hg-6.8 macos x86_64
runner: macos-13
- type: git-2.47.1 hg-6.8 macos arm64
runner: macos-14
runs-on: ${{ matrix.runner }}
needs: [docker, git, mercurial, git-cinnabar]
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: cram w/ ${{ matrix.type }}
download:
strategy:
fail-fast: false
matrix:
include:
- type: linux x86_64
runner: ubuntu-latest
- type: macos x86_64
runner: macos-13
- type: macos arm64
runner: macos-14
- type: windows x86_64
runner: windows-latest
runs-on: ${{ matrix.runner }}
needs: [docker, git, git-cinnabar, msys]
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: download build ${{ matrix.type }}
hg-clone:
needs: [docker, mercurial]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/task
with:
name: hg clone w/ 6.8
env:
runs-on: ubuntu-latest
steps:
- shell: bash
run: |
cat<<'EOF'
${{ toJSON(github) }}
EOF