1111 type : boolean
1212 upload-output :
1313 type : boolean
14+ fast :
15+ type : boolean
1416
1517jobs :
18+ prepare-build-matrix :
19+ name : Prepare build matrix
20+ runs-on : ubuntu-latest
21+ steps :
22+ - name : Create build matrix
23+ id : create-build-matrix
24+ env :
25+ DEFAULT_MATRIX : '
26+ {
27+ "os": [
28+ "ubuntu-latest",
29+ "windows-latest"
30+ ]
31+ }
32+ '
33+ FAST_MATRIX : '
34+ {
35+ "os": [
36+ "ubuntu-latest"
37+ ]
38+ }
39+ '
40+ run : |
41+ if [ "${{ inputs.fast }}" = true ]; then
42+ echo "BUILD_MATRIX=$FAST_MATRIX" >> $GITHUB_OUTPUT
43+ else
44+ echo "BUILD_MATRIX=$DEFAULT_MATRIX" >> $GITHUB_OUTPUT
45+ fi
46+ outputs :
47+ build-matrix : ${{ steps.create-build-matrix.outputs.BUILD_MATRIX }}
48+
1649 build :
1750 name : Build project
1851 strategy :
19- matrix :
20- os :
21- - ubuntu-latest
22- - windows-latest
52+ matrix : ${{ fromJson(needs.prepare-build-matrix.outputs.build-matrix) }}
2353 runs-on : ${{ matrix.os }}
54+ needs : prepare-build-matrix
2455 steps :
2556 - name : Checkout repository
2657 uses : actions/checkout@v4.1.1
@@ -44,21 +75,21 @@ jobs:
4475 if : inputs.build-docs
4576 run : ./gradlew :OptiGUI:dokkaHtml -PjavaSyntax
4677 - name : Upload build output
47- if : inputs.build-project && inputs.upload-output && matrix.os == 'ubuntu-latest'
78+ if : inputs.build-project && inputs.upload-output
4879 uses : actions/upload-artifact@v4.3.1
4980 with :
5081 name : jars
5182 path : OptiGUI/build/libs/*.jar
5283 if-no-files-found : error
5384 - name : Upload documentation output
54- if : inputs.build-docs && inputs.upload-output && matrix.os == 'ubuntu-latest'
85+ if : inputs.build-docs && inputs.upload-output
5586 uses : actions/upload-artifact@v4.3.1
5687 with :
5788 name : kdoc
5889 path : OptiGUI/build/dokka/kotlinHtml
5990 if-no-files-found : error
6091 - name : Upload documentation output (Java syntax)
61- if : inputs.build-docs && inputs.upload-output && matrix.os == 'ubuntu-latest'
92+ if : inputs.build-docs && inputs.upload-output
6293 uses : actions/upload-artifact@v4.3.1
6394 with :
6495 name : javadoc
0 commit comments