From b4f976a3616c9983d1ecad50211a3203a398635a Mon Sep 17 00:00:00 2001 From: s00ner Date: Tue, 12 Jul 2022 16:39:50 -0400 Subject: [PATCH] created AoC init script --- aocinit.rb | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 aocinit.rb diff --git a/aocinit.rb b/aocinit.rb new file mode 100644 index 0000000..1906eb8 --- /dev/null +++ b/aocinit.rb @@ -0,0 +1,30 @@ +#!/bin/env ruby +require 'optparse' +require 'HTTParty' + +options = Hash.new +OptionParser.new do |opts| + opts.banner = 'aocinit.rb --help' + opts.on("-y", "--year year", "AoC year") do |year| + options[:year] = year + end + opts.on("-d", "--day day", "AoC day") do |day| + options[:day] = day + end + opts.on("-c", "--cookie-file cookie", "File containing your AoC cookie") do |cookie| + options[:cookie] = cookie + end +end.parse! + +url = "https://adventofcode.com/#{options[:year]}/day/#{options[:day]}/input" +options[:day] = "0" + options[:day] if options[:day].to_i < 10 +newdir = "./day#{options[:day]}" +cookie = File.read("./#{options[:cookie]}") +@options = { headers: { 'Cookie' => "session=#{cookie}" }} +input = HTTParty.get(url, @options) + +abort "Day already initiated." if Dir.exists?(newdir) +Dir.mkdir(newdir) +Dir.chdir(newdir) +File.write('./input', input) +File.write('./solution.rb', "#!/bin/env ruby") \ No newline at end of file