DIRACGrid / DIRACGrid/intercede

[Feature] Implement SSH-slurm / local-slurm integration-test in CI workflow

Open
#13 0 comments 0 reactions 0 assignees Claimed by @kjvbrt View on GitHub
Dominant language
Python
Stars
3
Forks
3
PR merge metrics
No merged PRs in 30d

Description

## User Story

As a contributor for the Slurm scheduler + SSH/Local transports,
I want a containerised single-node Slurm cluster reachable both over SSH and by local exec, in CI,
So that the `SSHTransport × Slurm` and `LocalTransport × Slurm` combinations are validated end-to-end.

## Feature Description

Stand up the **`ssh-slurm`** and **`local-slurm`** stacks (IC-ADR-002) — they share one image and
differ only in how the tests reach the batch node:
- `ssh-slurm`: connect over port 22 (`exec_in_container: false`);
- `local-slurm`: `docker compose exec` pytest *inside* the container (`exec_in_container: true`,
manifest `stack: ssh-slurm`).

Harmonize onto the scaffold from # per the checklist.

## Definition of Done

- [ ] Cluster starts cleanly; `sinfo` shows the compute node `idle`; healthcheck passes
- [ ] Test jobs complete and produce output; CI workflow passes on GH Actions
- [ ] sshd variant: key-based access works; `ssh-slurm` reachable over port 22
- [ ] Harmonized onto the scaffold: `docker compose`, EL9 + pinned Slurm RPM under `_images/slurm/`,
`stacks/ssh-slurm/` layout, `ssh-slurm` + `local-slurm` `stacks.yml` entries, bespoke
workflow removed
- [ ] SSH creds ephemeral: `ssh-keygen` in a CI step → `authorized_keys`, known-hosts via
`ssh-keyscan`

## Alternatives Considered

## Related Issues

## Additional Context

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.