class Shard::CLI::Config
Public Class Methods
run()
click to toggle source
#
Class Methods #
#
# File lib/shard/cli/config.rb, line 13 def self.run new.run end
Public Instance Methods
run()
click to toggle source
#
Instance Methods #
#
# File lib/shard/cli/config.rb, line 23 def run if credentials_saved? replace_credentials else add_credentials end end
Private Instance Methods
add_credentials()
click to toggle source
# File lib/shard/cli/config.rb, line 33 def add_credentials puts <<-EOF To use shard features that require a Github login, please enter your username and password below. Note, you can provide an Personal Access Token instead of a password (recommended). (See https://github.com/settings/tokens/new for more information) EOF print " Username | " username = STDIN.gets.to_s.chomp print " Password | " password = STDIN.noecho(&:gets).to_s.chomp save_credentials(username, password) if credentials_saved? puts "\nCredentials saved to ~/.netrc" validate_login else puts "\nCredentials have been cleared." end end
credentials_saved?()
click to toggle source
# File lib/shard/cli/config.rb, line 60 def credentials_saved? Shard::Credentials.saved? end
replace_credentials()
click to toggle source
# File lib/shard/cli/config.rb, line 64 def replace_credentials str = valid_login? ? "" : "invalid " puts "You currently have #{ str }Github credentials saved in ~/.netrc" print "Do you wish to replace them? [yn] " if yes? add_credentials end end
save_credentials(username, password)
click to toggle source
# File lib/shard/cli/config.rb, line 75 def save_credentials(username, password) Shard::Credentials.new(username, password).save end
valid_login?()
click to toggle source
# File lib/shard/cli/config.rb, line 92 def valid_login? Shard::Credentials.valid? end
validate_login()
click to toggle source
# File lib/shard/cli/config.rb, line 79 def validate_login if valid_login? puts "\nThe saved Github credentials are valid." else puts "\nThe saved Github credentials are invalid." print "Do you wish to re-enter them? [yn] " if yes? add_credentials end end end
yes?()
click to toggle source
# File lib/shard/cli/config.rb, line 96 def yes? STDIN.gets.chomp.downcase == 'y' end