|
8 | 8 | schedule: |
9 | 9 | # Nightly at 3am UTC — catches flaky regressions on main |
10 | 10 | - cron: '0 3 * * *' |
| 11 | + workflow_dispatch: |
11 | 12 |
|
12 | 13 | env: |
13 | 14 | CARGO_TERM_COLOR: always |
@@ -148,6 +149,22 @@ jobs: |
148 | 149 | runs-on: ubuntu-latest |
149 | 150 | timeout-minutes: 15 |
150 | 151 |
|
| 152 | + services: |
| 153 | + postgres: |
| 154 | + image: postgres:16 |
| 155 | + env: |
| 156 | + POSTGRES_USER: testuser |
| 157 | + POSTGRES_PASSWORD: testpass |
| 158 | + POSTGRES_DB: testdb |
| 159 | + ports: |
| 160 | + - 5432:5432 |
| 161 | + options: >- |
| 162 | + --health-cmd "pg_isready -U testuser" |
| 163 | + --health-interval 5s |
| 164 | + --health-timeout 5s |
| 165 | + --health-retries 5 |
| 166 | + --tmpfs /var/lib/postgresql/data |
| 167 | +
|
151 | 168 | steps: |
152 | 169 | - uses: actions/checkout@v4 |
153 | 170 |
|
@@ -184,7 +201,15 @@ jobs: |
184 | 201 |
|
185 | 202 | - uses: dtolnay/rust-toolchain@stable |
186 | 203 |
|
| 204 | + - name: Cache wasm-tools |
| 205 | + id: wasm-tools-cache |
| 206 | + uses: actions/cache@v4 |
| 207 | + with: |
| 208 | + path: ~/.cargo/bin/wasm-tools |
| 209 | + key: wasm-tools-${{ runner.os }}-v1 |
| 210 | + |
187 | 211 | - name: Install wasm-tools |
| 212 | + if: steps.wasm-tools-cache.outputs.cache-hit != 'true' |
188 | 213 | run: cargo install wasm-tools |
189 | 214 |
|
190 | 215 | - name: Cache ComponentizeJS |
@@ -230,7 +255,15 @@ jobs: |
230 | 255 |
|
231 | 256 | - uses: dtolnay/rust-toolchain@stable |
232 | 257 |
|
| 258 | + - name: Cache wasm-tools |
| 259 | + id: wasm-tools-cache |
| 260 | + uses: actions/cache@v4 |
| 261 | + with: |
| 262 | + path: ~/.cargo/bin/wasm-tools |
| 263 | + key: wasm-tools-${{ runner.os }}-v1 |
| 264 | + |
233 | 265 | - name: Install wasm-tools |
| 266 | + if: steps.wasm-tools-cache.outputs.cache-hit != 'true' |
234 | 267 | run: cargo install wasm-tools |
235 | 268 |
|
236 | 269 | - name: Cache ComponentizeJS |
@@ -315,7 +348,15 @@ jobs: |
315 | 348 | with: |
316 | 349 | version: "v41.0.0" |
317 | 350 |
|
| 351 | + - name: Cache wasm-tools |
| 352 | + id: wasm-tools-cache |
| 353 | + uses: actions/cache@v4 |
| 354 | + with: |
| 355 | + path: ~/.cargo/bin/wasm-tools |
| 356 | + key: wasm-tools-${{ runner.os }}-v1 |
| 357 | + |
318 | 358 | - name: Install wasm-tools |
| 359 | + if: steps.wasm-tools-cache.outputs.cache-hit != 'true' |
319 | 360 | run: cargo install wasm-tools |
320 | 361 |
|
321 | 362 | - name: Cache ComponentizeJS |
@@ -377,6 +418,14 @@ jobs: |
377 | 418 | pattern: test-results-* |
378 | 419 | merge-multiple: true |
379 | 420 |
|
| 421 | + - name: Annotate trigger context |
| 422 | + run: | |
| 423 | + if [ "${{ github.event_name }}" = "schedule" ]; then |
| 424 | + echo "::notice::This run was triggered by the nightly schedule (cron). Failures may indicate flaky regressions." |
| 425 | + echo "> **Nightly scheduled run** — failures here may indicate flaky regressions on main." >> "$GITHUB_STEP_SUMMARY" |
| 426 | + echo "" >> "$GITHUB_STEP_SUMMARY" |
| 427 | + fi |
| 428 | +
|
380 | 429 | - name: Summary |
381 | 430 | run: | |
382 | 431 | echo "## Integration Test Results" >> "$GITHUB_STEP_SUMMARY" |
|
0 commit comments