boxen23 3.1.3a

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 (63) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +11 -0
  3. data/.travis.yml +6 -0
  4. data/Gemfile +2 -0
  5. data/LICENSE +20 -0
  6. data/README.md +50 -0
  7. data/boxen.gemspec +29 -0
  8. data/lib/boxen/check.rb +72 -0
  9. data/lib/boxen/checkout.rb +25 -0
  10. data/lib/boxen/cli.rb +61 -0
  11. data/lib/boxen/config.rb +345 -0
  12. data/lib/boxen/error.rb +4 -0
  13. data/lib/boxen/flags.rb +291 -0
  14. data/lib/boxen/hook.rb +47 -0
  15. data/lib/boxen/hook/github_issue.rb +120 -0
  16. data/lib/boxen/hook/web.rb +56 -0
  17. data/lib/boxen/keychain.rb +61 -0
  18. data/lib/boxen/postflight.rb +13 -0
  19. data/lib/boxen/postflight/active.rb +16 -0
  20. data/lib/boxen/postflight/env.rb +29 -0
  21. data/lib/boxen/preflight.rb +13 -0
  22. data/lib/boxen/preflight/creds.rb +149 -0
  23. data/lib/boxen/preflight/directories.rb +32 -0
  24. data/lib/boxen/preflight/etc_my_cnf.rb +12 -0
  25. data/lib/boxen/preflight/identity.rb +16 -0
  26. data/lib/boxen/preflight/os.rb +33 -0
  27. data/lib/boxen/preflight/rbenv.rb +12 -0
  28. data/lib/boxen/preflight/rvm.rb +12 -0
  29. data/lib/boxen/project.rb +20 -0
  30. data/lib/boxen/puppeteer.rb +122 -0
  31. data/lib/boxen/runner.rb +149 -0
  32. data/lib/boxen/service.rb +58 -0
  33. data/lib/boxen/util.rb +19 -0
  34. data/lib/facter/boxen.rb +34 -0
  35. data/script/Boxen +0 -0
  36. data/script/bootstrap +7 -0
  37. data/script/build-keychain-helper +6 -0
  38. data/script/release +38 -0
  39. data/script/tests +10 -0
  40. data/src/keychain-helper.c +85 -0
  41. data/test/boxen/test.rb +7 -0
  42. data/test/boxen_check_test.rb +55 -0
  43. data/test/boxen_checkout_test.rb +42 -0
  44. data/test/boxen_cli_test.rb +39 -0
  45. data/test/boxen_config_test.rb +400 -0
  46. data/test/boxen_directories_test.rb +40 -0
  47. data/test/boxen_flags_test.rb +223 -0
  48. data/test/boxen_hook_github_issue_test.rb +294 -0
  49. data/test/boxen_hook_web_test.rb +58 -0
  50. data/test/boxen_keychain_test.rb +21 -0
  51. data/test/boxen_postflight_active_test.rb +29 -0
  52. data/test/boxen_postflight_env_test.rb +6 -0
  53. data/test/boxen_preflight_creds_test.rb +177 -0
  54. data/test/boxen_preflight_etc_my_cnf_test.rb +10 -0
  55. data/test/boxen_preflight_rvm_test.rb +10 -0
  56. data/test/boxen_project_test.rb +14 -0
  57. data/test/boxen_puppeteer_test.rb +101 -0
  58. data/test/boxen_runner_test.rb +171 -0
  59. data/test/boxen_service_test.rb +39 -0
  60. data/test/boxen_util_test.rb +21 -0
  61. data/test/fixtures/repo/modules/projects/manifests/first-project.pp +0 -0
  62. data/test/fixtures/repo/modules/projects/manifests/second-project.pp +0 -0
  63. metadata +257 -0
@@ -0,0 +1,39 @@
1
+ require "boxen/test"
2
+ require "boxen/service"
3
+
4
+ class BoxenServiceTest < Boxen::Test
5
+ def test_list
6
+ Dir.expects(:[]).with("/Library/LaunchDaemons/dev.*.plist").returns([
7
+ "/Library/LaunchDaemons/dev.test.plist",
8
+ "/Library/LaunchDaemons/dev.other.plist"
9
+ ])
10
+
11
+ services = Boxen::Service.list
12
+ assert_equal ['other', 'test'], services.collect(&:name).sort
13
+ end
14
+
15
+ def test_list_enabled
16
+ Boxen::Service.expects(:capture_output).with("sudo /bin/launchctl list").returns "foo bar dev.baz\nfoo bar bazz"
17
+ services = Boxen::Service.list_enabled
18
+ assert_equal ['baz'], services.collect(&:name)
19
+ end
20
+
21
+ def test_enable
22
+ service = Boxen::Service.new('blip')
23
+ Boxen::Util.expects(:sudo).with('/bin/launchctl', 'load', '-w',
24
+ '/Library/LaunchDaemons/dev.blip.plist')
25
+ service.enable
26
+ end
27
+
28
+ def test_disable
29
+ service = Boxen::Service.new('thing')
30
+ Boxen::Util.expects(:sudo).with('/bin/launchctl', 'unload', '-w',
31
+ '/Library/LaunchDaemons/dev.thing.plist')
32
+ service.disable
33
+ end
34
+
35
+ def test_to_s
36
+ service = Boxen::Service.new('blam')
37
+ assert_equal service.name, service.to_s
38
+ end
39
+ end
@@ -0,0 +1,21 @@
1
+ require "boxen/test"
2
+ require "boxen/util"
3
+
4
+ class BoxenUtilTest < Boxen::Test
5
+ def test_self_active?
6
+ ENV.expects(:include?).with("BOXEN_HOME").returns true
7
+ assert Boxen::Util.active?
8
+ end
9
+
10
+ def test_self_active_disabled
11
+ ENV.expects(:include?).with("BOXEN_HOME").returns false
12
+ refute Boxen::Util.active?
13
+ end
14
+
15
+ def test_self_sudo
16
+ Boxen::Util.expects(:system).
17
+ with "sudo", "-p", "Password for sudo: ", "echo", "foo"
18
+
19
+ Boxen::Util.sudo "echo", "foo"
20
+ end
21
+ end
metadata ADDED
@@ -0,0 +1,257 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: boxen23
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.1.3a
5
+ platform: ruby
6
+ authors:
7
+ - Jacob Bednarz
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-02-20 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ansi
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.5'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.5'
27
+ - !ruby/object:Gem::Dependency
28
+ name: hiera
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 3.4.2
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 3.4.2
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.7.8
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 1.7.8
55
+ - !ruby/object:Gem::Dependency
56
+ name: json_pure
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 1.8.3
62
+ - - "<"
63
+ - !ruby/object:Gem::Version
64
+ version: '2.0'
65
+ type: :runtime
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ version: 1.8.3
72
+ - - "<"
73
+ - !ruby/object:Gem::Version
74
+ version: '2.0'
75
+ - !ruby/object:Gem::Dependency
76
+ name: octokit
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '3.8'
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: 3.8.0
85
+ type: :runtime
86
+ prerelease: false
87
+ version_requirements: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - "~>"
90
+ - !ruby/object:Gem::Version
91
+ version: '3.8'
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: 3.8.0
95
+ - !ruby/object:Gem::Dependency
96
+ name: puppet
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '4.10'
102
+ type: :runtime
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '4.10'
109
+ - !ruby/object:Gem::Dependency
110
+ name: minitest
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - '='
114
+ - !ruby/object:Gem::Version
115
+ version: 4.4.0
116
+ type: :development
117
+ prerelease: false
118
+ version_requirements: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - '='
121
+ - !ruby/object:Gem::Version
122
+ version: 4.4.0
123
+ - !ruby/object:Gem::Dependency
124
+ name: mocha
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '1.2'
130
+ - - "<"
131
+ - !ruby/object:Gem::Version
132
+ version: 1.2.1
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - "~>"
138
+ - !ruby/object:Gem::Version
139
+ version: '1.2'
140
+ - - "<"
141
+ - !ruby/object:Gem::Version
142
+ version: 1.2.1
143
+ description: Manage Mac development boxes with love (and Puppet). for Ruby 2.3
144
+ email:
145
+ - jacob.bednarz@gmail.com
146
+ executables: []
147
+ extensions: []
148
+ extra_rdoc_files: []
149
+ files:
150
+ - ".gitignore"
151
+ - ".travis.yml"
152
+ - Gemfile
153
+ - LICENSE
154
+ - README.md
155
+ - boxen.gemspec
156
+ - lib/boxen/check.rb
157
+ - lib/boxen/checkout.rb
158
+ - lib/boxen/cli.rb
159
+ - lib/boxen/config.rb
160
+ - lib/boxen/error.rb
161
+ - lib/boxen/flags.rb
162
+ - lib/boxen/hook.rb
163
+ - lib/boxen/hook/github_issue.rb
164
+ - lib/boxen/hook/web.rb
165
+ - lib/boxen/keychain.rb
166
+ - lib/boxen/postflight.rb
167
+ - lib/boxen/postflight/active.rb
168
+ - lib/boxen/postflight/env.rb
169
+ - lib/boxen/preflight.rb
170
+ - lib/boxen/preflight/creds.rb
171
+ - lib/boxen/preflight/directories.rb
172
+ - lib/boxen/preflight/etc_my_cnf.rb
173
+ - lib/boxen/preflight/identity.rb
174
+ - lib/boxen/preflight/os.rb
175
+ - lib/boxen/preflight/rbenv.rb
176
+ - lib/boxen/preflight/rvm.rb
177
+ - lib/boxen/project.rb
178
+ - lib/boxen/puppeteer.rb
179
+ - lib/boxen/runner.rb
180
+ - lib/boxen/service.rb
181
+ - lib/boxen/util.rb
182
+ - lib/facter/boxen.rb
183
+ - script/Boxen
184
+ - script/bootstrap
185
+ - script/build-keychain-helper
186
+ - script/release
187
+ - script/tests
188
+ - src/keychain-helper.c
189
+ - test/boxen/test.rb
190
+ - test/boxen_check_test.rb
191
+ - test/boxen_checkout_test.rb
192
+ - test/boxen_cli_test.rb
193
+ - test/boxen_config_test.rb
194
+ - test/boxen_directories_test.rb
195
+ - test/boxen_flags_test.rb
196
+ - test/boxen_hook_github_issue_test.rb
197
+ - test/boxen_hook_web_test.rb
198
+ - test/boxen_keychain_test.rb
199
+ - test/boxen_postflight_active_test.rb
200
+ - test/boxen_postflight_env_test.rb
201
+ - test/boxen_preflight_creds_test.rb
202
+ - test/boxen_preflight_etc_my_cnf_test.rb
203
+ - test/boxen_preflight_rvm_test.rb
204
+ - test/boxen_project_test.rb
205
+ - test/boxen_puppeteer_test.rb
206
+ - test/boxen_runner_test.rb
207
+ - test/boxen_service_test.rb
208
+ - test/boxen_util_test.rb
209
+ - test/fixtures/repo/modules/projects/manifests/first-project.pp
210
+ - test/fixtures/repo/modules/projects/manifests/second-project.pp
211
+ homepage: https://github.com/boxen/boxen
212
+ licenses:
213
+ - MIT
214
+ metadata: {}
215
+ post_install_message:
216
+ rdoc_options: []
217
+ require_paths:
218
+ - lib
219
+ required_ruby_version: !ruby/object:Gem::Requirement
220
+ requirements:
221
+ - - ">="
222
+ - !ruby/object:Gem::Version
223
+ version: '0'
224
+ required_rubygems_version: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - ">"
227
+ - !ruby/object:Gem::Version
228
+ version: 1.3.1
229
+ requirements: []
230
+ rubyforge_project:
231
+ rubygems_version: 2.7.5
232
+ signing_key:
233
+ specification_version: 4
234
+ summary: You know, for laptops and stuff.
235
+ test_files:
236
+ - test/boxen/test.rb
237
+ - test/boxen_check_test.rb
238
+ - test/boxen_checkout_test.rb
239
+ - test/boxen_cli_test.rb
240
+ - test/boxen_config_test.rb
241
+ - test/boxen_directories_test.rb
242
+ - test/boxen_flags_test.rb
243
+ - test/boxen_hook_github_issue_test.rb
244
+ - test/boxen_hook_web_test.rb
245
+ - test/boxen_keychain_test.rb
246
+ - test/boxen_postflight_active_test.rb
247
+ - test/boxen_postflight_env_test.rb
248
+ - test/boxen_preflight_creds_test.rb
249
+ - test/boxen_preflight_etc_my_cnf_test.rb
250
+ - test/boxen_preflight_rvm_test.rb
251
+ - test/boxen_project_test.rb
252
+ - test/boxen_puppeteer_test.rb
253
+ - test/boxen_runner_test.rb
254
+ - test/boxen_service_test.rb
255
+ - test/boxen_util_test.rb
256
+ - test/fixtures/repo/modules/projects/manifests/first-project.pp
257
+ - test/fixtures/repo/modules/projects/manifests/second-project.pp