Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
d38b3a7
tests: add patchbay netsim tests
Frando Mar 5, 2026
722f174
tests: improve patchbay test error reporting
Frando Mar 24, 2026
141cce5
improve patchbay test error reporting
Frando Mar 24, 2026
c5d5928
fixup timeouts
Frando Mar 24, 2026
ff384df
chore: bump patchbay
Frando Mar 24, 2026
42c6001
update patchbay, enable parallelism, export metrics
Frando Mar 26, 2026
26f4b83
split out degradation tests into individual tests
Frando Mar 26, 2026
e9b2dcb
fix: improve CI workflow
Frando Mar 30, 2026
ef8a3f4
fix: use nextest profiles instead of cfg directive
Frando Mar 30, 2026
1849bbf
address review: remove obsolete helper fns
Frando Mar 30, 2026
44a7ac5
fixup after rebase
Frando Mar 30, 2026
ea4aa51
chore: fmt
Frando Mar 30, 2026
bfd933f
remove netreport test draft (was not used yet), will be added back later
Frando Mar 30, 2026
4778d37
docs fixes
Frando Mar 30, 2026
400ecf2
fixup workflow
Frando Mar 30, 2026
17cf5df
fix: ignore patchbay tests in cross ci
Frando Mar 30, 2026
9153977
fix: reduce concurrency
Frando Mar 30, 2026
6be3c7f
chore: update to patchbay 0.2.0
Frando Mar 30, 2026
3b8a11a
refactor: remove macro for degrade ladder
Frando Mar 30, 2026
d8c8fc4
refactor: use enum for server/client side
Frando Mar 30, 2026
9f7f09c
fix: use patchbay with fix for bidi link conditioning
Frando Mar 31, 2026
b8f2082
ignore extreme and absurd degradations for now
Frando Mar 31, 2026
82f9d7a
fix: make test less flaky
Frando Mar 31, 2026
8c243d8
deps: bump patchbay to 0.3
Frando Mar 31, 2026
044ed4a
chore: remove patchbay publishing for now
Frando Mar 31, 2026
7dbb85b
refactor: use server/client fns for pair constructions
Frando Apr 1, 2026
3ebee11
refactor: remove some patchbay tests
Frando Apr 1, 2026
207fa3f
refactor: improve and harden patchbay tests
Frando Apr 1, 2026
4405898
fix: incongruency btw log and test
Frando Apr 1, 2026
a29eb7f
improve docs
Frando Apr 1, 2026
91cfc40
fixup workflow
Frando Apr 1, 2026
14ebbfe
fix: use makefile in ci
Frando Apr 1, 2026
83a8d2a
fixup nits
Frando Apr 1, 2026
09c545f
chore: change nextest version
Frando Apr 1, 2026
8d91df1
fix: final cleanup, better docs, better errors
Frando Apr 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion .config/nextest.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[test-groups]
run-in-isolation = { max-threads = 32 }
run-in-isolation = { max-threads = 32 }
# these are tests that must not run with other tests concurrently. All tests in
# this group can take up at most 32 threads among them, but each one requiring
# 16 threads also. The effect should be that tests run isolated.
Expand All @@ -15,4 +15,12 @@ test-group = 'run-in-isolation'
threads-required = 32

[profile.default]
default-filter = 'not binary(patchbay)'
slow-timeout = { period = "10s", terminate-after = 3 }

[profile.patchbay]
fail-fast = false
retries = 1
test-threads = 4
default-filter = 'binary(patchbay)'
slow-timeout = { period = "30s", terminate-after = 4 }
4 changes: 4 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ jobs:
if: "github.event_name != 'pull_request' || ! contains(github.event.pull_request.labels.*.name, 'flaky-test')"
timeout-minutes: 30
runs-on: [self-hosted, linux, X64]
env:
RUSTFLAGS: "-Dwarnings --cfg skip_patchbay"
strategy:
fail-fast: false
matrix:
Expand Down Expand Up @@ -135,6 +137,8 @@ jobs:
matrix:
target:
- i686-unknown-linux-gnu
env:
RUSTFLAGS: "-Dwarnings --cfg skip_patchbay"
steps:
- name: Checkout
uses: actions/checkout@v6
Expand Down
56 changes: 56 additions & 0 deletions .github/workflows/patchbay.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Patchbay Tests

on:
pull_request:
push:
branches:
- main

concurrency:
group: patchbay-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
RUST_BACKTRACE: 1
SCCACHE_CACHE_SIZE: "10G"
IROH_FORCE_STAGING_RELAYS: "1"
NEXTEST_VERSION: "0.9.80"

jobs:
patchbay_tests:
name: Patchbay Tests
timeout-minutes: 15
runs-on: [self-hosted, linux, X64]
env:
RUSTC_WRAPPER: "sccache"
steps:
- name: Enable unprivileged user namespaces
run: sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
continue-on-error: true

- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- name: Install cargo-make and cargo-nextest
uses: taiki-e/install-action@v2
with:
tool: nextest@${{ env.NEXTEST_VERSION }},cargo-make

- name: Build patchbay tests
run: cargo make patchbay --no-run

- name: Run patchbay tests
id: tests
run: cargo make patchbay
env:
RUST_LOG: ${{ runner.debug && 'trace' || 'debug' }}
PATCHBAY_LOG: trace

- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: patchbay-testdir-${{ github.sha }}
path: target/testdir-current/
retention-days: 7
if-no-files-found: ignore
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/target
/logs
iroh.config.toml
/.patchbay
Loading
Loading