DEV: use FileHelper to download MaxMindDB

DEV: use FileHelper to download MaxMindDB

diff --git a/lib/discourse_ip_info.rb b/lib/discourse_ip_info.rb
index 5323bb2..40835bd 100644
--- a/lib/discourse_ip_info.rb
+++ b/lib/discourse_ip_info.rb
@@ -27,15 +27,11 @@ class DiscourseIpInfo
   def self.mmdb_download(name)
     FileUtils.mkdir_p(path)
 
-    uri = URI("https://geolite.maxmind.com/download/geoip/database/#{name}.tar.gz")
-
-    puts uri
-    puts "SIZE: #{Net::HTTP.get(uri).size}"
-
-    tar_gz_file = Tempfile.new
-    tar_gz_file.binmode
-    tar_gz_file.write(Net::HTTP.get(uri))
-    tar_gz_file.close
+    tar_gz_file = FileHelper.download(
+      "https://geolite.maxmind.com/download/geoip/database/#{name}.tar.gz",
+      max_file_size: 100.megabytes,
+      tmp_file_name: "#{name}.tar.gz"
+    )
 
     dest = File.join(Dir.tmpdir, "maxmind_#{SecureRandom.hex}")
     FileUtils.mkdir_p(dest)
diff --git a/lib/tasks/assets.rake b/lib/tasks/assets.rake
index d01b340..9fe3a48 100644
--- a/lib/tasks/assets.rake
+++ b/lib/tasks/assets.rake
@@ -165,14 +165,8 @@ task 'assets:precompile' => 'assets:precompile:before' do
     if !mmdb_time || mmdb_time < refresh_days.days.ago
       puts "Downloading MaxMindDB..."
       mmdb_thread = Thread.new do
-        begin
-          DiscourseIpInfo.mmdb_download('GeoLite2-City')
-          DiscourseIpInfo.mmdb_download('GeoLite2-ASN')
-        rescue => e
-          puts "Something when wrong while downloading the MaxMindDB"
-          puts e.message
-          puts e.backtrace.join("\n")
-        end
+        DiscourseIpInfo.mmdb_download('GeoLite2-City')
+        DiscourseIpInfo.mmdb_download('GeoLite2-ASN')
       end
     end
   end

GitHub sha: 2f5938c3