Commit d108b859c19a82f741fc01e161b406e607556649
1 parent
c439cb3f
CI: optimize builds to run short jobs with less concurrency
Showing
1 changed file
with
18 additions
and
34 deletions
.github/workflows/main.yml
| @@ -104,35 +104,18 @@ jobs: | @@ -104,35 +104,18 @@ jobs: | ||
| 104 | with: | 104 | with: |
| 105 | name: distribution | 105 | name: distribution |
| 106 | path: distribution | 106 | path: distribution |
| 107 | - Linux32: | ||
| 108 | - runs-on: ubuntu-latest | ||
| 109 | - needs: Prebuild | ||
| 110 | - steps: | ||
| 111 | - - uses: actions/checkout@v3 | ||
| 112 | - - name: 'Linux 32-bit' | ||
| 113 | - run: build-scripts/build-linux32 | ||
| 114 | pikepdf: | 107 | pikepdf: |
| 108 | + strategy: | ||
| 109 | + fail-fast: false | ||
| 110 | + max-parallel: 1 | ||
| 111 | + matrix: | ||
| 112 | + future: ['', 'future'] | ||
| 115 | runs-on: ubuntu-latest | 113 | runs-on: ubuntu-latest |
| 116 | needs: Prebuild | 114 | needs: Prebuild |
| 117 | steps: | 115 | steps: |
| 118 | - uses: actions/checkout@v3 | 116 | - uses: actions/checkout@v3 |
| 119 | - name: 'pikepdf' | 117 | - name: 'pikepdf' |
| 120 | - run: build-scripts/test-pikepdf | ||
| 121 | - pikepdf-future: | ||
| 122 | - runs-on: ubuntu-latest | ||
| 123 | - # Run after pikepdf to save concurrent runners | ||
| 124 | - needs: pikepdf | ||
| 125 | - steps: | ||
| 126 | - - uses: actions/checkout@v3 | ||
| 127 | - - name: 'qpdf + pikepdf with FUTURE' | ||
| 128 | - run: build-scripts/test-pikepdf future | ||
| 129 | - Fuzzers: | ||
| 130 | - runs-on: ubuntu-latest | ||
| 131 | - needs: Prebuild | ||
| 132 | - steps: | ||
| 133 | - - uses: actions/checkout@v3 | ||
| 134 | - - name: 'Build Fuzzer' | ||
| 135 | - run: build-scripts/build-fuzzer | 118 | + run: build-scripts/test-pikepdf ${{ matrix.future }} |
| 136 | Sanitizers: | 119 | Sanitizers: |
| 137 | runs-on: ubuntu-latest | 120 | runs-on: ubuntu-latest |
| 138 | needs: Prebuild | 121 | needs: Prebuild |
| @@ -140,18 +123,19 @@ jobs: | @@ -140,18 +123,19 @@ jobs: | ||
| 140 | - uses: actions/checkout@v3 | 123 | - uses: actions/checkout@v3 |
| 141 | - name: 'Sanitizer Tests' | 124 | - name: 'Sanitizer Tests' |
| 142 | run: build-scripts/test-sanitizers | 125 | run: build-scripts/test-sanitizers |
| 143 | - UnsignedChar: | 126 | + QuickJobs: |
| 144 | runs-on: ubuntu-latest | 127 | runs-on: ubuntu-latest |
| 145 | needs: Prebuild | 128 | needs: Prebuild |
| 129 | + strategy: | ||
| 130 | + fail-fast: false | ||
| 131 | + max-parallel: 3 | ||
| 132 | + matrix: | ||
| 133 | + script: | ||
| 134 | + - build-fuzzer | ||
| 135 | + - build-linux32 | ||
| 136 | + - test-unsigned-char | ||
| 137 | + - test-c++-next | ||
| 146 | steps: | 138 | steps: |
| 147 | - uses: actions/checkout@v3 | 139 | - uses: actions/checkout@v3 |
| 148 | - - name: 'Unsigned Char Tests' | ||
| 149 | - run: build-scripts/test-unsigned-char | ||
| 150 | - CxxNext: | ||
| 151 | - runs-on: ubuntu-latest | ||
| 152 | - # Build after Fuzzers to save concurrent runners | ||
| 153 | - needs: Fuzzers | ||
| 154 | - steps: | ||
| 155 | - - uses: actions/checkout@v3 | ||
| 156 | - - name: 'Build with Next C++ standard' | ||
| 157 | - run: build-scripts/test-c++-next | 140 | + - name: ${{ matrix.script }} |
| 141 | + run: build-scripts/${{ matrix.script }} |