This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: environment and tools | |
on: [push] | |
jobs: | |
decision: | |
runs-on: ubuntu-latest | |
outputs: | |
data: ${{ steps.decision.outputs.data }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/decision | |
id: decision | |
docker-base: | |
if: ${{ github.sha == '1' }} | |
needs: decision | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['docker-base'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
docker: | |
if: ${{ github.sha == '1' }} | |
needs: [decision, docker-base] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['docker'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
msys2-base: | |
if: ${{ github.sha == '1' }} | |
needs: [decision, docker-base] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['msys2-base'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
msys2: | |
if: ${{ github.sha == '1' }} | |
needs: [decision, msys2-base] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['msys2'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
git: | |
if: ${{ github.sha == '1' }} | |
needs: [decision, docker] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['git'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
mercurial: | |
if: ${{ github.sha == '1' }} | |
needs: [decision, docker, msys2] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['mercurial'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
git-cinnabar: | |
if: ${{ !cancelled() }} | |
needs: [decision, docker] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['git-cinnabar'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
cram: | |
if: ${{ !cancelled() }} | |
needs: [decision, docker, git, mercurial, git-cinnabar] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['cram'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
download: | |
if: ${{ !cancelled() }} | |
needs: [decision, docker, git, git-cinnabar, msys2] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['download'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
hg-clone: | |
if: ${{ github.sha == '1' }} | |
needs: [decision, docker, mercurial] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['hg-clone'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
clone: | |
if: ${{ !cancelled() }} | |
needs: [decision, git, git-cinnabar, hg-clone] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['clone'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
graft-test: | |
if: ${{ !cancelled() }} | |
needs: [decision, docker, git, git-cinnabar, mercurial, clone, hg-clone] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['graft-test'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
test: | |
if: ${{ !cancelled() }} | |
needs: [decision, docker, git, git-cinnabar, mercurial, clone, hg-clone] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: ${{ fromJSON(needs.decision.outputs.data)['test'] }} | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/task | |
with: | |
name: "${{ matrix.task }}" | |
env: | |
runs-on: ubuntu-latest | |
steps: | |
- shell: bash | |
run: | | |
env | |
cat<<'EOF' | |
${{ toJSON(github) }} | |
EOF |