Sha256: 7f3f154821ddd0f532ecba3c79f3deec5e797f76e0138294107f370547b0d984

Contents?: true

Size: 804 Bytes

Versions: 10

Compression:

Stored size: 804 Bytes

Contents

require 'puppet/indirector/file'
require 'puppet/indirector/ssl_rsa'

class Puppet::Indirector::SslRsa::File < Puppet::Indirector::File
    desc "Store SSL keys on disk."

    def initialize
        Puppet.settings.use(:ssl)
    end

    def path(name)
        if name == :ca
            File.join Puppet.settings[:cadir], "ca_key.pem"
        else
            File.join Puppet.settings[:publickeydir], name.to_s + ".pem"
        end
    end

    def save(key)
        File.open(path(key.name), "w") { |f| f.print key.to_pem }
    end

    def find(name)
        return nil unless FileTest.exists?(path(name))
        OpenSSL::PKey::RSA.new(File.read(path(name)))
    end

    def destroy(name)
        return nil unless FileTest.exists?(path(name))
        File.unlink(path(name)) and true
    end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
puppet-0.24.9 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.0 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.1 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.3 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.2 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.4 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.5 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.6 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.7 lib/puppet/indirector/ssl_rsa/file.rb
puppet-0.24.8 lib/puppet/indirector/ssl_rsa/file.rb