ci: fix Linux runner test failures (shallow clone, git identity, node-pty prebuild)

- checkout with fetch-depth: 0: the git log paging test needs the full
  repository history (default shallow clone yields one commit)
- configure a global git identity on the runner: src/git.ts deliberately
  never sets one and revert/cherry-pick rely on ambient config
- tests/unit.spec.ts: node-pty@1.1.0 ships a prebuilt spawn-helper only for
  darwin/win32; on linux node-gyp compiles it into build/Release. Align the
  assertion with ensureSpawnHelper's candidate list instead of hardcoding
  the prebuilds/ path (the Linux test run was red for this reason)
This commit is contained in:
Menghuan1918
2026-08-14 16:52:57 +08:00
parent 20bb60dd03
commit c8fc6c7cbf
2 changed files with 21 additions and 5 deletions
+10
View File
@@ -11,6 +11,9 @@ jobs:
timeout-minutes: 20
steps:
- uses: actions/checkout@v4
with:
# Tests run git log against this repository and need the full history.
fetch-depth: 0
- uses: pnpm/action-setup@v4
with:
version: 11
@@ -18,6 +21,13 @@ jobs:
with:
node-version: 22
cache: pnpm
# The plugin's git revert/cherry-pick spawn git without setting an
# identity (deliberate, see tests/smoke.spec.ts) and rely on ambient
# config; the runner has none by default.
- name: Configure git identity for tests
run: |
git config --global user.name "dsh-better-sidebar-ci"
git config --global user.email "ci@dsh.invalid"
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Typecheck