Limit jobs an agent can handle?

I would love to be able to be able to restrict what jobs run on an agent. I can add agent tags but adding tags only expands the jobs the agent will accept. Suppose I have a two agents A and B with tags a and a, b, respectively. Now I want to have agent B only run jobs with agent tag b. I will not be able to restrict the jobs to agent B without modifying agent A to some negative test for tag a. Is there any way to restrict jobs accepted by an agent without modifying all the other agents?

I found two prior issues/feature requests that almost capture my issue, but I can’t quite tell if they are asking for.

Hi @john.soo

We are currently working on feature (Clusters) which exactly addresses this kind of usecase that is also referenced in one of the forum link which you added to your post. We do not have an exact ETA at the moment but should be available this year.

So currently there is no simple way apart from modifying agents or having dedicated agents for specific jobs

1 Like

I am really glad something to address this is coming, but I didn’t really any details about what the feature would add. Is there some kind of example agent configuration that is available? I ask because provisioning a new cluster just for this feels very heavy to me.

Clusters allow you to allocate sets of agents to run specific kinds of jobs within your organization. On high level as the feature is still being worked on, you will define a logical entity which is Cluster in Buildkite and in that cluster you will have pipelines, agents with different queues.

So now builds from the pipelines in that cluster will only be targeting agents that are part of that cluster. I hope this provides some overview about this feature and helps with your question.

1 Like

Hm. Well my concern is that I want to have jobs in the same build in the same pipeline run on more specific agents. Will having multiple clusters per build/pipeline be supported?

Valid concern. Please allow me to follow up on this and get back to you.

1 Like

Hi @john.soo

Team is still on working on the feature and at the moment we do not have the details on all the specifics that will be available as part of the feature.

1 Like

Ok thank you! Consider this just my 2 cents.

Here’s what I thought would work for me. Like jobs can specify agent tags, agents might specify job tags. I imagine they might work the same way the agent tags work for consistency’s sake. I don’t mean to dictate a solution or anything, but that seems to me to be the missing feature.

Hi @john.soo

Thank you for the inputs.

1 Like

Thank you @suma I appreciate the fast response and look forward to what you come up with!