|
94 | 94 |
|
95 | 95 | - name: Run type-aware ESLint |
96 | 96 | 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