class Reclone::CLI
Attributes
current_user[RW]
Public Instance Methods
call()
click to toggle source
# File lib/reclone/cli.rb, line 4 def call up? puts "Hiya friend"; sleep 0.5 log_in recloner end
directory_exists?(directory)
click to toggle source
# File lib/reclone/cli.rb, line 21 def directory_exists?(directory) Dir.exists?(directory) end
log_in()
click to toggle source
# File lib/reclone/cli.rb, line 25 def log_in puts "Please enter your Github user name." user_name = gets.strip.to_s @current_user = User.new(user_name) if user_name == "exit" exit! elsif @current_user.user_info puts "Oh hayyy, I found you!" else puts "I'm having a hard time locating that username." puts "Please try again." log_in end end
recloner()
click to toggle source
# File lib/reclone/cli.rb, line 41 def recloner puts "Remember, the next step will clone repositories" puts "in your present working directory." puts " " puts "Make sure you are in the right place before doing the thing." puts " " puts " " puts "Shall I do the thing?" user_input = gets.strip if user_input == "yes"|| user_input == "y" || user_input == 'yis' ||user_input == "yeth" current_user.repos.each do |repo| if !directory_exists?(repo[:full_name]) `git clone #{repo[:ssh_url]}` end end elsif user_input == "no"|| user_input == "n" || user_input == "nah" puts "Thanks for stopping by, I guess?" exit else recloner end end
up?()
click to toggle source
Internet connection check
# File lib/reclone/cli.rb, line 12 def up? if Net::Ping::External.new("www.google.com").ping? != true puts "You need an internet connection to run this program..." puts "As if I needed to tell you that."; sleep 1 puts "Good bye for now." exit end end