github-pages-health-check 1.12.0 → 1.13.0
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1dc7e8e6ff875a82f7b7a63fb1c0f36887c4fb04a227216b6bd73219a1e5433e
|
4
|
+
data.tar.gz: 638976ceb500093ad1a9b1060eeced2206d7a7e368c0160efd6a63f9259de418
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 72c2a0f8c3762c6fba32e9ff160dad0539bd039afd67c5d1de37f16f8ce03c54ad396b03a5af3a76b3436c0d7898c579ec767fc10cfebf8054d90bbd2afb070f
|
7
|
+
data.tar.gz: f18feaf2e003d54fd17d30d2585cd7840a2085e9174227bda7499aa5fdf3633d11b45a69b691836465e060570125703a8875a1eec4b2f73a181078ecb1f6ee4b
|
@@ -33,9 +33,8 @@ module GitHubPages
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def records
|
36
|
-
unicode_host = Addressable::IDNA.to_unicode(host)
|
37
36
|
@records ||= begin
|
38
|
-
get_caa_records(host) | get_caa_records(
|
37
|
+
get_caa_records(host) | get_caa_records(host.split(".").drop(1).join("."))
|
39
38
|
end
|
40
39
|
end
|
41
40
|
|
@@ -63,28 +63,27 @@ module GitHubPages
|
|
63
63
|
"43.249.72.133",
|
64
64
|
"43.249.73.133",
|
65
65
|
"43.249.74.133",
|
66
|
-
"43.249.75.133"
|
66
|
+
"43.249.75.133",
|
67
|
+
|
68
|
+
# 2018 Move to GitHub assigned IP space
|
69
|
+
"192.30.252.153",
|
70
|
+
"192.30.252.154"
|
67
71
|
].freeze
|
68
72
|
|
69
|
-
|
73
|
+
CURRENT_IP_ADDRESSES = %w(
|
70
74
|
185.199.108.153
|
71
75
|
185.199.109.153
|
72
76
|
185.199.110.153
|
73
77
|
185.199.111.153
|
74
78
|
).freeze
|
75
79
|
|
76
|
-
CURRENT_IP_ADDRESSES = [
|
77
|
-
"192.30.252.153",
|
78
|
-
"192.30.252.154",
|
79
|
-
*NEW_PRIMARY_IPS
|
80
|
-
].freeze
|
81
|
-
|
82
80
|
HASH_METHODS = %i[
|
83
81
|
host uri nameservers dns_resolves? proxied? cloudflare_ip?
|
84
82
|
fastly_ip? old_ip_address? a_record? cname_record?
|
85
83
|
mx_records_present? valid_domain? apex_domain? should_be_a_record?
|
86
84
|
cname_to_github_user_domain? cname_to_pages_dot_github_dot_com?
|
87
|
-
cname_to_fastly? pointed_to_github_pages_ip?
|
85
|
+
cname_to_fastly? pointed_to_github_pages_ip?
|
86
|
+
non_github_pages_ip_present? pages_domain?
|
88
87
|
served_by_pages? valid? reason valid_domain? https?
|
89
88
|
enforces_https? https_error https_eligible? caa_error
|
90
89
|
].freeze
|
@@ -179,9 +178,14 @@ module GitHubPages
|
|
179
178
|
a_record? && CURRENT_IP_ADDRESSES.include?(dns.first.address.to_s)
|
180
179
|
end
|
181
180
|
|
182
|
-
#
|
183
|
-
def
|
184
|
-
|
181
|
+
# Are any of the domain's A records pointing elsewhere?
|
182
|
+
def non_github_pages_ip_present?
|
183
|
+
return unless dns?
|
184
|
+
a_records = dns.select { |answer| answer.type == Dnsruby::Types::A }
|
185
|
+
|
186
|
+
a_records.any? { |answer| !github_pages_ip?(answer.address.to_s) }
|
187
|
+
|
188
|
+
false
|
185
189
|
end
|
186
190
|
|
187
191
|
# Is the domain's first response a CNAME to a pages domain?
|
@@ -363,8 +367,9 @@ module GitHubPages
|
|
363
367
|
|
364
368
|
# Can an HTTPS certificate be issued for this domain?
|
365
369
|
def https_eligible?
|
366
|
-
(cname_to_github_user_domain? ||
|
367
|
-
!aaaa_record_present? &&
|
370
|
+
(cname_to_github_user_domain? || pointed_to_github_pages_ip?) &&
|
371
|
+
!aaaa_record_present? && !non_github_pages_ip_present? &&
|
372
|
+
caa.lets_encrypt_allowed?
|
368
373
|
end
|
369
374
|
|
370
375
|
# Any errors querying CAA records
|
@@ -457,6 +462,10 @@ module GitHubPages
|
|
457
462
|
def legacy_ip?(ip_addr)
|
458
463
|
LEGACY_IP_ADDRESSES.include?(ip_addr)
|
459
464
|
end
|
465
|
+
|
466
|
+
def github_pages_ip?(ip_addr)
|
467
|
+
CURRENT_IP_ADDRESSES.include?(ip_addr)
|
468
|
+
end
|
460
469
|
end
|
461
470
|
end
|
462
471
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: github-pages-health-check
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GitHub, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -234,7 +234,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
234
234
|
version: '0'
|
235
235
|
requirements: []
|
236
236
|
rubyforge_project:
|
237
|
-
rubygems_version: 2.7.
|
237
|
+
rubygems_version: 2.7.6
|
238
238
|
signing_key:
|
239
239
|
specification_version: 4
|
240
240
|
summary: Checks your GitHub Pages site for commons DNS configuration issues
|