nucleon 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/Gemfile +4 -8
  2. data/Gemfile.lock +0 -28
  3. data/README.rdoc +13 -5
  4. data/Rakefile +9 -1
  5. data/VERSION +1 -1
  6. data/bin/nucleon +55 -0
  7. data/lib/core/codes.rb +107 -0
  8. data/lib/core/config/collection.rb +57 -0
  9. data/lib/core/config/options.rb +70 -0
  10. data/lib/core/config.rb +342 -0
  11. data/lib/core/core.rb +54 -0
  12. data/lib/core/errors.rb +84 -0
  13. data/lib/core/facade.rb +283 -0
  14. data/lib/core/gems.rb +80 -0
  15. data/lib/core/manager.rb +594 -0
  16. data/lib/core/mixin/action/commit.rb +58 -0
  17. data/lib/core/mixin/action/project.rb +53 -0
  18. data/lib/core/mixin/action/push.rb +52 -0
  19. data/lib/core/mixin/config/collection.rb +53 -0
  20. data/lib/core/mixin/config/options.rb +39 -0
  21. data/lib/core/mixin/macro/object_interface.rb +361 -0
  22. data/lib/core/mixin/macro/plugin_interface.rb +380 -0
  23. data/lib/core/mixin/settings.rb +46 -0
  24. data/lib/core/mixin/sub_config.rb +148 -0
  25. data/lib/core/mod/hash.rb +29 -0
  26. data/lib/core/plugin/action.rb +371 -0
  27. data/lib/core/plugin/base.rb +313 -0
  28. data/lib/core/plugin/command.rb +98 -0
  29. data/lib/core/plugin/event.rb +53 -0
  30. data/lib/core/plugin/extension.rb +12 -0
  31. data/lib/core/plugin/project.rb +890 -0
  32. data/lib/core/plugin/template.rb +80 -0
  33. data/lib/core/plugin/translator.rb +38 -0
  34. data/lib/core/util/cli.rb +353 -0
  35. data/lib/core/util/console.rb +237 -0
  36. data/lib/core/util/data.rb +404 -0
  37. data/lib/core/util/disk.rb +114 -0
  38. data/lib/core/util/git.rb +43 -0
  39. data/lib/core/util/liquid.rb +17 -0
  40. data/lib/core/util/logger.rb +147 -0
  41. data/lib/core/util/package.rb +93 -0
  42. data/lib/core/util/shell.rb +239 -0
  43. data/lib/nucleon/action/add.rb +69 -0
  44. data/lib/nucleon/action/create.rb +52 -0
  45. data/lib/nucleon/action/extract.rb +49 -0
  46. data/lib/nucleon/action/remove.rb +51 -0
  47. data/lib/nucleon/action/save.rb +53 -0
  48. data/lib/nucleon/action/update.rb +37 -0
  49. data/lib/nucleon/command/bash.rb +146 -0
  50. data/lib/nucleon/event/regex.rb +52 -0
  51. data/lib/nucleon/project/git.rb +465 -0
  52. data/lib/nucleon/project/github.rb +108 -0
  53. data/lib/nucleon/template/json.rb +16 -0
  54. data/lib/nucleon/template/wrapper.rb +16 -0
  55. data/lib/nucleon/template/yaml.rb +16 -0
  56. data/lib/nucleon/translator/json.rb +27 -0
  57. data/lib/nucleon/translator/yaml.rb +27 -0
  58. data/lib/nucleon.rb +18 -15
  59. data/locales/en.yml +3 -132
  60. data/nucleon.gemspec +66 -27
  61. data/spec/core/util/console_spec.rb +489 -0
  62. metadata +109 -96
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nucleon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-02-19 00:00:00.000000000 Z
12
+ date: 2014-02-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: log4r
16
- requirement: &7340560 !ruby/object:Gem::Requirement
16
+ requirement: &7010740 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '1.1'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *7340560
24
+ version_requirements: *7010740
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: i18n
27
- requirement: &7340080 !ruby/object:Gem::Requirement
27
+ requirement: &7009520 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,54 +32,43 @@ dependencies:
32
32
  version: '0.6'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *7340080
35
+ version_requirements: *7009520
36
36
  - !ruby/object:Gem::Dependency
37
- name: deep_merge
38
- requirement: &7339600 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
41
- - - ~>
42
- - !ruby/object:Gem::Version
43
- version: '1.0'
44
- type: :runtime
45
- prerelease: false
46
- version_requirements: *7339600
47
- - !ruby/object:Gem::Dependency
48
- name: celluloid
49
- requirement: &7339120 !ruby/object:Gem::Requirement
37
+ name: rgen
38
+ requirement: &7264000 !ruby/object:Gem::Requirement
50
39
  none: false
51
40
  requirements:
52
41
  - - ~>
53
42
  - !ruby/object:Gem::Version
54
- version: '0.15'
43
+ version: '0.6'
55
44
  type: :runtime
56
45
  prerelease: false
57
- version_requirements: *7339120
46
+ version_requirements: *7264000
58
47
  - !ruby/object:Gem::Dependency
59
- name: sshkey
60
- requirement: &7338640 !ruby/object:Gem::Requirement
48
+ name: netrc
49
+ requirement: &7263120 !ruby/object:Gem::Requirement
61
50
  none: false
62
51
  requirements:
63
52
  - - ~>
64
53
  - !ruby/object:Gem::Version
65
- version: '1.6'
54
+ version: '0.7'
66
55
  type: :runtime
67
56
  prerelease: false
68
- version_requirements: *7338640
57
+ version_requirements: *7263120
69
58
  - !ruby/object:Gem::Dependency
70
- name: hiera
71
- requirement: &6646980 !ruby/object:Gem::Requirement
59
+ name: deep_merge
60
+ requirement: &7261980 !ruby/object:Gem::Requirement
72
61
  none: false
73
62
  requirements:
74
63
  - - ~>
75
64
  - !ruby/object:Gem::Version
76
- version: '1.3'
65
+ version: '1.0'
77
66
  type: :runtime
78
67
  prerelease: false
79
- version_requirements: *6646980
68
+ version_requirements: *7261980
80
69
  - !ruby/object:Gem::Dependency
81
70
  name: multi_json
82
- requirement: &6643780 !ruby/object:Gem::Requirement
71
+ requirement: &7261040 !ruby/object:Gem::Requirement
83
72
  none: false
84
73
  requirements:
85
74
  - - ~>
@@ -87,10 +76,10 @@ dependencies:
87
76
  version: '1.7'
88
77
  type: :runtime
89
78
  prerelease: false
90
- version_requirements: *6643780
79
+ version_requirements: *7261040
91
80
  - !ruby/object:Gem::Dependency
92
81
  name: grit
93
- requirement: &7763020 !ruby/object:Gem::Requirement
82
+ requirement: &7259580 !ruby/object:Gem::Requirement
94
83
  none: false
95
84
  requirements:
96
85
  - - ~>
@@ -98,10 +87,10 @@ dependencies:
98
87
  version: '2.5'
99
88
  type: :runtime
100
89
  prerelease: false
101
- version_requirements: *7763020
90
+ version_requirements: *7259580
102
91
  - !ruby/object:Gem::Dependency
103
92
  name: octokit
104
- requirement: &7762540 !ruby/object:Gem::Requirement
93
+ requirement: &7258620 !ruby/object:Gem::Requirement
105
94
  none: false
106
95
  requirements:
107
96
  - - ~>
@@ -109,65 +98,21 @@ dependencies:
109
98
  version: '2.7'
110
99
  type: :runtime
111
100
  prerelease: false
112
- version_requirements: *7762540
113
- - !ruby/object:Gem::Dependency
114
- name: netrc
115
- requirement: &7762060 !ruby/object:Gem::Requirement
116
- none: false
117
- requirements:
118
- - - ~>
119
- - !ruby/object:Gem::Version
120
- version: '0.7'
121
- type: :runtime
122
- prerelease: false
123
- version_requirements: *7762060
101
+ version_requirements: *7258620
124
102
  - !ruby/object:Gem::Dependency
125
- name: fog
126
- requirement: &7761580 !ruby/object:Gem::Requirement
127
- none: false
128
- requirements:
129
- - - ~>
130
- - !ruby/object:Gem::Version
131
- version: '1.20'
132
- type: :runtime
133
- prerelease: false
134
- version_requirements: *7761580
135
- - !ruby/object:Gem::Dependency
136
- name: rgen
137
- requirement: &7761100 !ruby/object:Gem::Requirement
138
- none: false
139
- requirements:
140
- - - ~>
141
- - !ruby/object:Gem::Version
142
- version: '0.6'
143
- type: :runtime
144
- prerelease: false
145
- version_requirements: *7761100
146
- - !ruby/object:Gem::Dependency
147
- name: facter
148
- requirement: &7760620 !ruby/object:Gem::Requirement
149
- none: false
150
- requirements:
151
- - - ~>
152
- - !ruby/object:Gem::Version
153
- version: '1.7'
154
- type: :runtime
155
- prerelease: false
156
- version_requirements: *7760620
157
- - !ruby/object:Gem::Dependency
158
- name: puppet
159
- requirement: &7760140 !ruby/object:Gem::Requirement
103
+ name: celluloid
104
+ requirement: &7257280 !ruby/object:Gem::Requirement
160
105
  none: false
161
106
  requirements:
162
107
  - - ~>
163
108
  - !ruby/object:Gem::Version
164
- version: '3.2'
109
+ version: '0.15'
165
110
  type: :runtime
166
111
  prerelease: false
167
- version_requirements: *7760140
112
+ version_requirements: *7257280
168
113
  - !ruby/object:Gem::Dependency
169
114
  name: bundler
170
- requirement: &7759660 !ruby/object:Gem::Requirement
115
+ requirement: &7256300 !ruby/object:Gem::Requirement
171
116
  none: false
172
117
  requirements:
173
118
  - - ~>
@@ -175,10 +120,10 @@ dependencies:
175
120
  version: '1.2'
176
121
  type: :development
177
122
  prerelease: false
178
- version_requirements: *7759660
123
+ version_requirements: *7256300
179
124
  - !ruby/object:Gem::Dependency
180
125
  name: jeweler
181
- requirement: &7759180 !ruby/object:Gem::Requirement
126
+ requirement: &7252940 !ruby/object:Gem::Requirement
182
127
  none: false
183
128
  requirements:
184
129
  - - ~>
@@ -186,10 +131,10 @@ dependencies:
186
131
  version: '2.0'
187
132
  type: :development
188
133
  prerelease: false
189
- version_requirements: *7759180
134
+ version_requirements: *7252940
190
135
  - !ruby/object:Gem::Dependency
191
136
  name: rspec
192
- requirement: &7758700 !ruby/object:Gem::Requirement
137
+ requirement: &7251340 !ruby/object:Gem::Requirement
193
138
  none: false
194
139
  requirements:
195
140
  - - ~>
@@ -197,10 +142,10 @@ dependencies:
197
142
  version: '2.10'
198
143
  type: :development
199
144
  prerelease: false
200
- version_requirements: *7758700
145
+ version_requirements: *7251340
201
146
  - !ruby/object:Gem::Dependency
202
147
  name: rdoc
203
- requirement: &7758220 !ruby/object:Gem::Requirement
148
+ requirement: &7249680 !ruby/object:Gem::Requirement
204
149
  none: false
205
150
  requirements:
206
151
  - - ~>
@@ -208,10 +153,10 @@ dependencies:
208
153
  version: '3.12'
209
154
  type: :development
210
155
  prerelease: false
211
- version_requirements: *7758220
156
+ version_requirements: *7249680
212
157
  - !ruby/object:Gem::Dependency
213
158
  name: yard
214
- requirement: &7757740 !ruby/object:Gem::Requirement
159
+ requirement: &7248340 !ruby/object:Gem::Requirement
215
160
  none: false
216
161
  requirements:
217
162
  - - ~>
@@ -219,11 +164,26 @@ dependencies:
219
164
  version: '0.8'
220
165
  type: :development
221
166
  prerelease: false
222
- version_requirements: *7757740
223
- description: Framework that provides a simple foundation for building distributively
224
- configured, extremely pluggable and extendable, and easily parallel Ruby applications
167
+ version_requirements: *7248340
168
+ description: ! '
169
+
170
+ A framework that provides a simple foundation for building Ruby applications that
171
+ are:
172
+
173
+
174
+ * Highly configurable (with both distributed and persistent configurations)
175
+
176
+ * Extremely pluggable and extendable
177
+
178
+ * Easily parallel
179
+
180
+
181
+ Note: This framework is still very early in development!
182
+
183
+ '
225
184
  email: adrian.webb@coralnexus.com
226
- executables: []
185
+ executables:
186
+ - nucleon
227
187
  extensions: []
228
188
  extra_rdoc_files:
229
189
  - LICENSE.txt
@@ -236,11 +196,64 @@ files:
236
196
  - README.rdoc
237
197
  - Rakefile
238
198
  - VERSION
199
+ - bin/nucleon
200
+ - lib/core/codes.rb
201
+ - lib/core/config.rb
202
+ - lib/core/config/collection.rb
203
+ - lib/core/config/options.rb
204
+ - lib/core/core.rb
205
+ - lib/core/errors.rb
206
+ - lib/core/facade.rb
207
+ - lib/core/gems.rb
208
+ - lib/core/manager.rb
209
+ - lib/core/mixin/action/commit.rb
210
+ - lib/core/mixin/action/project.rb
211
+ - lib/core/mixin/action/push.rb
212
+ - lib/core/mixin/config/collection.rb
213
+ - lib/core/mixin/config/options.rb
214
+ - lib/core/mixin/macro/object_interface.rb
215
+ - lib/core/mixin/macro/plugin_interface.rb
216
+ - lib/core/mixin/settings.rb
217
+ - lib/core/mixin/sub_config.rb
218
+ - lib/core/mod/hash.rb
219
+ - lib/core/plugin/action.rb
220
+ - lib/core/plugin/base.rb
221
+ - lib/core/plugin/command.rb
222
+ - lib/core/plugin/event.rb
223
+ - lib/core/plugin/extension.rb
224
+ - lib/core/plugin/project.rb
225
+ - lib/core/plugin/template.rb
226
+ - lib/core/plugin/translator.rb
227
+ - lib/core/util/cli.rb
228
+ - lib/core/util/console.rb
229
+ - lib/core/util/data.rb
230
+ - lib/core/util/disk.rb
231
+ - lib/core/util/git.rb
232
+ - lib/core/util/liquid.rb
233
+ - lib/core/util/logger.rb
234
+ - lib/core/util/package.rb
235
+ - lib/core/util/shell.rb
239
236
  - lib/nucleon.rb
237
+ - lib/nucleon/action/add.rb
238
+ - lib/nucleon/action/create.rb
239
+ - lib/nucleon/action/extract.rb
240
+ - lib/nucleon/action/remove.rb
241
+ - lib/nucleon/action/save.rb
242
+ - lib/nucleon/action/update.rb
243
+ - lib/nucleon/command/bash.rb
244
+ - lib/nucleon/event/regex.rb
245
+ - lib/nucleon/project/git.rb
246
+ - lib/nucleon/project/github.rb
247
+ - lib/nucleon/template/json.rb
248
+ - lib/nucleon/template/wrapper.rb
249
+ - lib/nucleon/template/yaml.rb
250
+ - lib/nucleon/translator/json.rb
251
+ - lib/nucleon/translator/yaml.rb
240
252
  - locales/en.yml
241
253
  - nucleon.gemspec
242
254
  - spec/coral_mock_input.rb
243
255
  - spec/coral_test_kernel.rb
256
+ - spec/core/util/console_spec.rb
244
257
  - spec/spec_helper.rb
245
258
  homepage: http://github.com/coralnexus/nucleon
246
259
  licenses: