[ANN] Pool Boy 1.0.0 (unlocks stale pool resource locks)



we released a new version of the Pool Boy, https://github.com/Pix4D/concourse-pool-boy

It observes the pools used by the Concourse pool resource and resets to unclaimed any lock that it determines stale.

Can be used from the command-line or from a Concourse pipeline.

If used with our forked version of the Concourse pool-resource, it will query the ATC and determine if a lock is stale based on correct liveliness information about the job which acquired it.


Can you please give some more details? What problem is Pool Boy trying to resolve?


Although I always release the locks in a ensure stanza, the release can still fail if the worker fails for any reason. This is why I created the Pool Boy.

Consider the following

- name: acquire-1
    - put: acquire-pool
      params: {acquire: true}
    - task: BLAHBLAHBLAH
    put: acquire-pool
    params: {release: acquire-pool}

When the ensure fails, the lock becomes stale.