summaryrefslogtreecommitdiffhomepage
path: root/.github/workflows
diff options
context:
space:
mode:
authorKit Langton <[email protected]>2026-04-03 12:12:01 -0400
committerGitHub <[email protected]>2026-04-03 16:12:01 +0000
commitc72642dd35299b9bbf910360191690212e977b56 (patch)
treedd71faa70074d5e53bdb15a0d191bb3ebc5a3d85 /.github/workflows
parentf2d4ced8ea527dd6518e87354b886204a2819cab (diff)
downloadopencode-c72642dd35299b9bbf910360191690212e977b56.tar.gz
opencode-c72642dd35299b9bbf910360191690212e977b56.zip
test(ci): publish unit reports in actions (#20547)
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/test.yml34
1 files changed, 30 insertions, 4 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 803093fc5..119d652ae 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -15,6 +15,7 @@ concurrency:
permissions:
contents: read
+ checks: write
jobs:
unit:
@@ -45,14 +46,39 @@ jobs:
git config --global user.email "[email protected]"
git config --global user.name "opencode"
+ - name: Cache Turbo
+ uses: actions/cache@v4
+ with:
+ path: node_modules/.cache/turbo
+ key: turbo-${{ runner.os }}-${{ hashFiles('turbo.json', '**/package.json') }}-${{ github.sha }}
+ restore-keys: |
+ turbo-${{ runner.os }}-${{ hashFiles('turbo.json', '**/package.json') }}-
+ turbo-${{ runner.os }}-
+
- name: Run unit tests
- run: bun turbo test
+ run: bun turbo test:ci
env:
- # Bun 1.3.11 intermittently crashes on Windows during test teardown
- # inside the native @parcel/watcher binding. Unit CI does not rely on
- # the live watcher backend there, so disable it for that platform.
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER: ${{ runner.os == 'Windows' && 'true' || 'false' }}
+ - name: Publish unit reports
+ if: always()
+ uses: mikepenz/action-junit-report@v6
+ with:
+ report_paths: packages/*/.artifacts/unit/junit.xml
+ check_name: "unit results (${{ matrix.settings.name }})"
+ detailed_summary: true
+ include_time_in_summary: true
+ fail_on_failure: false
+
+ - name: Upload unit artifacts
+ if: always()
+ uses: actions/upload-artifact@v4
+ with:
+ name: unit-${{ matrix.settings.name }}-${{ github.run_attempt }}
+ if-no-files-found: ignore
+ retention-days: 7
+ path: packages/*/.artifacts/unit/junit.xml
+
e2e:
name: e2e (${{ matrix.settings.name }})
strategy: