Skip to content
Snippets Groups Projects

Runner setup

First, the runner has to be set up as a custom runner and registered with the corresponding GitLab instance following the standard procedure. The config (example in runner_config) needs to be adjusted to point with their config_exec and run_exec entries to the respective scripts in the runner_scripts folder. Scripts need to be selected depending on runner privileges: root (allows change of users) or user (can only execute jobs as this user). Note, that paths in those scripts might need to be adjusted.

Cx with .gitlab-ci.yml

First, the username to authenticate with has to be set using the AUTH_USER variable. Second, a key pair has to be generated, of which the private key is added as a CI variable AUTH_KEY in reposity settings > CI/CD. The public one has to be added to ~/gitlab-runner/authorized_keys, where ~ signifies the AUTH_USER's home.

Jobs, which have the variable SUBMIT_TO_SLURM set, will have their script submitted to SLURM. Options for SLURM's salloc are configurable by setting the respective environment variables preceded by SLURM_ in the variables section of the job definition.

Jobs without SUBMIT_TO_SLURM will have their script executed on the frontend of the cluster.

An example .gitlab-ci.yml file can be found in the root of this repository.