diff options
author | Andrew Shafer <andrew@reductivelabs.com> | 2008-09-19 17:00:03 -0600 |
---|---|---|
committer | James Turnbull <james@lovedthanlost.net> | 2008-09-21 22:15:00 +1000 |
commit | c16a5aee245a9e34e6934debee8e66630aef0fda (patch) | |
tree | 8a736d02ecf477a08ed92339f02752832f8ab5f6 /lib/puppet/network | |
parent | 27f0c7d6e7bf3400ccecc6512d6a5d477cb9bea9 (diff) | |
download | puppet-c16a5aee245a9e34e6934debee8e66630aef0fda.tar.gz puppet-c16a5aee245a9e34e6934debee8e66630aef0fda.tar.xz puppet-c16a5aee245a9e34e6934debee8e66630aef0fda.zip |
Only apply splay the first run
Issue 1491
Diffstat (limited to 'lib/puppet/network')
-rw-r--r-- | lib/puppet/network/client/master.rb | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/lib/puppet/network/client/master.rb b/lib/puppet/network/client/master.rb index 6f8e2770f..5e9422b7e 100644 --- a/lib/puppet/network/client/master.rb +++ b/lib/puppet/network/client/master.rb @@ -199,6 +199,7 @@ class Puppet::Network::Client::Master < Puppet::Network::Client self.class.instance = self @running = false + @splayed = false end # Mark that we should restart. The Puppet module checks whether we're running, @@ -478,20 +479,19 @@ class Puppet::Network::Client::Master < Puppet::Network::Client @lockfile end + def splayed? + @splayed + end + # Sleep when splay is enabled; else just return. def splay return unless Puppet[:splay] + return if splayed? - limit = Integer(Puppet[:splaylimit]) - - # Pick a splay time and then cache it. - unless time = Puppet::Util::Storage.cache(:configuration)[:splay_time] - time = rand(limit) - Puppet::Util::Storage.cache(:configuration)[:splay_time] = time - end - + time = rand(Integer(Puppet[:splaylimit])) Puppet.info "Sleeping for %s seconds (splay is enabled)" % time sleep(time) + @splayed = true end private |