Skip to content

RING-54773: reusable RDMA actions for the ring RDMA CI - #172

Open
btdaad wants to merge 3 commits into
mainfrom
improvement/RING-54773-reusable-rdma-actions
Open

btdaad wants to merge 3 commits into
mainfrom
improvement/RING-54773-reusable-rdma-actions

Conversation

@btdaad

@btdaad btdaad commented Sep 21, 2026

Copy link
Copy Markdown

JIRA: RING-54773

What
Two composite actions, setup-rdma-runner and start-miniring, for the RDMA CI in scality/ring. Each ships with a test workflow of its own.

Why
rdma-tests.yaml in scality/ring repeats the SoftRoCE setup across its test, test-biziobox and performance jobs, and spawns miniring the same way in two of them. The performance job also derives the RDMA bind address
inline instead of reusing the one the setup already computed. The ring side (https://github.com/scality/ring/pull/7380) follows once this is tagged.

How
setup-rdma-runner takes a netdev and a link name, installs the RDMA userspace tools, loads rdma_rxe, recreates the link and outputs the netdev address.

start-miniring spawns the cluster, polls its log for the readiness line and writes a pid file, with connector options passed one per line so a caller's sproxyd flags stay in the caller's workflow; teardown is the caller's, since a composite action cannot declare a post step.

Testing setup-rdma-runner needs a kernel that loads rdma_rxe, so it runs on a self-hosted rocky9 runner, while start-miniring runs against a stub on a hosted one.

@btdaad btdaad self-assigned this Sep 21, 2026
@btdaad
btdaad force-pushed the improvement/RING-54773-reusable-rdma-actions branch 5 times, most recently from a722dc8 to db02c9d Compare September 21, 2026 12:55
The RDMA jobs in scality/ring repeat this SoftRoCE setup three times and
derive the bind address inline. The action reports that address as an
output instead.
@btdaad
btdaad force-pushed the improvement/RING-54773-reusable-rdma-actions branch 2 times, most recently from 2454694 to 9d31d5a Compare September 21, 2026 13:31
Two RDMA jobs in scality/ring spawn a miniring the same way and poll its log
for the same readiness line.

Connector options pass through as one line each, so the sproxyd flags a
caller needs stay in that caller's workflow. Stopping the cluster is left to
the caller.
@btdaad
btdaad force-pushed the improvement/RING-54773-reusable-rdma-actions branch from 9d31d5a to 3d22a99 Compare September 21, 2026 14:00
@btdaad
btdaad marked this pull request as ready for review September 21, 2026 14:21
@btdaad
btdaad requested a review from a team as a code owner September 21, 2026 14:21
- gcloud
steps:
- name: Checkout
uses: actions/checkout@v4

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very old version of checkout, should be update (v7 if i remember well)

@btdaad
btdaad force-pushed the improvement/RING-54773-reusable-rdma-actions branch from 3d22a99 to 4ae327b Compare September 22, 2026 14:59
@btdaad
btdaad force-pushed the improvement/RING-54773-reusable-rdma-actions branch from 4ae327b to 2075151 Compare September 22, 2026 15:02
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.

2 participants