Skip to content

Commit 461f6b5

Browse files
authored
Seperate os names from the actual runner (#62)
1 parent 48b3c00 commit 461f6b5

File tree

1 file changed

+32
-19
lines changed

1 file changed

+32
-19
lines changed

.github/workflows/build.yml

Lines changed: 32 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,61 +4,74 @@ on: [push, pull_request]
44

55
jobs:
66
build:
7-
runs-on: ${{ matrix.os }}
7+
runs-on: ${{ matrix.os.runner }}
88
strategy:
99
fail-fast: false
1010
matrix:
11-
os: [ubuntu-20.04, macos-latest, windows-latest]
11+
os: [
12+
{
13+
name: linux,
14+
runner: ubuntu-20.04
15+
},
16+
{
17+
name: macos,
18+
runner: macos-latest
19+
},
20+
{
21+
name: windows,
22+
runner: windows-latest
23+
}
24+
]
1225
ido: [5.3, 7.1]
1326

14-
name: Recompiling ido ${{ matrix.ido }} for ${{ matrix.os }}
27+
name: Recompiling ido ${{ matrix.ido }} for ${{ matrix.os.name }}
1528
steps:
1629
- uses: actions/checkout@v4
1730
with:
1831
fetch-depth: 0
1932

2033
# Ubuntu
21-
- name: Install dependencies (Ubuntu)
34+
- name: Install dependencies (Linux)
2235
shell: bash
23-
if: matrix.os == 'ubuntu-20.04'
36+
if: matrix.os.name == 'linux'
2437
run: |
2538
sudo apt-get update
2639
sudo apt-get install -y build-essential
2740
28-
- name: Build recomp binary (Ubuntu)
41+
- name: Build recomp binary (Linux)
2942
shell: bash
30-
if: matrix.os == 'ubuntu-20.04'
43+
if: matrix.os.name == 'linux'
3144
run: |
3245
make -j $(nproc) RELEASE=1 setup
3346
34-
- name: Run the build script (Ubuntu)
47+
- name: Run the build script (Linux)
3548
shell: bash
36-
if: matrix.os == 'ubuntu-20.04'
49+
if: matrix.os.name == 'linux'
3750
run: |
3851
make -j $(nproc) RELEASE=1 VERSION=${{ matrix.ido }}
3952
4053
# MacOS
4154
- name: Install dependencies (MacOS)
4255
shell: bash
43-
if: matrix.os == 'macos-latest'
56+
if: matrix.os.name == 'macos'
4457
run: |
4558
brew install make
4659
4760
- name: Build recomp binary (MacOS)
4861
shell: bash
49-
if: matrix.os == 'macos-latest'
62+
if: matrix.os.name == 'macos'
5063
run: |
5164
make -j $(nproc) RELEASE=1 setup
5265
- name: Run the build script (MacOS)
5366
shell: bash
54-
if: matrix.os == 'macos-latest'
67+
if: matrix.os.name == 'macos'
5568
run: |
5669
make -j $(nproc) RELEASE=1 VERSION=${{ matrix.ido }} TARGET=universal
5770
5871
# Windows
5972
- name: Install dependencies (Windows)
6073
uses: msys2/setup-msys2@v2
61-
if: matrix.os == 'windows-latest'
74+
if: matrix.os.name == 'windows'
6275
with:
6376
install: |-
6477
gcc
@@ -67,13 +80,13 @@ jobs:
6780
6881
- name: Build recomp binary (Windows)
6982
shell: msys2 {0}
70-
if: matrix.os == 'windows-latest'
83+
if: matrix.os.name == 'windows'
7184
run: |-
7285
make --jobs RELEASE=1 setup
7386
7487
- name: Run the build script (Windows)
7588
shell: cmd
76-
if: matrix.os == 'windows-latest'
89+
if: matrix.os.name == 'windows'
7790
run: |-
7891
set MSYSTEM=MSYS
7992
msys2 -c 'make --jobs RELEASE=1 VERSION=${{ matrix.ido }}'
@@ -83,18 +96,18 @@ jobs:
8396
shell: bash
8497
run: |
8598
cd build/${{ matrix.ido }}/out
86-
tar -czvf ../../../ido-${{ matrix.ido }}-recomp-${{ matrix.os }}.tar.gz *
99+
tar -czvf ../../../ido-${{ matrix.ido }}-recomp-${{ matrix.os.name }}.tar.gz *
87100
88101
- name: Upload archive
89102
uses: actions/upload-artifact@v3
90103
with:
91-
name: ido-${{ matrix.ido }}-recomp-${{ matrix.os }}
104+
name: ido-${{ matrix.ido }}-recomp-${{ matrix.os.name }}
92105
path: |
93-
ido-${{ matrix.ido }}-recomp-${{ matrix.os }}.tar.gz
106+
ido-${{ matrix.ido }}-recomp-${{ matrix.os.name }}.tar.gz
94107
95108
- name: Publish release
96109
uses: softprops/action-gh-release@v1
97110
if: startsWith(github.ref, 'refs/tags/')
98111
with:
99112
files: |
100-
ido-${{ matrix.ido }}-recomp-${{ matrix.os }}.tar.gz
113+
ido-${{ matrix.ido }}-recomp-${{ matrix.os.name }}.tar.gz

0 commit comments

Comments
 (0)