Limit concurrency in zuul-executor under load

This will prevent the executor from taking too many jobs all at
once which could cause the system to become unstable. It adds a
config option to allow scaling based on observed capability of the
system since load average can be subject to factors outside of
Zuul's control. The default of 2.5 was selected based on highly
scientific observation of a single graph from OpenStack infra's
cacti that looks about right.

Change-Id: I346a92fe7185d7ef216cd303e19acaa59c6d6101
2 files changed