{"id":21743691,"url":"https://github.com/argodevops/slurm-protoype","last_synced_at":"2026-05-13T05:42:05.086Z","repository":{"id":122806673,"uuid":"479812765","full_name":"argodevops/slurm-protoype","owner":"argodevops","description":"Prototype for using slurm","archived":false,"fork":false,"pushed_at":"2023-09-26T08:55:11.000Z","size":14,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-25T22:21:14.726Z","etag":null,"topics":["hpc","slurm"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/argodevops.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-09T18:34:57.000Z","updated_at":"2024-12-24T14:14:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"2f2860b8-2e3d-4f1e-a17f-2b305b7791da","html_url":"https://github.com/argodevops/slurm-protoype","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argodevops%2Fslurm-protoype","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argodevops%2Fslurm-protoype/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argodevops%2Fslurm-protoype/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argodevops%2Fslurm-protoype/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/argodevops","download_url":"https://codeload.github.com/argodevops/slurm-protoype/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244722039,"owners_count":20499075,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hpc","slurm"],"created_at":"2024-11-26T07:08:46.158Z","updated_at":"2026-05-13T05:42:05.058Z","avatar_url":"https://github.com/argodevops.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# README #\r\n\r\nDemonstratable Slurm prototype. \r\n\r\n### What is this repository for? ###\r\n\r\nAll source code for demonstratable set of applications for submitting jobs to Slurm for execution on its nodes. It consists of:\r\n* A job submission service (spring boot app) to submit jobs to Slurm (slurmctld)\r\n* A mockHPC app to process the job submission and send a response\r\n* A job response service (spring boot app) to handle the response\r\n\r\n### How do I get set up? ###\r\n\r\nThe mockHpc and response app will build into a docker image.\r\n\r\n* docker build -t slurm-mockhpc .\r\n* docker build -t slurm-job-response-service .\r\n\r\nThe job submission app will be run as a jar from the command line.\r\n\r\n* mvn clean package\r\n\r\n### How do I run it all up? ###\r\n\r\nRun the slurm-mockHpc container which has the Slurm daemons and mockHpc app installed.\r\n\r\n* docker run -d slurm-mockHpc\r\n\r\nIf you exec (docker exec -it slurm-mockHpc /bin/bash) into the container and run sinfo command it should show the Slurm daemons running.\r\n\r\nRun the job response app. By default it will expose port 8080. It exposes an endpoint (http://\u003curl\u003e:\u003cport\u003e/job/postJob) which simply logs any received HTTP POST requests.\r\n\r\n* docker run -d -p 9081:8080 slurm-job-response-service\r\n\r\nRun the job request app. The app will use the docker exec command to fire a script (including the job request json) to the Slurm container and execute the mockHpc app, which will send a response using the provided return url.  \r\n\r\njava -jar target/slurm-job-response-service.jar \r\n\r\n### Contribution guidelines ###\r\n\r\n* Writing code and tests\r\n    * To run the app - python mockHpc/main.py -j \u003cjobid\u003e -f \u003crequest.json\u003e\r\n        * where -j is a unique jobid and -f is a job request JSON file \r\n    * To run all the unit tests from the test directory - py.test\r\n    * To run the flow logic tests - py.test -m flows\r\n* Code review\r\n* Pipeline successfully builds\r\n* Build and deploy\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fargodevops%2Fslurm-protoype","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fargodevops%2Fslurm-protoype","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fargodevops%2Fslurm-protoype/lists"}