Sha256: 5a865ec93d00b3a8561e2e8dbe5728e1eaffe1414e35d7a1a5ff7acfa02f58b4

Contents?: true

Size: 1.31 KB

Versions: 10

Compression:

Stored size: 1.31 KB

Contents

# Certificate-related helper methods.

require 'puppettest'

module PuppetTest::Certificates
    include PuppetTest

    def mkPassFile()
        keyfile = File.join(@dir, "tmpkeyfile")
        @@tmpfiles << keyfile
        unless FileTest.exists?(@dir)
            system("mkdir -p %s" % @dir)
        end
        File.open(keyfile, "w", 0600) { |f|
            f.print "as;dklj23rlkjzdflij23wr"
        }

        return keyfile
    end

    def mkCA
        ca = nil
        assert_nothing_raised {
            ca = Puppet::SSLCertificates::CA.new()
        }

        return ca
    end

    def mkStore(ca)
        store = OpenSSL::X509::Store.new
        store.purpose = OpenSSL::X509::PURPOSE_SSL_CLIENT
        store.flags = OpenSSL::X509::V_FLAG_CRL_CHECK
        store.add_cert(ca.cert)
        store.add_crl(ca.crl)
        store
    end

    def mkcert(hostname)
        cert = nil
        assert_nothing_raised {
            cert = Puppet::SSLCertificates::Certificate.new(:name => hostname)
            cert.mkcsr
        }
        
        return cert
    end 

    def mksignedcert(ca = nil, hostname = nil)
        ca ||= mkCA()
        hostname ||= "ttltest.example.com"

        cert = nil
        assert_nothing_raised {
            cert, cacert = ca.sign(mkcert(hostname).mkcsr)
        }
        return cert
    end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
puppet-0.24.9 test/lib/puppettest/certificates.rb
puppet-0.24.0 test/lib/puppettest/certificates.rb
puppet-0.24.2 test/lib/puppettest/certificates.rb
puppet-0.24.3 test/lib/puppettest/certificates.rb
puppet-0.24.1 test/lib/puppettest/certificates.rb
puppet-0.24.4 test/lib/puppettest/certificates.rb
puppet-0.24.5 test/lib/puppettest/certificates.rb
puppet-0.24.7 test/lib/puppettest/certificates.rb
puppet-0.24.6 test/lib/puppettest/certificates.rb
puppet-0.24.8 test/lib/puppettest/certificates.rb