Whilst trying to reduce the impact the loss of any one maintainer can
have, we were offered a solution to the DNS ownership problem by
DNSimple who kindly sponsored our DNS entry. This allows the three core
maintainers to have access to the DNS system incase changes need to be
made.
Part of the deal was including a link to DNSimple in the footer of the
site (as Hanamai, and others do).
I forgot, apparently to keep my end of the bargain, and during a recent
audit they've checked in with me to see if we're still making use of the
sponsored service. As I like DNSimple and find them to be very useful,
I'd like them to continue to sponsor us, and offer this tweak to the
doce to fulfil our obligations in that regard.
Users of the API may now add their own 'on'-filters by calling
Configuration#add_filter, e.g:
`Capistrano::Configuration.env.add_filter(RegionFilter.new('NE'))`.
An filter object passed into this method must respond to .filter, and
this method should accept an array of Server objects and return a subset
of this array.
Tests have been added that checks that:
* A filter can be added without throwing an error
* Trying to add a filter without a filter method throws a
TypeError
* An added filter is used to filter a list of servers
* add_filter accepts a block, and raises an ArgumentError
if passed both a block and an object.