Reputation: 56232
By default, slave resources such as CPU and RAM are handled in a very basic way in Jenkins: by setting the number of executors, which is the number of allowed concurrent builds on this particular slave.
However, different jobs have different needs in terms of CPUs and RAM, so this model can quickly become sub optimal if you have jobs with different constraints: high RAM use, multi-threading, short and long jobs, etc.
Is there a way, for example, to say that a slave has 16GB of RAM, and then declare RAM consumption for each job?
Upvotes: 2
Views: 945
Reputation: 56232
After digging a bit more, it looks like the heavy job plugin [1] allows crude resource management, which is enough for my needs. I'd still like to know if people have better solutions to propose, though.
[1] https://wiki.jenkins.io/display/JENKINS/Heavy+Job+Plugin
Upvotes: 1