github-pages-health-check 1.17.0 → 1.17.7
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: e961f88294ef76b14d92f54148d7945f53b6530fca559f6bbc2293791009a1aa
|
4
|
+
data.tar.gz: 031ae5026c940269ef7f6c76440acb3b20ee8c4df284280877778d4f8554a31c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ae56fb03f358257dd708d28e8241e57bb706efe4491794aaaf23c5e0fd6f74c9bc7e052d70d6c407edf9e1b9126bad029c4b4c2076208765d57a57301f2ee78b
|
7
|
+
data.tar.gz: 39902634d23d7d69b110dbe17f2ae6fa5f668628e3829c0c816bffe46143320d531bd23f098612c87f480ec416e8ca754125eaec5f58ba364ff2496c0798236d
|
@@ -0,0 +1,15 @@
|
|
1
|
+
version: 2
|
2
|
+
updates:
|
3
|
+
- package-ecosystem: bundler
|
4
|
+
directory: "/"
|
5
|
+
schedule:
|
6
|
+
interval: daily
|
7
|
+
time: "10:00"
|
8
|
+
timezone: Europe/Vienna
|
9
|
+
pull-request-branch-name:
|
10
|
+
separator: "-"
|
11
|
+
open-pull-requests-limit: 99
|
12
|
+
allow:
|
13
|
+
- dependency-type: direct
|
14
|
+
- dependency-type: indirect
|
15
|
+
rebase-strategy: disabled
|
data/config/cloudflare-ips.txt
CHANGED
data/config/fastly-ips.txt
CHANGED
@@ -19,6 +19,6 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.add_dependency("addressable", "~> 2.3")
|
20
20
|
s.add_dependency("dnsruby", "~> 1.60")
|
21
21
|
s.add_dependency("octokit", "~> 4.0")
|
22
|
-
s.add_dependency("public_suffix", ">=
|
22
|
+
s.add_dependency("public_suffix", ">= 3.0", "< 5.0")
|
23
23
|
s.add_dependency("typhoeus", "~> 1.3")
|
24
24
|
end
|
@@ -85,7 +85,7 @@ module GitHubPages
|
|
85
85
|
cname_to_fastly? pointed_to_github_pages_ip?
|
86
86
|
non_github_pages_ip_present? pages_domain?
|
87
87
|
served_by_pages? valid? reason valid_domain? https?
|
88
|
-
enforces_https? https_error https_eligible? caa_error
|
88
|
+
enforces_https? https_error https_eligible? caa_error dns_zone_soa? dns_zone_ns?
|
89
89
|
].freeze
|
90
90
|
|
91
91
|
def self.redundant(host)
|
@@ -164,7 +164,10 @@ module GitHubPages
|
|
164
164
|
# Is this domain an apex domain, meaning a CNAME would be innapropriate
|
165
165
|
def apex_domain?
|
166
166
|
return @apex_domain if defined?(@apex_domain)
|
167
|
-
|
167
|
+
|
168
|
+
return false unless valid_domain?
|
169
|
+
|
170
|
+
return true if dns_zone_soa? && dns_zone_ns?
|
168
171
|
|
169
172
|
# PublicSuffix.domain pulls out the apex-level domain name.
|
170
173
|
# E.g. PublicSuffix.domain("techblog.netflix.com") # => "netflix.com"
|
@@ -177,6 +180,30 @@ module GitHubPages
|
|
177
180
|
:ignore_private => true) == unicode_host
|
178
181
|
end
|
179
182
|
|
183
|
+
#
|
184
|
+
# Does the domain have an associated SOA record?
|
185
|
+
#
|
186
|
+
def dns_zone_soa?
|
187
|
+
return @soa_records if defined?(@soa_records)
|
188
|
+
return false unless dns?
|
189
|
+
|
190
|
+
@soa_records = dns.any? do |answer|
|
191
|
+
answer.type == Dnsruby::Types::SOA && answer.name.to_s == host
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
#
|
196
|
+
# Does the domain have assoicated NS records?
|
197
|
+
#
|
198
|
+
def dns_zone_ns?
|
199
|
+
return @ns_records if defined?(@ns_records)
|
200
|
+
return false unless dns?
|
201
|
+
|
202
|
+
@ns_records = dns.any? do |answer|
|
203
|
+
answer.type == Dnsruby::Types::NS && answer.name.to_s == host
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
180
207
|
# Should the domain use an A record?
|
181
208
|
def should_be_a_record?
|
182
209
|
!pages_io_domain? && (apex_domain? || mx_records_present?)
|
@@ -278,7 +305,9 @@ module GitHubPages
|
|
278
305
|
Dnsruby::Types::A,
|
279
306
|
Dnsruby::Types::AAAA,
|
280
307
|
Dnsruby::Types::CNAME,
|
281
|
-
Dnsruby::Types::MX
|
308
|
+
Dnsruby::Types::MX,
|
309
|
+
Dnsruby::Types::NS,
|
310
|
+
Dnsruby::Types::SOA
|
282
311
|
].freeze
|
283
312
|
|
284
313
|
# Returns an array of DNS answers
|
@@ -339,6 +368,8 @@ module GitHubPages
|
|
339
368
|
# The domain to which this domain's CNAME resolves
|
340
369
|
# Returns nil if the domain is not a CNAME
|
341
370
|
def cname
|
371
|
+
return unless dns?
|
372
|
+
|
342
373
|
cnames = dns.take_while { |answer| answer.type == Dnsruby::Types::CNAME }
|
343
374
|
return if cnames.empty?
|
344
375
|
|
@@ -356,7 +387,6 @@ module GitHubPages
|
|
356
387
|
return unless dns_resolves?
|
357
388
|
|
358
389
|
@served_by_pages = begin
|
359
|
-
return false unless response.mock? || response.return_code == :ok
|
360
390
|
return true if response.headers["Server"] == "GitHub.com"
|
361
391
|
|
362
392
|
# Typhoeus mangles the case of the header, compare insensitively
|
@@ -406,7 +436,7 @@ module GitHubPages
|
|
406
436
|
|
407
437
|
# Any errors querying CAA records
|
408
438
|
def caa_error
|
409
|
-
return nil unless caa
|
439
|
+
return nil unless caa&.errored?
|
410
440
|
|
411
441
|
caa.error.class.name
|
412
442
|
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.17.
|
4
|
+
version: 1.17.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GitHub, Inc.
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-08-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -58,7 +58,7 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: '3.0'
|
62
62
|
- - "<"
|
63
63
|
- !ruby/object:Gem::Version
|
64
64
|
version: '5.0'
|
@@ -68,7 +68,7 @@ dependencies:
|
|
68
68
|
requirements:
|
69
69
|
- - ">="
|
70
70
|
- !ruby/object:Gem::Version
|
71
|
-
version:
|
71
|
+
version: '3.0'
|
72
72
|
- - "<"
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '5.0'
|
@@ -93,6 +93,7 @@ extensions: []
|
|
93
93
|
extra_rdoc_files: []
|
94
94
|
files:
|
95
95
|
- ".dockerignore"
|
96
|
+
- ".github/dependabot.yml"
|
96
97
|
- ".github/workflows/push-cibuild.yml"
|
97
98
|
- ".gitignore"
|
98
99
|
- ".rspec"
|
@@ -145,7 +146,7 @@ homepage: https://github.com/github/github-pages-health-check
|
|
145
146
|
licenses:
|
146
147
|
- MIT
|
147
148
|
metadata: {}
|
148
|
-
post_install_message:
|
149
|
+
post_install_message:
|
149
150
|
rdoc_options: []
|
150
151
|
require_paths:
|
151
152
|
- lib
|
@@ -161,7 +162,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
161
162
|
version: '0'
|
162
163
|
requirements: []
|
163
164
|
rubygems_version: 3.1.2
|
164
|
-
signing_key:
|
165
|
+
signing_key:
|
165
166
|
specification_version: 4
|
166
167
|
summary: Checks your GitHub Pages site for commons DNS configuration issues
|
167
168
|
test_files: []
|