Sha256: 7ccadff4f87b2bf7287954ca01531ae532cd0caf27a44c645bc9527fc3d1a0eb

Contents?: true

Size: 1.19 KB

Versions: 67

Compression:

Stored size: 1.19 KB

Contents

#!/usr/bin/env ruby

require 'uri'
require 'securerandom'
require 'logger'
require 'sequel'

uri_string = ARGV[0]
database = ARGV[1]
raise "Usage: #{__FILE__} URI SQLITE_DATABASE_PATH" unless uri_string && database

# Modify this hash with the configuration for your database
# For example, a postgres connection would look like:
# DATABASE_CREDENTIALS = {logger: Logger.new($stdout), adapter: "postgres", host: "HOST", username: "USERNAME", password: "PASSWORD", :encoding => 'utf8'}
DATABASE_CREDENTIALS = {logger: Logger.new($stdout), adapter: "sqlite", database: database, :encoding => 'utf8'}

uri = URI(uri_string)
connection = Sequel.connect(DATABASE_CREDENTIALS)

certificate_command = "openssl s_client -showcerts -servername #{uri.host} -connect #{uri.host}:#{uri.port} </dev/null 2>/dev/null | openssl x509 -outform PEM"
certificate_content = `#{certificate_command}`

puts "Downloaded certificate from #{uri.host}: #{certificate_content}"

certificate_hash = {
  uuid: SecureRandom.urlsafe_base64,
  description: "Self signed certificate for #{uri.host}",
  content: certificate_content,
  created_at: DateTime.now,
  updated_at: DateTime.now
}

connection[:certificates].insert(certificate_hash)

puts "Done"

Version data entries

67 entries across 67 versions & 1 rubygems

Version Path
pact_broker-2.79.1 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.79.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.78.1 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.78.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.77.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.76.2 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.76.1 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.76.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.75.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.74.1 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.74.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.73.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.72.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.71.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.70.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.69.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.68.1 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.68.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.67.0 script/insert-self-signed-certificate-from-url.rb
pact_broker-2.66.0 script/insert-self-signed-certificate-from-url.rb