github-pages-health-check 1.5.2 → 1.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/github-pages-health-check/caa.rb +7 -4
- data/lib/github-pages-health-check/domain.rb +14 -4
- data/lib/github-pages-health-check/version.rb +1 -1
- data/script/fmt +5 -0
- data/script/test +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8b652203571fcd28e71238157d64c7861ba3d3e1
|
4
|
+
data.tar.gz: e005dab3f20c5390bc9bbc955d3a5a4d822d0031
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b49caaa83fd1d02e3cb8b40673c71fcc127ab68475b9a7235d3a77919740f51abe49c6a6e85cbb61c7aa6e502a04fc4d9b3ac624f9b7372250f250f5f322baf6
|
7
|
+
data.tar.gz: f9c8c763608f4c09ccb5d0e4782f501c606a37ce179b29c231307231803ee4719f3e43b3b112b6c4b2284c09ed416d94bac726917ec32a91c0b56472ab9bdb67
|
@@ -36,16 +36,19 @@ module GitHubPages
|
|
36
36
|
private
|
37
37
|
|
38
38
|
def get_caa_records(domain)
|
39
|
+
query(domain).select { |r| r.type == "CAA" && r.property_tag == "issue" }
|
40
|
+
end
|
41
|
+
|
42
|
+
def query(domain)
|
39
43
|
resolver = Dnsruby::Resolver.new
|
40
44
|
resolver.retry_times = 2
|
41
45
|
resolver.query_timeout = 2
|
42
|
-
|
43
|
-
resolver.query(domain, "CAA", "IN")
|
46
|
+
begin
|
47
|
+
resolver.query(domain, "CAA", "IN").answer
|
44
48
|
rescue StandardError => e
|
45
49
|
@error = e
|
46
|
-
|
50
|
+
[]
|
47
51
|
end
|
48
|
-
nspack.answer.select { |r| r.type == "CAA" && r.property_tag == "issue" }
|
49
52
|
end
|
50
53
|
end
|
51
54
|
end
|
@@ -5,6 +5,11 @@ module GitHubPages
|
|
5
5
|
class Domain < Checkable
|
6
6
|
attr_reader :host
|
7
7
|
|
8
|
+
GITHUB_DATACENTER_ADDRESSES = %w(
|
9
|
+
192.30.252.153
|
10
|
+
192.30.252.154
|
11
|
+
).freeze
|
12
|
+
|
8
13
|
LEGACY_IP_ADDRESSES = [
|
9
14
|
# Legacy GitHub Datacenter
|
10
15
|
"207.97.227.245",
|
@@ -63,12 +68,16 @@ module GitHubPages
|
|
63
68
|
"43.249.72.133",
|
64
69
|
"43.249.73.133",
|
65
70
|
"43.249.74.133",
|
66
|
-
"43.249.75.133"
|
71
|
+
"43.249.75.133",
|
72
|
+
|
73
|
+
*GITHUB_DATACENTER_ADDRESSES
|
67
74
|
].freeze
|
68
75
|
|
69
76
|
CURRENT_IP_ADDRESSES = %w(
|
70
|
-
|
71
|
-
|
77
|
+
185.199.108.153
|
78
|
+
185.199.109.153
|
79
|
+
185.199.110.153
|
80
|
+
185.199.111.153
|
72
81
|
).freeze
|
73
82
|
|
74
83
|
HASH_METHODS = %i[
|
@@ -330,7 +339,8 @@ module GitHubPages
|
|
330
339
|
|
331
340
|
# Can an HTTPS certificate be issued for this domain?
|
332
341
|
def https_eligible?
|
333
|
-
(cname_to_github_user_domain? ||
|
342
|
+
(cname_to_github_user_domain? || pointed_to_github_pages_ip?) &&
|
343
|
+
caa.lets_encrypt_allowed?
|
334
344
|
end
|
335
345
|
|
336
346
|
# Any errors querying CAA records
|
data/script/fmt
ADDED
data/script/test
CHANGED
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.6.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-
|
11
|
+
date: 2018-04-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -208,6 +208,7 @@ files:
|
|
208
208
|
- script/check-cdn-ips
|
209
209
|
- script/cibuild
|
210
210
|
- script/console
|
211
|
+
- script/fmt
|
211
212
|
- script/release
|
212
213
|
- script/test
|
213
214
|
- script/update-cdn-ips
|