Skip to content

Commit ea6ec2f

Browse files
theyoprstclaude
andcommitted
Add SPANK plugin symlink test to CI
Test that chroot.so and spanknccldebug.so symlinks exist in /usr/lib/slurm/ for slurm_check_job, login_sshd, and worker_slurmd images. This test should fail until the fix is applied to install scripts. Co-Authored-By: Claude Opus 4.5 <[email protected]>
1 parent 7ffa0b4 commit ea6ec2f

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

.github/workflows/one_job.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,44 @@ jobs:
300300
echo "Removing jail rootfs tar archive to speedup further docker builds."
301301
rm -f images/jail_rootfs*.tar
302302
303+
- name: Test SPANK plugins are accessible
304+
shell: bash
305+
run: |
306+
UNSTABLE=${{ steps.read-version.outputs.unstable }}
307+
IMAGE_VERSION="$(make get-image-version UNSTABLE=${UNSTABLE})"
308+
if [[ "$UNSTABLE" == "true" ]]; then
309+
IMAGE_REPO="cr.eu-north1.nebius.cloud/soperator-unstable"
310+
else
311+
IMAGE_REPO="cr.eu-north1.nebius.cloud/soperator"
312+
fi
313+
314+
echo "=== Testing SPANK plugin symlinks ==="
315+
316+
test_plugin_symlink() {
317+
local image=$1
318+
local plugin=$2
319+
local full_image="${IMAGE_REPO}/${image}:${IMAGE_VERSION}"
320+
321+
if ! docker run --rm --entrypoint test "${full_image}" -e "/usr/lib/slurm/${plugin}"; then
322+
echo "FAIL: ${image} missing /usr/lib/slurm/${plugin}"
323+
return 1
324+
fi
325+
echo " OK: ${image} has /usr/lib/slurm/${plugin}"
326+
}
327+
328+
# Test chroot.so symlink in all slurm images
329+
for image in slurm_check_job login_sshd worker_slurmd; do
330+
test_plugin_symlink "${image}" "chroot.so"
331+
done
332+
333+
# Test spanknccldebug.so symlink (only in login_sshd and worker_slurmd)
334+
for image in login_sshd worker_slurmd; do
335+
test_plugin_symlink "${image}" "spanknccldebug.so"
336+
done
337+
338+
echo ""
339+
echo "All SPANK plugin symlink tests passed!"
340+
303341
build-helm-charts:
304342
needs: [changes, pre-build]
305343
if: needs.changes.outputs.should_build == 'true'

0 commit comments

Comments
 (0)