boxen 3.0.0.beta1 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +7 -0
  2. data/.travis.yml +0 -1
  3. data/README.md +1 -1
  4. data/boxen.gemspec +13 -13
  5. data/lib/boxen/check.rb +39 -8
  6. data/lib/boxen/cli.rb +45 -19
  7. data/lib/boxen/config.rb +61 -43
  8. data/lib/boxen/flags.rb +282 -0
  9. data/lib/boxen/hook.rb +8 -15
  10. data/lib/boxen/hook/github_issue.rb +120 -0
  11. data/lib/boxen/hook/web.rb +56 -0
  12. data/lib/boxen/keychain.rb +1 -1
  13. data/lib/boxen/postflight/env.rb +1 -1
  14. data/lib/boxen/preflight.rb +7 -4
  15. data/lib/boxen/preflight/creds.rb +47 -8
  16. data/lib/boxen/preflight/identity.rb +0 -2
  17. data/lib/boxen/preflight/os.rb +6 -2
  18. data/lib/boxen/puppeteer.rb +121 -0
  19. data/lib/boxen/runner.rb +149 -0
  20. data/script/bootstrap +1 -1
  21. data/script/tests +0 -1
  22. data/test/boxen/test.rb +1 -1
  23. data/test/boxen_check_test.rb +55 -0
  24. data/test/boxen_cli_test.rb +31 -8
  25. data/test/boxen_config_test.rb +31 -1
  26. data/test/boxen_directories_test.rb +4 -4
  27. data/test/boxen_flags_test.rb +217 -0
  28. data/test/{postflight/boxen_postflight_github_issue_test.rb → boxen_hook_github_issue_test.rb} +82 -72
  29. data/test/{postflight/boxen_postflight_web_hook_test.rb → boxen_hook_web_test.rb} +11 -12
  30. data/test/{postflight/boxen_postflight_active_test.rb → boxen_postflight_active_test.rb} +3 -3
  31. data/test/{postflight/boxen_postflight_env_test.rb → boxen_postflight_env_test.rb} +0 -0
  32. data/test/boxen_preflight_creds_test.rb +177 -0
  33. data/test/{preflight/boxen_preflight_etc_my_cnf_test.rb → boxen_preflight_etc_my_cnf_test.rb} +1 -1
  34. data/test/{preflight/boxen_preflight_rvm_test.rb → boxen_preflight_rvm_test.rb} +1 -1
  35. data/test/boxen_puppeteer_test.rb +101 -0
  36. data/test/boxen_runner_test.rb +171 -0
  37. metadata +172 -251
  38. data/lib/boxen/command.rb +0 -142
  39. data/lib/boxen/command/help.rb +0 -40
  40. data/lib/boxen/command/preflight.rb +0 -38
  41. data/lib/boxen/command/project.rb +0 -49
  42. data/lib/boxen/command/project/install.rb +0 -33
  43. data/lib/boxen/command/run.rb +0 -199
  44. data/lib/boxen/command/service.rb +0 -61
  45. data/lib/boxen/command/service/disable.rb +0 -15
  46. data/lib/boxen/command/service/enable.rb +0 -15
  47. data/lib/boxen/command/service/restart.rb +0 -24
  48. data/lib/boxen/command/version.rb +0 -29
  49. data/lib/boxen/command_status.rb +0 -15
  50. data/lib/boxen/postflight/github_issue.rb +0 -124
  51. data/lib/boxen/postflight/hooks.rb +0 -16
  52. data/lib/boxen/postflight/web_hook.rb +0 -63
  53. data/lib/boxen/preflight/facts.rb +0 -36
  54. data/lib/boxen/preflight/homebrew.rb +0 -13
  55. data/lib/boxen/preflight/offline.rb +0 -33
  56. data/lib/boxen/preflight/update.rb +0 -109
  57. data/lib/boxen/util/logging.rb +0 -59
  58. data/lib/boxen/version.rb +0 -3
  59. data/lib/system_timer.rb +0 -13
  60. data/test/boxen_command_test.rb +0 -93
  61. data/test/boxen_hook_test.rb +0 -25
  62. data/test/command/help_test.rb +0 -49
  63. data/test/command/project/install_test.rb +0 -34
  64. data/test/command/project_test.rb +0 -32
  65. data/test/command/run_test.rb +0 -21
  66. data/test/command/service/disable_test.rb +0 -49
  67. data/test/command/service/enable_test.rb +0 -49
  68. data/test/command/service/restart_test.rb +0 -53
  69. data/test/command/service_test.rb +0 -55
  70. data/test/command/version_test.rb +0 -15
  71. data/test/preflight/boxen_preflight_creds_test.rb +0 -82
  72. data/test/preflight/boxen_preflight_homebrew_test.rb +0 -10
  73. data/test/system_timer.rb +0 -10
metadata CHANGED
@@ -1,242 +1,193 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: boxen
3
- version: !ruby/object:Gem::Version
4
- hash: -597667722
5
- prerelease: 6
6
- segments:
7
- - 3
8
- - 0
9
- - 0
10
- - beta
11
- - 1
12
- version: 3.0.0.beta1
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.1.0
13
5
  platform: ruby
14
- authors:
15
- - John Barnette
16
- - Will Farrington
17
- - David Goodlad
6
+ authors:
7
+ - Jacob Bednarz
18
8
  autorequire:
19
9
  bindir: bin
20
10
  cert_chain: []
21
-
22
- date: 2014-07-30 00:00:00 -07:00
23
- default_executable:
24
- dependencies:
25
- - !ruby/object:Gem::Dependency
11
+ date: 2017-09-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
26
14
  name: ansi
27
- prerelease: false
28
- requirement: &id001 !ruby/object:Gem::Requirement
29
- none: false
30
- requirements:
31
- - - ~>
32
- - !ruby/object:Gem::Version
33
- hash: 7
34
- segments:
35
- - 1
36
- - 4
37
- version: "1.4"
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.4'
38
20
  type: :runtime
39
- version_requirements: *id001
40
- - !ruby/object:Gem::Dependency
41
- name: hiera
42
21
  prerelease: false
43
- requirement: &id002 !ruby/object:Gem::Requirement
44
- none: false
45
- requirements:
46
- - - ~>
47
- - !ruby/object:Gem::Version
48
- hash: 15
49
- segments:
50
- - 1
51
- - 0
52
- version: "1.0"
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: hiera
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
53
34
  type: :runtime
54
- version_requirements: *id002
55
- - !ruby/object:Gem::Dependency
56
- name: highline
57
35
  prerelease: false
58
- requirement: &id003 !ruby/object:Gem::Requirement
59
- none: false
60
- requirements:
61
- - - ~>
62
- - !ruby/object:Gem::Version
63
- hash: 3
64
- segments:
65
- - 1
66
- - 6
67
- version: "1.6"
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: highline
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 1.6.0
68
48
  type: :runtime
69
- version_requirements: *id003
70
- - !ruby/object:Gem::Dependency
71
- name: json_pure
72
49
  prerelease: false
73
- requirement: &id004 !ruby/object:Gem::Requirement
74
- none: false
75
- requirements:
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 1.6.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: json_pure
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
76
59
  - - ">="
77
- - !ruby/object:Gem::Version
78
- hash: 5
79
- segments:
80
- - 1
81
- - 7
82
- - 7
60
+ - !ruby/object:Gem::Version
83
61
  version: 1.7.7
84
- - - <
85
- - !ruby/object:Gem::Version
86
- hash: 3
87
- segments:
88
- - 2
89
- - 0
90
- version: "2.0"
62
+ - - "<"
63
+ - !ruby/object:Gem::Version
64
+ version: '2.0'
91
65
  type: :runtime
92
- version_requirements: *id004
93
- - !ruby/object:Gem::Dependency
94
- name: librarian-puppet
95
66
  prerelease: false
96
- requirement: &id005 !ruby/object:Gem::Requirement
97
- none: false
98
- requirements:
99
- - - ~>
100
- - !ruby/object:Gem::Version
101
- hash: 23
102
- segments:
103
- - 1
104
- - 0
105
- - 0
106
- version: 1.0.0
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ version: 1.7.7
72
+ - - "<"
73
+ - !ruby/object:Gem::Version
74
+ version: '2.0'
75
+ - !ruby/object:Gem::Dependency
76
+ name: librarian-puppet
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '2.2'
107
82
  type: :runtime
108
- version_requirements: *id005
109
- - !ruby/object:Gem::Dependency
110
- name: octokit
111
83
  prerelease: false
112
- requirement: &id006 !ruby/object:Gem::Requirement
113
- none: false
114
- requirements:
115
- - - ~>
116
- - !ruby/object:Gem::Version
117
- hash: 13
118
- segments:
119
- - 2
120
- - 7
121
- version: "2.7"
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '2.2'
89
+ - !ruby/object:Gem::Dependency
90
+ name: octokit
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '2.7'
122
96
  - - ">="
123
- - !ruby/object:Gem::Version
124
- hash: 17
125
- segments:
126
- - 2
127
- - 7
128
- - 1
97
+ - !ruby/object:Gem::Version
129
98
  version: 2.7.1
130
99
  type: :runtime
131
- version_requirements: *id006
132
- - !ruby/object:Gem::Dependency
133
- name: puppet
134
100
  prerelease: false
135
- requirement: &id007 !ruby/object:Gem::Requirement
136
- none: false
137
- requirements:
138
- - - ~>
139
- - !ruby/object:Gem::Version
140
- hash: 7
141
- segments:
142
- - 3
143
- - 0
144
- version: "3.0"
101
+ version_requirements: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - "~>"
104
+ - !ruby/object:Gem::Version
105
+ version: '2.7'
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: 2.7.1
109
+ - !ruby/object:Gem::Dependency
110
+ name: puppet
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: '3.7'
145
116
  type: :runtime
146
- version_requirements: *id007
147
- - !ruby/object:Gem::Dependency
148
- name: minitest
149
117
  prerelease: false
150
- requirement: &id008 !ruby/object:Gem::Requirement
151
- none: false
152
- requirements:
153
- - - ~>
154
- - !ruby/object:Gem::Version
155
- hash: 31
156
- segments:
157
- - 5
158
- - 0
159
- version: "5.0"
118
+ version_requirements: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
121
+ - !ruby/object:Gem::Version
122
+ version: '3.7'
123
+ - !ruby/object:Gem::Dependency
124
+ name: minitest
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - '='
128
+ - !ruby/object:Gem::Version
129
+ version: 4.4.0
160
130
  type: :development
161
- version_requirements: *id008
162
- - !ruby/object:Gem::Dependency
163
- name: mocha
164
131
  prerelease: false
165
- requirement: &id009 !ruby/object:Gem::Requirement
166
- none: false
167
- requirements:
168
- - - ~>
169
- - !ruby/object:Gem::Version
170
- hash: 17
171
- segments:
172
- - 0
173
- - 13
174
- version: "0.13"
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - '='
135
+ - !ruby/object:Gem::Version
136
+ version: 4.4.0
137
+ - !ruby/object:Gem::Dependency
138
+ name: mocha
139
+ requirement: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - "~>"
142
+ - !ruby/object:Gem::Version
143
+ version: '0.13'
175
144
  type: :development
176
- version_requirements: *id009
145
+ prerelease: false
146
+ version_requirements: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - "~>"
149
+ - !ruby/object:Gem::Version
150
+ version: '0.13'
177
151
  description: Manage Mac development boxes with love (and Puppet).
178
- email:
179
- - jbarnette@github.com
180
- - wfarr@github.com
181
- - dgoodlad@github.com
182
- executables:
183
- - boxen
152
+ email:
153
+ - jacob.bednarz@gmail.com
154
+ executables: []
184
155
  extensions: []
185
-
186
156
  extra_rdoc_files: []
187
-
188
- files:
189
- - .gitignore
190
- - .travis.yml
157
+ files:
158
+ - ".gitignore"
159
+ - ".travis.yml"
191
160
  - Gemfile
192
161
  - LICENSE
193
162
  - README.md
194
- - bin/boxen
195
163
  - boxen.gemspec
196
164
  - lib/boxen/check.rb
197
165
  - lib/boxen/checkout.rb
198
166
  - lib/boxen/cli.rb
199
- - lib/boxen/command.rb
200
- - lib/boxen/command/help.rb
201
- - lib/boxen/command/preflight.rb
202
- - lib/boxen/command/project.rb
203
- - lib/boxen/command/project/install.rb
204
- - lib/boxen/command/run.rb
205
- - lib/boxen/command/service.rb
206
- - lib/boxen/command/service/disable.rb
207
- - lib/boxen/command/service/enable.rb
208
- - lib/boxen/command/service/restart.rb
209
- - lib/boxen/command/version.rb
210
- - lib/boxen/command_status.rb
211
167
  - lib/boxen/config.rb
212
168
  - lib/boxen/error.rb
169
+ - lib/boxen/flags.rb
213
170
  - lib/boxen/hook.rb
171
+ - lib/boxen/hook/github_issue.rb
172
+ - lib/boxen/hook/web.rb
214
173
  - lib/boxen/keychain.rb
215
174
  - lib/boxen/postflight.rb
216
175
  - lib/boxen/postflight/active.rb
217
176
  - lib/boxen/postflight/env.rb
218
- - lib/boxen/postflight/github_issue.rb
219
- - lib/boxen/postflight/hooks.rb
220
- - lib/boxen/postflight/web_hook.rb
221
177
  - lib/boxen/preflight.rb
222
178
  - lib/boxen/preflight/creds.rb
223
179
  - lib/boxen/preflight/directories.rb
224
180
  - lib/boxen/preflight/etc_my_cnf.rb
225
- - lib/boxen/preflight/facts.rb
226
- - lib/boxen/preflight/homebrew.rb
227
181
  - lib/boxen/preflight/identity.rb
228
- - lib/boxen/preflight/offline.rb
229
182
  - lib/boxen/preflight/os.rb
230
183
  - lib/boxen/preflight/rbenv.rb
231
184
  - lib/boxen/preflight/rvm.rb
232
- - lib/boxen/preflight/update.rb
233
185
  - lib/boxen/project.rb
186
+ - lib/boxen/puppeteer.rb
187
+ - lib/boxen/runner.rb
234
188
  - lib/boxen/service.rb
235
189
  - lib/boxen/util.rb
236
- - lib/boxen/util/logging.rb
237
- - lib/boxen/version.rb
238
190
  - lib/facter/boxen.rb
239
- - lib/system_timer.rb
240
191
  - script/Boxen
241
192
  - script/bootstrap
242
193
  - script/build-keychain-helper
@@ -244,101 +195,71 @@ files:
244
195
  - script/tests
245
196
  - src/keychain-helper.c
246
197
  - test/boxen/test.rb
198
+ - test/boxen_check_test.rb
247
199
  - test/boxen_checkout_test.rb
248
200
  - test/boxen_cli_test.rb
249
- - test/boxen_command_test.rb
250
201
  - test/boxen_config_test.rb
251
202
  - test/boxen_directories_test.rb
252
- - test/boxen_hook_test.rb
203
+ - test/boxen_flags_test.rb
204
+ - test/boxen_hook_github_issue_test.rb
205
+ - test/boxen_hook_web_test.rb
253
206
  - test/boxen_keychain_test.rb
207
+ - test/boxen_postflight_active_test.rb
208
+ - test/boxen_postflight_env_test.rb
209
+ - test/boxen_preflight_creds_test.rb
210
+ - test/boxen_preflight_etc_my_cnf_test.rb
211
+ - test/boxen_preflight_rvm_test.rb
254
212
  - test/boxen_project_test.rb
213
+ - test/boxen_puppeteer_test.rb
214
+ - test/boxen_runner_test.rb
255
215
  - test/boxen_service_test.rb
256
216
  - test/boxen_util_test.rb
257
- - test/command/help_test.rb
258
- - test/command/project/install_test.rb
259
- - test/command/project_test.rb
260
- - test/command/run_test.rb
261
- - test/command/service/disable_test.rb
262
- - test/command/service/enable_test.rb
263
- - test/command/service/restart_test.rb
264
- - test/command/service_test.rb
265
- - test/command/version_test.rb
266
217
  - test/fixtures/repo/modules/projects/manifests/first-project.pp
267
218
  - test/fixtures/repo/modules/projects/manifests/second-project.pp
268
- - test/postflight/boxen_postflight_active_test.rb
269
- - test/postflight/boxen_postflight_env_test.rb
270
- - test/postflight/boxen_postflight_github_issue_test.rb
271
- - test/postflight/boxen_postflight_web_hook_test.rb
272
- - test/preflight/boxen_preflight_creds_test.rb
273
- - test/preflight/boxen_preflight_etc_my_cnf_test.rb
274
- - test/preflight/boxen_preflight_homebrew_test.rb
275
- - test/preflight/boxen_preflight_rvm_test.rb
276
- - test/system_timer.rb
277
- has_rdoc: true
278
219
  homepage: https://github.com/boxen/boxen
279
- licenses: []
280
-
220
+ licenses:
221
+ - MIT
222
+ metadata: {}
281
223
  post_install_message:
282
224
  rdoc_options: []
283
-
284
- require_paths:
225
+ require_paths:
285
226
  - lib
286
- required_ruby_version: !ruby/object:Gem::Requirement
287
- none: false
288
- requirements:
227
+ required_ruby_version: !ruby/object:Gem::Requirement
228
+ requirements:
229
+ - - ">="
230
+ - !ruby/object:Gem::Version
231
+ version: '0'
232
+ required_rubygems_version: !ruby/object:Gem::Requirement
233
+ requirements:
289
234
  - - ">="
290
- - !ruby/object:Gem::Version
291
- hash: 3
292
- segments:
293
- - 0
294
- version: "0"
295
- required_rubygems_version: !ruby/object:Gem::Requirement
296
- none: false
297
- requirements:
298
- - - ">"
299
- - !ruby/object:Gem::Version
300
- hash: 25
301
- segments:
302
- - 1
303
- - 3
304
- - 1
305
- version: 1.3.1
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
306
237
  requirements: []
307
-
308
238
  rubyforge_project:
309
- rubygems_version: 1.6.2
239
+ rubygems_version: 2.5.1
310
240
  signing_key:
311
- specification_version: 3
241
+ specification_version: 4
312
242
  summary: You know, for laptops and stuff.
313
- test_files:
243
+ test_files:
314
244
  - test/boxen/test.rb
245
+ - test/boxen_check_test.rb
315
246
  - test/boxen_checkout_test.rb
316
247
  - test/boxen_cli_test.rb
317
- - test/boxen_command_test.rb
318
248
  - test/boxen_config_test.rb
319
249
  - test/boxen_directories_test.rb
320
- - test/boxen_hook_test.rb
250
+ - test/boxen_flags_test.rb
251
+ - test/boxen_hook_github_issue_test.rb
252
+ - test/boxen_hook_web_test.rb
321
253
  - test/boxen_keychain_test.rb
254
+ - test/boxen_postflight_active_test.rb
255
+ - test/boxen_postflight_env_test.rb
256
+ - test/boxen_preflight_creds_test.rb
257
+ - test/boxen_preflight_etc_my_cnf_test.rb
258
+ - test/boxen_preflight_rvm_test.rb
322
259
  - test/boxen_project_test.rb
260
+ - test/boxen_puppeteer_test.rb
261
+ - test/boxen_runner_test.rb
323
262
  - test/boxen_service_test.rb
324
263
  - test/boxen_util_test.rb
325
- - test/command/help_test.rb
326
- - test/command/project/install_test.rb
327
- - test/command/project_test.rb
328
- - test/command/run_test.rb
329
- - test/command/service/disable_test.rb
330
- - test/command/service/enable_test.rb
331
- - test/command/service/restart_test.rb
332
- - test/command/service_test.rb
333
- - test/command/version_test.rb
334
264
  - test/fixtures/repo/modules/projects/manifests/first-project.pp
335
265
  - test/fixtures/repo/modules/projects/manifests/second-project.pp
336
- - test/postflight/boxen_postflight_active_test.rb
337
- - test/postflight/boxen_postflight_env_test.rb
338
- - test/postflight/boxen_postflight_github_issue_test.rb
339
- - test/postflight/boxen_postflight_web_hook_test.rb
340
- - test/preflight/boxen_preflight_creds_test.rb
341
- - test/preflight/boxen_preflight_etc_my_cnf_test.rb
342
- - test/preflight/boxen_preflight_homebrew_test.rb
343
- - test/preflight/boxen_preflight_rvm_test.rb
344
- - test/system_timer.rb