Sha256: d2c99255e75220502ff721903f7499d2abae4923f9e68deb89e161ea378f91da
Contents?: true
Size: 1.27 KB
Versions: 14
Compression:
Stored size: 1.27 KB
Contents
require 'rubygems' require 'stickler/repository/rubygems_authenticator' module Stickler class Client class ConfigFile def initalize @updated = false end def config_path File.join(Gem.user_home, '.gem', 'stickler') end def configuration Gem.configuration.load_file(config_path) end def update( opts ) self.server = opts[:server] if opts[:server] self.upstream = opts[:upstream] if opts[:upstream] return updated? end def updated? return @updated end def server configuration[:server] end def server=( server ) config = configuration.merge( :server => server ) save_config( config ) end def upstream configuration[:upstream] || ::Stickler::Repository::RubygemsAuthenticator.rubygems_uri.to_s end def upstream=( upstream ) config = configuration.merge( :upstream => upstream ) save_config( config ) end def save_config( config ) dirname = File.dirname(config_path) Dir.mkdir(dirname) unless File.exists?(dirname) File.open(config_path, "w") do |f| f.write config.to_yaml end @updated = true end end end end
Version data entries
14 entries across 14 versions & 1 rubygems