summaryrefslogtreecommitdiffstats
path: root/lib/puppet/indirector/key/ca.rb
blob: 3604de22b84d50af9cb200039773fe94b69d2439 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
require 'puppet/indirector/ssl_file'
require 'puppet/ssl/key'

class Puppet::SSL::Key::Ca < Puppet::Indirector::SslFile
    desc "Manage the CA's private on disk.  This terminus *only* works
        with the CA key, because that's the only key that the CA ever interacts
        with."

    # This is just to pass the validation in the base class.  Eh.
    store_at :cakey

    store_ca_at :cakey

    def path(name)
        unless ca?(name)
            raise ArgumentError, "The :ca terminus can only handle the CA private key"
        end
        super
    end
end