Skip to content

test(bdd): run Rust BDD against iggy-server-ng with VSR#3732

Merged
hubcio merged 3 commits into
masterfrom
feat/server-ng-bdd
Jul 23, 2026
Merged

test(bdd): run Rust BDD against iggy-server-ng with VSR#3732
hubcio merged 3 commits into
masterfrom
feat/server-ng-bdd

Conversation

@hubcio

@hubcio hubcio commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

BDD suites only exercised the legacy iggy-server, leaving
server-ng (its future replacement) without any BDD coverage.
Only the Rust SDK speaks the VSR wire protocol, so the lane
is Rust-only for now.

Add a --vsr flag to run-bdd-tests.sh backed by a compose
overlay that swaps in iggy-server-ng built with --features
vsr. server-ng takes no legacy boot flags, reads root
credentials from the environment, parses cluster.nodes[*].ip
as a strict IpAddr, binds cluster listeners to the roster IP,
and requires a tcp_replica consensus port; the overlay pins
static node IPs, points healthchecks at the roster address,
and supplies the replica ports. leader_redirection now runs
a real 2-node VSR cluster instead of the legacy --follower
mock.

The vsr feature forwards iggy_common/vsr on server-ng and
iggy/vsr on the bdd crate; rust-bdd cargo features are
parametrized via BDD_RUST_FEATURES so legacy and coverage
lanes stay unchanged. CI gains a bdd-rust-vsr task building
the vsr binaries.

BDD suites only exercised the legacy iggy-server, leaving
server-ng (its future replacement) without any BDD coverage.
Only the Rust SDK speaks the VSR wire protocol, so the lane
is Rust-only for now.

Add a --vsr flag to run-bdd-tests.sh backed by a compose
overlay that swaps in iggy-server-ng built with --features
vsr. server-ng takes no legacy boot flags, reads root
credentials from the environment, parses cluster.nodes[*].ip
as a strict IpAddr, binds cluster listeners to the roster IP,
and requires a tcp_replica consensus port; the overlay pins
static node IPs, points healthchecks at the roster address,
and supplies the replica ports. leader_redirection now runs
a real 2-node VSR cluster instead of the legacy --follower
mock.

The vsr feature forwards iggy_common/vsr on server-ng and
iggy/vsr on the bdd crate; rust-bdd cargo features are
parametrized via BDD_RUST_FEATURES so legacy and coverage
lanes stay unchanged. CI gains a bdd-rust-vsr task building
the vsr binaries.
@github-actions github-actions Bot added the S-waiting-on-review PR is waiting on a reviewer label Jul 22, 2026
@codecov

codecov Bot commented Jul 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 28.35%. Comparing base (ef6b8ce) to head (3c4e36e).

Additional details and impacted files
@@              Coverage Diff              @@
##             master    #3732       +/-   ##
=============================================
- Coverage     74.35%   28.35%   -46.01%     
  Complexity      950      950               
=============================================
  Files          1303     1301        -2     
  Lines        148712   129051    -19661     
  Branches     124223   104637    -19586     
=============================================
- Hits         110579    36592    -73987     
- Misses        34658    91367    +56709     
+ Partials       3475     1092     -2383     
Components Coverage Δ
Rust Core 17.26% <ø> (-57.32%) ⬇️
Java SDK 62.64% <ø> (ø)
C# SDK 71.14% <ø> (-1.13%) ⬇️
Python SDK 92.27% <ø> (ø)
PHP SDK 84.52% <ø> (ø)
Node SDK 92.83% <ø> (ø)
Go SDK 43.08% <ø> (ø)
see 729 files with indirect coverage changes
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@hubcio
hubcio merged commit 801b152 into master Jul 23, 2026
94 checks passed
@hubcio
hubcio deleted the feat/server-ng-bdd branch July 23, 2026 10:26
@github-actions github-actions Bot removed the S-waiting-on-review PR is waiting on a reviewer label Jul 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants