Shared slaves are not leased to Client masters when Controlled Slaves are online
- CloudBees Jenkins Enterprise
- CloudBees Jenkins Operations Center
- Folder Plus plugin
If you are using the controlled slave functionality to restrict only trusted jobs to a specific slave then you need to assign a unique label to that slave and set the slave to only run jobs specific to that label.
If you do not make that change then Jenkins’ node provisioning (which cannot have any awareness of the controlled slave restriction) will just see that there are executors available and not provision nodes.
The purpose of the controlled slaves functionality is to provide a last shot restriction on slaves so that a user cannot just configure a job to run on the controlled slave by knowing the label, they must also have got approval, but the restriction presupposes that you have tied the jobs to the slave using labelling restrictions.