class Application::Makegit

Attributes

git_token[R]
git_user[R]
params[R]
project_name[R]

Public Class Methods

new(argv) click to toggle source
# File lib/makegit.rb, line 13
def initialize(argv)
        @params, @project_name = parse_options(argv)
        @git_user, @git_token = Config.new.login
end

Public Instance Methods

parse_options(argv) click to toggle source
# File lib/makegit.rb, line 24
def parse_options(argv)
        argv << '-h' if argv.empty?
        params = {}
        OptionParser.new do |opts|
             opts.banner = "Usage: [project_name] [options]"

                opts.on("-h", "--help", "Prints this help") do
                        puts opts
exit
                end

                opts.on("--rubygem", "Creates RubyGem project template") do
                        params[:template] = "rubygem"
                end

        end.parse!
        
        project_name = argv[0]
        raise ArgumentError, "No Project Name Given", caller if project_name == nil || project_name.empty?
        
        [params, project_name]

end
run() click to toggle source
# File lib/makegit.rb, line 18
def run
        FSBuilder.new(project_name, params[:template]).build
        RepoBuilder.new(project_name, git_user, git_token).build
        STDOUT.puts "Project successfully created. Type \"cd #{project_name}\" and get to work!"
end