Plan and schedule shared runner usage (User and CI)

Plan and schedule shared runner usage (user and ci)

We have the use case that runners, respectively the machine, need to be used by the gitlab CI and the user. For the user to plan their work, they want to reserve the machine at a certain timeslot. This somehow needs to be coordinated with CI that also uses that machine via the runner.

  • Example: It is currently 14:30h. User A reserves the machine X at 15:00h for 1 hour. At 14:45h the CI wants to execute a job that takes in average 1 hour and can potentially run on machine X.

  • Wished behavior: The runner on machine X should not pick up the job as it somehow knows that this will collide with the reservation of user A.

Does anybody have similar requirements? Are there any known tools to support something like this?

I am happy for every useful feedback on this. Thanks :slight_smile: