refactor: rename two-stem complement output to backing across CLI, WASM, and web app
#262
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| concurrency: | |
| group: ci-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 | |
| env: | |
| # Limit model export so it does not saturate the CI runner. | |
| # https://docs.pytorch.org/docs/stable/threading_environment_variables.html | |
| OMP_NUM_THREADS: 2 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: "lts/*" | |
| - run: corepack enable | |
| - uses: astral-sh/setup-uv@v8.3.2 | |
| with: | |
| enable-cache: true | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Cache model export inputs | |
| uses: actions/cache@v6.1.0 | |
| with: | |
| path: | | |
| ~/.cache/torch/hub/checkpoints | |
| data/onnx | |
| key: ${{ runner.os }}-htdemucs-${{ hashFiles('uv.lock', 'tools/model-export/build_models.py', 'tools/model-export/export_onnx.py') }} | |
| - run: pnpm install --frozen-lockfile | |
| - run: pnpm build-model htdemucs | |
| - run: | | |
| pnpm verify-parity \ | |
| --onnx data/onnx/htdemucs.onnx \ | |
| --stripped-onnx data/onnx-lean/htdemucs.onnx \ | |
| --model htdemucs | |
| - run: | | |
| pnpm cli-separate \ | |
| --name htdemucs \ | |
| --two-stems bass \ | |
| --two-stems-mix minus \ | |
| fixtures/sine-10s.wav data/ci-output/native | |
| test -s data/ci-output/native/bass.wav | |
| test -s data/ci-output/native/backing.wav | |
| - run: pnpm build-wasm | |
| - run: | | |
| pnpm wasm-separate \ | |
| --models data/onnx-lean \ | |
| --name htdemucs \ | |
| --two-stems bass \ | |
| --two-stems-mix minus \ | |
| fixtures/sine-10s.wav data/ci-output/wasm | |
| uv run --no-sync tools/compare-wav.py \ | |
| data/ci-output/native data/ci-output/wasm | |
| - run: pnpm lint-check | |
| - run: pnpm -C packages/app exec playwright install chromium --with-deps --no-shell | |
| - run: pnpm test-e2e |