letsencrypt_webfaction 1.1.6 → 1.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 49a9118552a12e9d48c4d2f658cd1e3a4c4fd5c3
4
- data.tar.gz: a624bbc75b9e58430299075d8387a3e0479b3d72
3
+ metadata.gz: 24af7709e41cb05f35a0a884eb284a7a3bbb30a4
4
+ data.tar.gz: 3d1c3303455833a75fd5631899fd630c50541148
5
5
  SHA512:
6
- metadata.gz: d2867a2916c1f2bb0de599e836fcf25857a2609a4d372b2296e479be0872416fd0a74e5e04e076771eb1aec8a6d87d762f6de726e9b24fe72821091197794068
7
- data.tar.gz: 4a3d38f3824f189849fb7b4af96ba057d7359275055573b825110630165fbf30706a6bc4e88e7b1e490b90eb94bca58540973580e8c3f5efaea30b39aefaabed
6
+ metadata.gz: 624a345096ef14cb19c2259d7dc4d1746dbe156c275d835bd2a3987b71485514cb9a20a56548d12474f510e61c84a8a3932ca5eb6f080aa249b165d296fc80fe
7
+ data.tar.gz: 4435a224019ea95c1913c3ee0d040494066b6f0b79fd8b2ed431861e825560c6f1aa0a4870a3627a614a8b7b3ed5b615c7101ada3ea29e3544a8ca776daf1df6
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -1,3 +1,9 @@
1
+ v1.1.7
2
+
3
+ * Manually require fileutils, something formerly done automatically.
4
+ * Require Acme::Client 0.4.1 to fix `require` issue.
5
+ * Output improved help text in case of failure.
6
+
1
7
  v1.1.6
2
8
 
3
9
  * Fix issue with pulling in ActiveSupport when no longer needed.
@@ -2,4 +2,5 @@
2
2
 
3
3
  require 'letsencrypt_webfaction/application'
4
4
 
5
- LetsencryptWebfaction::Application.new(ARGV).run!
5
+ res = LetsencryptWebfaction::Application.new(ARGV).run!
6
+ exit(res ? 0 : 1)
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
28
28
 
29
29
  spec.required_ruby_version = '>= 2.1.0'
30
30
 
31
- spec.add_runtime_dependency 'acme-client', '>=0.4.0'
31
+ spec.add_runtime_dependency 'acme-client', '>=0.4.1'
32
32
  spec.add_runtime_dependency 'pony', '~> 1.11'
33
33
 
34
34
  spec.add_development_dependency 'bundler', '~> 1.11'
@@ -1,3 +1,3 @@
1
1
  module LetsencryptWebfaction
2
- VERSION = '1.1.6'.freeze
2
+ VERSION = '1.1.7'.freeze
3
3
  end
@@ -21,7 +21,7 @@ module LetsencryptWebfaction
21
21
  register_key!
22
22
 
23
23
  # Validate the domains.
24
- validator.validate!
24
+ return unless validator.validate!
25
25
 
26
26
  # Write the obtained certificates.
27
27
  certificate_writer.write!
@@ -1,3 +1,6 @@
1
+ require 'fileutils'
2
+ require 'pry'
3
+
1
4
  module LetsencryptWebfaction
2
5
  class DomainValidator
3
6
  def initialize(domains, client, public_dir)
@@ -11,15 +14,13 @@ module LetsencryptWebfaction
11
14
 
12
15
  challenges.each(&:request_verification)
13
16
 
14
- i = 0
15
- until all_challenges_valid? || i == 10
16
- # Wait a bit for the server to make the request, or really just blink, it should be fast.
17
+ 10.times do
18
+ return true if all_challenges_valid?
17
19
  sleep(1)
18
-
19
- i += 1
20
20
  end
21
21
 
22
- raise 'Failed to verify statuses in 10 seconds.' unless all_challenges_valid?
22
+ print_errors
23
+ false
23
24
  end
24
25
 
25
26
  private
@@ -45,5 +46,31 @@ module LetsencryptWebfaction
45
46
  File.write(File.join(@public_dir, challenge.filename), challenge.file_content)
46
47
  end
47
48
  end
49
+
50
+ def print_errors
51
+ validations = authorizations.map(&:domain).zip(challenges)
52
+ $stderr.puts 'Failed to verify statuses.'
53
+ validations.each { |tuple| Validation.new(*tuple).print_error }
54
+ end
55
+
56
+ class Validation
57
+ def initialize(domain, challenge)
58
+ @domain = domain
59
+ @challenge = challenge
60
+ end
61
+
62
+ def print_error
63
+ if @challenge.verify_status == 'valid'
64
+ $stderr.puts "#{@domain}: Success"
65
+ else
66
+ $stderr.puts "#{@domain}: #{@challenge.error['detail']}"
67
+ $stderr.puts "Make sure that you can access #{url}"
68
+ end
69
+ end
70
+
71
+ def url
72
+ "http://#{@domain}/#{@challenge.filename}"
73
+ end
74
+ end
48
75
  end
49
76
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: letsencrypt_webfaction
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.6
4
+ version: 1.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - William Johnston
@@ -30,7 +30,7 @@ cert_chain:
30
30
  urnVFSXSvmjoq2UEqNf39Ffw4ZJ2QYuxlOLEInXhf1Rij1+KYHwHoT6qaOmk+fgY
31
31
  XWr3WAp8Tv/ogSwGuBGWtsjMTEzbRxAJbRXQDFEMeXJAvzon0o6hUtU=
32
32
  -----END CERTIFICATE-----
33
- date: 2016-08-15 00:00:00.000000000 Z
33
+ date: 2016-08-18 00:00:00.000000000 Z
34
34
  dependencies:
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: acme-client
@@ -38,14 +38,14 @@ dependencies:
38
38
  requirements:
39
39
  - - ">="
40
40
  - !ruby/object:Gem::Version
41
- version: 0.4.0
41
+ version: 0.4.1
42
42
  type: :runtime
43
43
  prerelease: false
44
44
  version_requirements: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - ">="
47
47
  - !ruby/object:Gem::Version
48
- version: 0.4.0
48
+ version: 0.4.1
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: pony
51
51
  requirement: !ruby/object:Gem::Requirement
metadata.gz.sig CHANGED
Binary file