Files
radicle-explorer/.ryph/setup.yml
T
Rūdolfs Ošiņš 33182fd942 Run desktop CI from the repo root
GitHub only reads workflows from the root `.github/` and ryph only reads
the root `.ryph/`. The desktop workflows now run in `desktop/`, and the
ryph setup installs and warms both projects.
2026-10-13 16:53:36 +02:00

33 lines
2.2 KiB
YAML

steps:
# Explorer and radicle-httpd, at the repository root.
- name: install npm dependencies
run: npm install --prefer-offline
- name: install Playwright Chromium (explorer e2e)
run: npx playwright install chromium
- name: install the pinned Radicle binaries for http-client and e2e tests
run: ./scripts/install-binaries
# The cargo warm steps only fill the image's target/ directories. At run
# time cargo builds what a command needs when it runs, so a run that works
# on another workspace member doesn't wait for two Rust workspaces.
- name: warm clippy (check-rust lint, image builds only)
run: '[ "$RYPH_SETUP_PHASE" != image ] || RUSTFLAGS="-D warnings" cargo clippy --workspace --all-features --tests --locked'
- name: warm the Rust test build (check-rust test, image builds only)
run: '[ "$RYPH_SETUP_PHASE" != image ] || cargo test --workspace --all-features --no-run --locked'
# desktop/ is its own npm package and Cargo workspace.
- name: install desktop npm dependencies
run: cd desktop && npm install --prefer-offline
- name: install Playwright WebKit (desktop e2e)
run: cd desktop && npx playwright install webkit
- name: install the pinned Radicle binaries for desktop e2e tests
run: desktop/scripts/install-binaries
- name: warm desktop clippy (desktop/scripts/check-rs, image builds only)
run: 'cd desktop && mkdir -p build && { [ "$RYPH_SETUP_PHASE" != image ] || cargo clippy --workspace --all-targets --locked; }'
- name: warm desktop cargo test (desktop/scripts/check-rs, image builds only)
run: 'cd desktop && { [ "$RYPH_SETUP_PHASE" != image ] || cargo test --workspace --no-run --locked; }'
- name: warm the desktop e2e backend (desktop/tests/support/globalSetup.ts, image builds only)
run: 'cd desktop && { [ "$RYPH_SETUP_PHASE" != image ] || { cargo build --manifest-path ./crates/test-http-api/Cargo.toml --locked && cargo build -p radicle-job --bin rad-job --locked; }; }'
# rustc's incremental cache only speeds up rebuilding this repo's own
# crates after an edit, and it is gigabytes. Image builds only.
- name: drop the incremental caches (image builds only)
run: '[ "$RYPH_SETUP_PHASE" != image ] || rm -rf target/debug/incremental desktop/target/debug/incremental'