name: Matrix
on: push
jobs:
node-version:
strategy:
matrix:
os: [macos-latest,ubuntu-latest,windows-latest] #run three times here
node-version: [6,8,10] #runs three times here
#we can create some arbitrary array and use that context also here
max-parallel: 2
fail-fast: true #if false, above 3 jobs will be independent, total 2 matrix with 3 values each so 3x3=9 jobs
runs-on: ${{matrix.os}}
steps:
- name: Log node node version
run: node -v
- uses: actions/setup-node@v1
with:
node-version: ${{matrix.node_version}}
- name: Log node node version
run: node -v
To exclude some specific parts above.
include will add extra values to existing configuration, it won't add a new iteration.
name: Matrix
on: push
jobs:
node-version:
strategy:
matrix:
os: [macos-latest,ubuntu-latest,windows-latest] #run three times here
node-version: [6,8,10]
include:
- os: ubuntu-latest
node-version: 8
is_ubuntu_8: "true"
exclude:
- os: ubuntu-latest
node-version: 6
- os: macos-latest
node-version: 8
max-parallel: 2
fail-fast: true #if false, above 3 jobs will be independent, total 2 matrix with 3 values each so 3x3=9 jobs
runs-on: ${{matrix.os}}
env:
IS_UBUNTU_8: ${{matrix.is_ubuntu_8}}
steps:
- name: Log node node version
run: node -v
- uses: actions/setup-node@v1
with:
node-version: ${{matrix.node_version}}
- name: Log node node version
run: |
node -v
echo $IS_UBUNTU_8
No comments:
Post a Comment