letsencrypt_webfaction 1.1.6 → 1.1.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
  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