diff options
| author | Nick Lewis <nick@puppetlabs.com> | 2011-07-21 11:38:51 -0700 |
|---|---|---|
| committer | Jacob Helwig <jacob@puppetlabs.com> | 2011-08-19 13:52:56 -0700 |
| commit | b6b54981bb0972ed6e57d5763e976418fe5bd32b (patch) | |
| tree | efacbaa6ba883c0327d9d231922d40516e68b39e | |
| parent | 777b2f284eceedb3bbc51846089278752074bfca (diff) | |
| download | puppet-b6b54981bb0972ed6e57d5763e976418fe5bd32b.tar.gz puppet-b6b54981bb0972ed6e57d5763e976418fe5bd32b.tar.xz puppet-b6b54981bb0972ed6e57d5763e976418fe5bd32b.zip | |
Remove Util::Cacher usage from SSL::CertificateAuthority
Allowing the singleton_instance value to be expirable is unnecessary, because
there will never be a need for a different CA instance in the lifetime of a
master. Additionally, the master never expired its cache anyway. This was only
using the cacher so it could be expired for tests, so it can safely be removed.
Reviewed-By: Jacob Helwig <jacob@puppetlabs.com>
(cherry picked from commit fac867c7bdbfbd431b089eb1bfb6eb73230e912c)
| -rw-r--r-- | lib/puppet/ssl/certificate_authority.rb | 12 | ||||
| -rwxr-xr-x | spec/integration/ssl/certificate_authority_spec.rb | 2 | ||||
| -rwxr-xr-x | spec/unit/ssl/certificate_authority_spec.rb | 4 |
3 files changed, 9 insertions, 9 deletions
diff --git a/lib/puppet/ssl/certificate_authority.rb b/lib/puppet/ssl/certificate_authority.rb index d65067c70..a4cbaf78a 100644 --- a/lib/puppet/ssl/certificate_authority.rb +++ b/lib/puppet/ssl/certificate_authority.rb @@ -1,6 +1,6 @@ +require 'monitor' require 'puppet/ssl/host' require 'puppet/ssl/certificate_request' -require 'puppet/util/cacher' # The class that knows how to sign certificates. It creates # a 'special' SSL::Host whose name is 'ca', thus indicating @@ -17,6 +17,8 @@ class Puppet::SSL::CertificateAuthority require 'puppet/ssl/certificate_authority/interface' require 'puppet/network/authstore' + extend MonitorMixin + class CertificateVerificationError < RuntimeError attr_accessor :error_code @@ -25,10 +27,10 @@ class Puppet::SSL::CertificateAuthority end end - class << self - include Puppet::Util::Cacher - - cached_attr(:singleton_instance) { new } + def self.singleton_instance + synchronize do + @singleton_instance ||= new + end end def self.ca? diff --git a/spec/integration/ssl/certificate_authority_spec.rb b/spec/integration/ssl/certificate_authority_spec.rb index af06437c4..3069ee684 100755 --- a/spec/integration/ssl/certificate_authority_spec.rb +++ b/spec/integration/ssl/certificate_authority_spec.rb @@ -25,8 +25,6 @@ describe Puppet::SSL::CertificateAuthority, :fails_on_windows => true do system("rm -rf #{@dir}") Puppet.settings.clear - Puppet::Util::Cacher.expire - Puppet::SSL::CertificateAuthority.instance_variable_set("@instance", nil) } diff --git a/spec/unit/ssl/certificate_authority_spec.rb b/spec/unit/ssl/certificate_authority_spec.rb index 3aedfdc25..3c5780a43 100755 --- a/spec/unit/ssl/certificate_authority_spec.rb +++ b/spec/unit/ssl/certificate_authority_spec.rb @@ -5,7 +5,7 @@ require 'puppet/ssl/certificate_authority' describe Puppet::SSL::CertificateAuthority do after do - Puppet::Util::Cacher.expire + Puppet::SSL::CertificateAuthority.instance_variable_set(:@singleton_instance, nil) Puppet.settings.clearused end @@ -25,7 +25,7 @@ describe Puppet::SSL::CertificateAuthority do describe "when finding an existing instance" do describe "and the host is a CA host and the run_mode is master" do before do - Puppet.settings.stubs(:value).with(:ca).returns true + Puppet[:ca] = true Puppet.run_mode.stubs(:master?).returns true @ca = mock('ca') |
