Skip to end of metadata
Go to start of metadata

Plugin Information

View Slave squatter on the plugin site for more information.

This plugin enables administrators to reserve executors to be used outside Jenkins.

It is useful for making Jenkins aware of activities outside Jenkins — such as when you are using people's workstations as slaves (which need to be available for interactive use during day time) or when the system goes through a periodical backup, which reduces the I/O capability of the system.

By default, the reservation is specified in a cron-like syntax (but as you see below, this is an extension point.)

More specifically, you specify (1) an integer to decide the number of executors reserved (or special token "*" to indicate all the executors of the node), (2) a cron syntax to decide when a reservation starts, (3) number of minutes that decide the duration. So for example, to reserve 2 executors between 8am-5pm weekdays, you'd write the following:

# 5pm - 8am = 9hours = 540mins
2 : 0 8 * * 1-5 : 540
# or alternatively devide it up to 9 times 1hr reservation
2 : 0 8-16 * * 1-5 : 60

Extension Points

This plugin provides an extension point that allows other plugins to control the reservation programmatically (or by exposing it in a different UI.) For example, one might consider controlling reservations via existing calendar system such as Microsoft Exchange, or provide a simpler UI for common cases.

Changelog

Version 1.2 (Aug 7 2011)

  • Support '*' as the executor size to indicate "all the executors of the computer"
  • Add form validation

Version 1.1 (Sep 29 2010)

  • Implemented an extension point so that upcoming reservations are considered for making scheduling decisions

Version 1.0 (Sep 19 2010)

  • Initial version

4 Comments

  1. Hello,

    Very interesting plugin, but it would be great if it could apply on one machine with slaves from different instances.
    And I wonder if  the all the executors of the computer on the 1.2 Changelog could apply to that use case ?

    Thanks for your help

    Best Regards
    J-L

  2. Can the squatting be initiated from the REST API or CLI, instead of from the schedule?

  3. Really I just want to be able to do this for a node of my choosing.  Can you add support for picking the node you want the executors reserved for please?  I see nothing has happened with this plugin for a while, so I hope it is still supported.

  4. Has anyone attempted to implement an extension of this to work with Exchange reservations?

    If not I'll take a shot and leverage https://github.com/OfficeDev/ews-java-api