summaryrefslogtreecommitdiffstats
path: root/lib/puppet/network
diff options
context:
space:
mode:
authorAndrew Shafer <andrew@reductivelabs.com>2008-09-19 17:00:03 -0600
committerJames Turnbull <james@lovedthanlost.net>2008-09-21 22:15:00 +1000
commitc16a5aee245a9e34e6934debee8e66630aef0fda (patch)
tree8a736d02ecf477a08ed92339f02752832f8ab5f6 /lib/puppet/network
parent27f0c7d6e7bf3400ccecc6512d6a5d477cb9bea9 (diff)
downloadpuppet-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.rb16
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