Sha256: c2cb11939241a4bdde7fc1c4b099c81dc05e88d3a0409f48d380bdf6d2609500
Contents?: true
Size: 1.01 KB
Versions: 2
Compression:
Stored size: 1.01 KB
Contents
require 'fileutils' module Bundler module SSLCerts class CertificateManager attr_reader :bundler_cert_path, :bundler_certs, :rubygems_certs def self.update_from!(rubygems_path) new(rubygems_path).update! end def initialize(rubygems_path) rubygems_certs = File.join(rubygems_path, 'lib/rubygems/ssl_certs') @rubygems_certs = certificates_in(rubygems_certs) @bundler_cert_path = File.expand_path("..", __FILE__) @bundler_certs = certificates_in(bundler_cert_path) end def up_to_date? rubygems_certs.all? do |rc| bundler_certs.find do |bc| File.basename(bc) == File.basename(rc) && FileUtils.compare_file(bc, rc) end end end def update! return if up_to_date? FileUtils.rm bundler_certs FileUtils.cp rubygems_certs, bundler_cert_path end private def certificates_in(path) Dir[File.join(path, "*.pem")].sort end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
bundler-1.7.5 | lib/bundler/ssl_certs/certificate_manager.rb |
bundler-1.6.8 | lib/bundler/ssl_certs/certificate_manager.rb |