name: Test Gitea Actions support Matrix? on: push jobs: build: strategy: matrix: # This will let the build run with all combinations of the following variables # In this case there can be up to 6 builds (3 windows runner builds and 3 ubuntu runner builds) # Keys can be self defined (except: include & exclude) node-version: [12, 14, 16] supported-os: [ubuntu-latest, windows-latest] # The following block will ad a 7th using node version 18 with ubuntu (which is not in the above matrix by default) # This way there would be no Windows Node 18 build for example include: - node-version: 18 supported-os: ubuntu-latest # Like include it is also possible to exclude combinations. exclude: - node-version: 12 supported-os: windows-latest - node-version: 14 supported-os: windows-latest - node-version: 16 supported-os: windows-latest # Uses the defined supported-os variable from above depending on which of the 6 builds the runner gets runs-on: ${{ matrix.supported-os }} steps: - name: Get Code uses: actions/checkout@v3 - name: Install NodeJS uses: actions/setup-node@v3 with: # Uses the defined node-version variable from above depending on which of the 6 builds the runner gets node-version: ${{ matrix.node-version }} - name: Install Dependencies run: npm ci - name: Build run: npm run build