Skip to content

Commit 6a9e046

Browse files
committed
CI: Manual SMB soak job in slow-checks workflow
Adds a `smb-soak` job gated on `workflow_dispatch` only — nightly is too aggressive for a 30-min soak, on-demand is the right cadence. Starts the Docker SMB core containers, runs `./scripts/soak-smb.sh 1800`, and stops the containers on exit. Skipped on the scheduled nightly run.
1 parent 3a9b58f commit 6a9e046

1 file changed

Lines changed: 48 additions & 0 deletions

File tree

.github/workflows/slow-checks.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,3 +94,51 @@ jobs:
9494

9595
- name: Run type-aware ESLint
9696
run: ./scripts/check/check --check desktop-svelte-eslint-typecheck --ci
97+
98+
# ===========================================
99+
# SMB soak test (manual trigger only)
100+
# ===========================================
101+
# 30-minute repeated SMB→Local copy loop that watches for accumulating bugs
102+
# (credit leaks, FD leaks, memory growth, per-iteration drift). Nightly is
103+
# too aggressive for a soak this long; `workflow_dispatch` runs it on demand
104+
# when we want the signal (pre-release, after SMB refactors, etc.).
105+
smb-soak:
106+
name: SMB soak (30 min)
107+
runs-on: ubuntu-latest
108+
if: github.event_name == 'workflow_dispatch'
109+
timeout-minutes: 50
110+
111+
steps:
112+
- name: Checkout code
113+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
114+
115+
- name: Install mise
116+
uses: jdx/mise-action@1648a7812b9aeae629881980618f079932869151 # v4
117+
118+
- name: Install tools with mise
119+
run: mise install
120+
121+
- name: Cache Cargo
122+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
123+
with:
124+
path: ~/.cargo/registry/cache
125+
key: ${{ runner.os }}-cargo-${{ hashFiles('Cargo.lock') }}
126+
restore-keys: |
127+
${{ runner.os }}-cargo-
128+
129+
- name: Install Tauri dependencies (Linux)
130+
run: |
131+
sudo apt-get update
132+
sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf libacl1-dev
133+
134+
- name: Start Docker SMB containers
135+
run: ./apps/desktop/test/smb-servers/start.sh core
136+
137+
- name: Run SMB soak (30 min)
138+
run: ./scripts/soak-smb.sh 1800
139+
env:
140+
RUST_LOG: info
141+
142+
- name: Stop Docker SMB containers
143+
if: always()
144+
run: ./apps/desktop/test/smb-servers/stop.sh || true

0 commit comments

Comments
 (0)