letsencrypt_http_challenge 0.0.1

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.
Files changed (59) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +15 -0
  3. data/LICENSE +22 -0
  4. data/README.md +109 -0
  5. data/Rakefile +37 -0
  6. data/app/assets/javascripts/letsencrypt_http_challenge/application.js +13 -0
  7. data/app/assets/stylesheets/letsencrypt_http_challenge/application.css +15 -0
  8. data/app/controllers/letsencrypt_http_challenge/application_controller.rb +27 -0
  9. data/app/helpers/letsencrypt_http_challenge/application_helper.rb +4 -0
  10. data/app/views/layouts/letsencrypt_http_challenge/application.html.erb +14 -0
  11. data/bin/rails +12 -0
  12. data/config/routes.rb +3 -0
  13. data/letsencrypt_http_challenge.gemspec +23 -0
  14. data/lib/letsencrypt_http_challenge/engine.rb +5 -0
  15. data/lib/letsencrypt_http_challenge/version.rb +3 -0
  16. data/lib/letsencrypt_http_challenge.rb +4 -0
  17. data/lib/tasks/letsencrypt_http_challenge_tasks.rake +87 -0
  18. data/test/controllers/application_controller_test.rb +27 -0
  19. data/test/dummy/README.rdoc +28 -0
  20. data/test/dummy/Rakefile +6 -0
  21. data/test/dummy/app/assets/javascripts/application.js +13 -0
  22. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  23. data/test/dummy/app/controllers/application_controller.rb +5 -0
  24. data/test/dummy/app/helpers/application_helper.rb +2 -0
  25. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  26. data/test/dummy/bin/bundle +3 -0
  27. data/test/dummy/bin/rails +4 -0
  28. data/test/dummy/bin/rake +4 -0
  29. data/test/dummy/bin/setup +29 -0
  30. data/test/dummy/config/application.rb +30 -0
  31. data/test/dummy/config/boot.rb +5 -0
  32. data/test/dummy/config/database.yml +25 -0
  33. data/test/dummy/config/environment.rb +5 -0
  34. data/test/dummy/config/environments/development.rb +41 -0
  35. data/test/dummy/config/environments/production.rb +79 -0
  36. data/test/dummy/config/environments/test.rb +42 -0
  37. data/test/dummy/config/initializers/assets.rb +11 -0
  38. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  39. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  40. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  41. data/test/dummy/config/initializers/inflections.rb +16 -0
  42. data/test/dummy/config/initializers/mime_types.rb +4 -0
  43. data/test/dummy/config/initializers/session_store.rb +3 -0
  44. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  45. data/test/dummy/config/locales/en.yml +23 -0
  46. data/test/dummy/config/routes.rb +4 -0
  47. data/test/dummy/config/secrets.yml +22 -0
  48. data/test/dummy/config.ru +4 -0
  49. data/test/dummy/db/development.sqlite3 +0 -0
  50. data/test/dummy/db/test.sqlite3 +0 -0
  51. data/test/dummy/log/development.log +508 -0
  52. data/test/dummy/log/test.log +243 -0
  53. data/test/dummy/public/404.html +67 -0
  54. data/test/dummy/public/422.html +67 -0
  55. data/test/dummy/public/500.html +66 -0
  56. data/test/dummy/public/favicon.ico +0 -0
  57. data/test/letsencrypt_http_challenge_test.rb +7 -0
  58. data/test/test_helper.rb +25 -0
  59. metadata +172 -0
@@ -0,0 +1,243 @@
1
+  (0.1ms) begin transaction
2
+ ----------------------------------------
3
+ LetsencryptHttpChallengeTest: test_truth
4
+ ----------------------------------------
5
+  (0.1ms) rollback transaction
6
+ ----------------------------------------
7
+ LetsencryptHttpChallengeTest: test_truth
8
+ ----------------------------------------
9
+ ----------------------------------------
10
+ LetsencryptHttpChallengeTest: test_truth
11
+ ----------------------------------------
12
+ -----------------------------------------
13
+ ApplicationControllerTest: test_get_index
14
+ -----------------------------------------
15
+ ----------------------------------------
16
+ LetsencryptHttpChallengeTest: test_truth
17
+ ----------------------------------------
18
+ -----------------------------------------
19
+ ApplicationControllerTest: test_get_index
20
+ -----------------------------------------
21
+ ----------------------------------------
22
+ LetsencryptHttpChallengeTest: test_truth
23
+ ----------------------------------------
24
+ ----------------------------------------
25
+ LetsencryptHttpChallengeTest: test_truth
26
+ ----------------------------------------
27
+ -----------------------------------------
28
+ ApplicationControllerTest: test_get_index
29
+ -----------------------------------------
30
+ ----------------------------------------
31
+ LetsencryptHttpChallengeTest: test_truth
32
+ ----------------------------------------
33
+ -----------------------------------------
34
+ ApplicationControllerTest: test_get_index
35
+ -----------------------------------------
36
+ -----------------------------------------
37
+ ApplicationControllerTest: test_get_index
38
+ -----------------------------------------
39
+ ----------------------------------------
40
+ LetsencryptHttpChallengeTest: test_truth
41
+ ----------------------------------------
42
+ ----------------------------------------
43
+ LetsencryptHttpChallengeTest: test_truth
44
+ ----------------------------------------
45
+ -----------------------------------------
46
+ ApplicationControllerTest: test_get_index
47
+ -----------------------------------------
48
+ ----------------------------------------
49
+ LetsencryptHttpChallengeTest: test_truth
50
+ ----------------------------------------
51
+ -----------------------------------------
52
+ ApplicationControllerTest: test_get_index
53
+ -----------------------------------------
54
+ ----------------------------------------
55
+ LetsencryptHttpChallengeTest: test_truth
56
+ ----------------------------------------
57
+ -------------------------------------------------------------------
58
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_get_index
59
+ -------------------------------------------------------------------
60
+ ----------------------------------------
61
+ LetsencryptHttpChallengeTest: test_truth
62
+ ----------------------------------------
63
+ -------------------------------------------------------------------
64
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_get_index
65
+ -------------------------------------------------------------------
66
+ ----------------------------------------
67
+ LetsencryptHttpChallengeTest: test_truth
68
+ ----------------------------------------
69
+ -------------------------------------------------------------------
70
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_get_index
71
+ -------------------------------------------------------------------
72
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
73
+ Parameters: {"challenge"=>"asdf"}
74
+ Challenge failed - The token must have at least 128 bits of entropy
75
+ Rendered text template (0.1ms)
76
+ Completed 400 Bad Request in 52ms (Views: 51.5ms)
77
+ ----------------------------------------
78
+ LetsencryptHttpChallengeTest: test_truth
79
+ ----------------------------------------
80
+ -------------------------------------------------------------------
81
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_get_index
82
+ -------------------------------------------------------------------
83
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
84
+ Parameters: {"challenge"=>"asdf"}
85
+ Challenge failed - The token must have at least 128 bits of entropy
86
+ Rendered text template (0.1ms)
87
+ Completed 400 Bad Request in 8ms (Views: 7.6ms)
88
+ ----------------------------------------
89
+ LetsencryptHttpChallengeTest: test_truth
90
+ ----------------------------------------
91
+ -------------------------------------------------------------------
92
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_get_index
93
+ -------------------------------------------------------------------
94
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
95
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
96
+ Rendered text template (0.0ms)
97
+ Completed 200 OK in 5ms (Views: 5.3ms)
98
+ -------------------------------------------------------------------
99
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_get_index
100
+ -------------------------------------------------------------------
101
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
102
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
103
+ Rendered text template (0.0ms)
104
+ Completed 200 OK in 5ms (Views: 4.5ms)
105
+ ----------------------------------------
106
+ LetsencryptHttpChallengeTest: test_truth
107
+ ----------------------------------------
108
+ ----------------------------------------
109
+ LetsencryptHttpChallengeTest: test_truth
110
+ ----------------------------------------
111
+ -----------------------------------------------------------------------------------------------------------------
112
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
113
+ -----------------------------------------------------------------------------------------------------------------
114
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
115
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
116
+ Rendered text template (0.0ms)
117
+ Completed 200 OK in 5ms (Views: 4.6ms)
118
+ --------------------------------------------------------------------------------------------
119
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
120
+ --------------------------------------------------------------------------------------------
121
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
122
+ Parameters: {"challenge"=>"58u1GLEG"}
123
+ Challenge failed - The token must have at least 128 bits of entropy
124
+ Rendered text template (0.0ms)
125
+ Completed 400 Bad Request in 0ms (Views: 0.2ms)
126
+ --------------------------------------------------------------------------
127
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
128
+ --------------------------------------------------------------------------
129
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
130
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
131
+ Challenge failed - The token must match between the challenge and the response
132
+ Rendered text template (0.0ms)
133
+ Completed 400 Bad Request in 0ms (Views: 0.2ms)
134
+ -----------------------------------------------------------------------------------------------------------------
135
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
136
+ -----------------------------------------------------------------------------------------------------------------
137
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
138
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
139
+ Rendered text template (0.0ms)
140
+ Completed 200 OK in 18ms (Views: 18.3ms)
141
+ --------------------------------------------------------------------------------------------
142
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
143
+ --------------------------------------------------------------------------------------------
144
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
145
+ Parameters: {"challenge"=>"58u1GLEG"}
146
+ Challenge failed - The token must have at least 128 bits of entropy
147
+ Rendered text template (0.0ms)
148
+ Completed 400 Bad Request in 0ms (Views: 0.3ms)
149
+ --------------------------------------------------------------------------
150
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
151
+ --------------------------------------------------------------------------
152
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
153
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
154
+ Challenge failed - The token must match between the challenge and the response
155
+ Rendered text template (0.0ms)
156
+ Completed 400 Bad Request in 0ms (Views: 0.3ms)
157
+ ----------------------------------------
158
+ LetsencryptHttpChallengeTest: test_truth
159
+ ----------------------------------------
160
+ -----------------------------------------------------------------------------------------------------------------
161
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
162
+ -----------------------------------------------------------------------------------------------------------------
163
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
164
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
165
+ Rendered text template (0.0ms)
166
+ Completed 200 OK in 25ms (Views: 24.9ms)
167
+ --------------------------------------------------------------------------------------------
168
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
169
+ --------------------------------------------------------------------------------------------
170
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
171
+ Parameters: {"challenge"=>"58u1GLEG"}
172
+ Challenge failed - The token must have at least 128 bits of entropy
173
+ Rendered text template (0.0ms)
174
+ Completed 400 Bad Request in 0ms (Views: 0.2ms)
175
+ --------------------------------------------------------------------------
176
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
177
+ --------------------------------------------------------------------------
178
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
179
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
180
+ Challenge failed - The token must match between the challenge and the response
181
+ Rendered text template (0.0ms)
182
+ Completed 400 Bad Request in 0ms (Views: 0.2ms)
183
+ ----------------------------------------
184
+ LetsencryptHttpChallengeTest: test_truth
185
+ ----------------------------------------
186
+ --------------------------------------------------------------------------------------------
187
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
188
+ --------------------------------------------------------------------------------------------
189
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
190
+ Parameters: {"challenge"=>"58u1GLEG"}
191
+ Challenge failed - The token must have at least 128 bits of entropy
192
+ Rendered text template (0.0ms)
193
+ Completed 400 Bad Request in 60ms (Views: 60.3ms)
194
+ --------------------------------------------------------------------------
195
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
196
+ --------------------------------------------------------------------------
197
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
198
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
199
+ Challenge failed - The token must match between the challenge and the response
200
+ Rendered text template (0.0ms)
201
+ Completed 400 Bad Request in 0ms (Views: 0.3ms)
202
+ -----------------------------------------------------------------------------------------------------------------
203
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
204
+ -----------------------------------------------------------------------------------------------------------------
205
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
206
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
207
+ Rendered text template (0.0ms)
208
+ Completed 200 OK in 0ms (Views: 0.2ms)
209
+ ----------------------------------------
210
+ LetsencryptHttpChallengeTest: test_truth
211
+ ----------------------------------------
212
+ ----------------------------------------
213
+ LetsencryptHttpChallengeTest: test_truth
214
+ ----------------------------------------
215
+ ----------------------------------------
216
+ LetsencryptHttpChallengeTest: test_truth
217
+ ----------------------------------------
218
+ ----------------------------------------
219
+ LetsencryptHttpChallengeTest: test_truth
220
+ ----------------------------------------
221
+ --------------------------------------------------------------------------
222
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
223
+ --------------------------------------------------------------------------
224
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
225
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
226
+ Challenge failed - The token must match between the challenge and the response
227
+ Rendered text template (0.0ms)
228
+ Completed 400 Bad Request in 17ms (Views: 16.4ms)
229
+ -----------------------------------------------------------------------------------------------------------------
230
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
231
+ -----------------------------------------------------------------------------------------------------------------
232
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
233
+ Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
234
+ Rendered text template (0.0ms)
235
+ Completed 200 OK in 0ms (Views: 0.2ms)
236
+ --------------------------------------------------------------------------------------------
237
+ LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
238
+ --------------------------------------------------------------------------------------------
239
+ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
240
+ Parameters: {"challenge"=>"58u1GLEG"}
241
+ Challenge failed - The token must have at least 128 bits of entropy
242
+ Rendered text template (0.0ms)
243
+ Completed 400 Bad Request in 0ms (Views: 0.2ms)
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The page you were looking for doesn't exist (404)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/404.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The page you were looking for doesn't exist.</h1>
62
+ <p>You may have mistyped the address or the page may have moved.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/422.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,66 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>We're sorry, but something went wrong (500)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/500.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>We're sorry, but something went wrong.</h1>
62
+ </div>
63
+ <p>If you are the application owner check the logs for more information.</p>
64
+ </div>
65
+ </body>
66
+ </html>
File without changes
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class LetsencryptHttpChallengeTest < ActiveSupport::TestCase
4
+ test "truth" do
5
+ assert_kind_of Module, LetsencryptHttpChallenge
6
+ end
7
+ end
@@ -0,0 +1,25 @@
1
+ # Configure Rails Environment
2
+ ENV["RAILS_ENV"] = "test"
3
+
4
+ # The .well-known/acme-challenge route will not be defined unless this environment variable is defined
5
+ ENV['LE_HTTP_CHALLENGE_RESPONSE'] = '58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU.VDnmZ7G7W4pPpHL_rTLA9SUPSN0qTwe876q2C2gpLLs'
6
+
7
+
8
+ require File.expand_path("../../test/dummy/config/environment.rb", __FILE__)
9
+ # ActiveRecord::Migrator.migrations_paths = [File.expand_path("../../test/dummy/db/migrate", __FILE__)]
10
+ # ActiveRecord::Migrator.migrations_paths << File.expand_path('../../db/migrate', __FILE__)
11
+ require "rails/test_help"
12
+
13
+ # Filter out Minitest backtrace while allowing backtrace from other libraries
14
+ # to be shown.
15
+ Minitest.backtrace_filter = Minitest::BacktraceFilter.new
16
+
17
+ # Load support files
18
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
19
+
20
+ # Load fixtures from the engine
21
+ # if ActiveSupport::TestCase.respond_to?(:fixture_path=)
22
+ # ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
23
+ # ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
24
+ # ActiveSupport::TestCase.fixtures :all
25
+ # end
metadata ADDED
@@ -0,0 +1,172 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: letsencrypt_http_challenge
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Luc Lussier
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-12-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: acme-client
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.2.2
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.2.2
41
+ description: A Rails engine that provides a response mechanism for Let's Encrypt ACME
42
+ - Simple HTTP - Identifier Validation Challenges on 12 factor apps like those deployed
43
+ on Heroku as well as the rake task to generate the certificate from your local machine.
44
+ email:
45
+ - luc.lussier@gmail.com
46
+ executables: []
47
+ extensions: []
48
+ extra_rdoc_files: []
49
+ files:
50
+ - Gemfile
51
+ - LICENSE
52
+ - README.md
53
+ - Rakefile
54
+ - app/assets/javascripts/letsencrypt_http_challenge/application.js
55
+ - app/assets/stylesheets/letsencrypt_http_challenge/application.css
56
+ - app/controllers/letsencrypt_http_challenge/application_controller.rb
57
+ - app/helpers/letsencrypt_http_challenge/application_helper.rb
58
+ - app/views/layouts/letsencrypt_http_challenge/application.html.erb
59
+ - bin/rails
60
+ - config/routes.rb
61
+ - letsencrypt_http_challenge.gemspec
62
+ - lib/letsencrypt_http_challenge.rb
63
+ - lib/letsencrypt_http_challenge/engine.rb
64
+ - lib/letsencrypt_http_challenge/version.rb
65
+ - lib/tasks/letsencrypt_http_challenge_tasks.rake
66
+ - test/controllers/application_controller_test.rb
67
+ - test/dummy/README.rdoc
68
+ - test/dummy/Rakefile
69
+ - test/dummy/app/assets/javascripts/application.js
70
+ - test/dummy/app/assets/stylesheets/application.css
71
+ - test/dummy/app/controllers/application_controller.rb
72
+ - test/dummy/app/helpers/application_helper.rb
73
+ - test/dummy/app/views/layouts/application.html.erb
74
+ - test/dummy/bin/bundle
75
+ - test/dummy/bin/rails
76
+ - test/dummy/bin/rake
77
+ - test/dummy/bin/setup
78
+ - test/dummy/config.ru
79
+ - test/dummy/config/application.rb
80
+ - test/dummy/config/boot.rb
81
+ - test/dummy/config/database.yml
82
+ - test/dummy/config/environment.rb
83
+ - test/dummy/config/environments/development.rb
84
+ - test/dummy/config/environments/production.rb
85
+ - test/dummy/config/environments/test.rb
86
+ - test/dummy/config/initializers/assets.rb
87
+ - test/dummy/config/initializers/backtrace_silencers.rb
88
+ - test/dummy/config/initializers/cookies_serializer.rb
89
+ - test/dummy/config/initializers/filter_parameter_logging.rb
90
+ - test/dummy/config/initializers/inflections.rb
91
+ - test/dummy/config/initializers/mime_types.rb
92
+ - test/dummy/config/initializers/session_store.rb
93
+ - test/dummy/config/initializers/wrap_parameters.rb
94
+ - test/dummy/config/locales/en.yml
95
+ - test/dummy/config/routes.rb
96
+ - test/dummy/config/secrets.yml
97
+ - test/dummy/db/development.sqlite3
98
+ - test/dummy/db/test.sqlite3
99
+ - test/dummy/log/development.log
100
+ - test/dummy/log/test.log
101
+ - test/dummy/public/404.html
102
+ - test/dummy/public/422.html
103
+ - test/dummy/public/500.html
104
+ - test/dummy/public/favicon.ico
105
+ - test/letsencrypt_http_challenge_test.rb
106
+ - test/test_helper.rb
107
+ homepage: https://github.com/datamolecule/letsencrypt_http_challenge
108
+ licenses:
109
+ - MIT
110
+ metadata: {}
111
+ post_install_message:
112
+ rdoc_options: []
113
+ require_paths:
114
+ - lib
115
+ required_ruby_version: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - ">="
118
+ - !ruby/object:Gem::Version
119
+ version: '0'
120
+ required_rubygems_version: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ requirements: []
126
+ rubyforge_project:
127
+ rubygems_version: 2.4.5.1
128
+ signing_key:
129
+ specification_version: 4
130
+ summary: Answer the Let's Encrypt ACME http challenge
131
+ test_files:
132
+ - test/controllers/application_controller_test.rb
133
+ - test/dummy/app/assets/javascripts/application.js
134
+ - test/dummy/app/assets/stylesheets/application.css
135
+ - test/dummy/app/controllers/application_controller.rb
136
+ - test/dummy/app/helpers/application_helper.rb
137
+ - test/dummy/app/views/layouts/application.html.erb
138
+ - test/dummy/bin/bundle
139
+ - test/dummy/bin/rails
140
+ - test/dummy/bin/rake
141
+ - test/dummy/bin/setup
142
+ - test/dummy/config/application.rb
143
+ - test/dummy/config/boot.rb
144
+ - test/dummy/config/database.yml
145
+ - test/dummy/config/environment.rb
146
+ - test/dummy/config/environments/development.rb
147
+ - test/dummy/config/environments/production.rb
148
+ - test/dummy/config/environments/test.rb
149
+ - test/dummy/config/initializers/assets.rb
150
+ - test/dummy/config/initializers/backtrace_silencers.rb
151
+ - test/dummy/config/initializers/cookies_serializer.rb
152
+ - test/dummy/config/initializers/filter_parameter_logging.rb
153
+ - test/dummy/config/initializers/inflections.rb
154
+ - test/dummy/config/initializers/mime_types.rb
155
+ - test/dummy/config/initializers/session_store.rb
156
+ - test/dummy/config/initializers/wrap_parameters.rb
157
+ - test/dummy/config/locales/en.yml
158
+ - test/dummy/config/routes.rb
159
+ - test/dummy/config/secrets.yml
160
+ - test/dummy/config.ru
161
+ - test/dummy/db/development.sqlite3
162
+ - test/dummy/db/test.sqlite3
163
+ - test/dummy/log/development.log
164
+ - test/dummy/log/test.log
165
+ - test/dummy/public/404.html
166
+ - test/dummy/public/422.html
167
+ - test/dummy/public/500.html
168
+ - test/dummy/public/favicon.ico
169
+ - test/dummy/Rakefile
170
+ - test/dummy/README.rdoc
171
+ - test/letsencrypt_http_challenge_test.rb
172
+ - test/test_helper.rb