我们在自托管的 GitLab 15 服务器中有 6 个存储库。我们有一个单独的跑步者盒子和 6 个命名/标记的跑步者设置。所以 gitlab 上的每个 repo 都有自己特定的运行程序。
我们希望每个跑步者都可以独立运行,而不是被其他正在执行作业的跑步者阻碍。
但是,我们不希望任何一个运行程序同时执行多个作业。
所以 repo #1 一次只能运行一项作业 与 repo #2 等相同...
但是,repo #1 可以运行一个作业,而 repo #2 可以同时运行一个作业,而不是等待另一个作业完成后再开始。
我们已经尝试了并发=x和限制=y的所有组合,作为全局和每个运行者,但没有成功。
除了在
limit = 1
中使用 config.toml
和自己的标签设置其他跑步者之外,我想不出其他选择。 (使用 [resource_group][1]
只能限制对实例级别某个步骤的访问,所以恐怕 GitLab 中没有针对此问题的公告解决方案。)