Skip to content

Commit 9cb0683

Browse files
committed
Use PrivateAddressCheck in ingestion
1 parent ad7d04e commit 9cb0683

41 files changed

Lines changed: 52 additions & 57 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

lib/ingestors/bioschemas_ingestor.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
require 'open-uri'
21
require 'tess_rdf_extractors'
32

43
module Ingestors

lib/ingestors/carpentries_ingestor.rb

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
require 'open-uri'
21
require 'csv'
32
require 'nokogiri'
43

@@ -48,7 +47,7 @@ def process_workshop(workshop)
4847

4948
def curricula
5049
Rails.cache.fetch('carpentries-curricula', expires_in: 1.week) do
51-
json = URI.open(CURRICULA_URL).read
50+
json = open_url(CURRICULA_URL).read
5251
hash = {}
5352
JSON.parse(json).each do |c|
5453
hash[c['slug']] = c

lib/ingestors/event_csv_ingestor.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
require 'open-uri'
21
require 'csv'
32

43
module Ingestors

lib/ingestors/eventbrite_ingestor.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
require 'open-uri'
21
require 'csv'
32

43
module Ingestors

lib/ingestors/github_ingestor.rb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
# frozen_string_literal: true
2-
3-
require 'open-uri'
42
require 'json'
53
require 'httparty'
64
require 'nokogiri'

lib/ingestors/heptraining/gray_scott_ingestor.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
require 'icalendar'
22
require 'nokogiri'
3-
require 'open-uri'
43
require 'tzinfo'
54

65
module Ingestors

lib/ingestors/ical_ingestor.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
require 'icalendar'
22
require 'nokogiri'
3-
require 'open-uri'
43
require 'tzinfo'
54

65
module Ingestors

lib/ingestors/indico_ingestor.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
require 'icalendar'
44
require 'nokogiri'
5-
require 'open-uri'
65
require 'tzinfo'
76

87
module Ingestors

lib/ingestors/ingestor.rb

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
require 'sitemap-parser'
2+
require 'private_address_check'
3+
require 'private_address_check/tcpsocket_ext'
24

35
module Ingestors
46
class Ingestor
@@ -71,7 +73,14 @@ def open_url(url, raise: false, token: nil)
7173
redirect_attempts = 5
7274
options['Authorization'] = "Bearer #{token}" unless token.nil?
7375
begin
74-
URI(url).open(options)
76+
PrivateAddressCheck.only_public_connections do
77+
URI(url).open(options)
78+
end
79+
rescue PrivateAddressCheck::PrivateConnectionAttemptedError
80+
raise "Couldn't open URL #{url}" if raise
81+
@messages << "Couldn't open URL #{url}"
82+
83+
nil
7584
rescue OpenURI::HTTPRedirect => e
7685
url = e.uri.to_s
7786
retry if (redirect_attempts -= 1) > 0

lib/ingestors/libcal_ingestor.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
require 'open-uri'
21
require 'csv'
32

43
module Ingestors

0 commit comments

Comments
 (0)