testlab 0.7.1 → 0.7.2

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.
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ree
1
+ ruby-1.9.3
data/README.md CHANGED
@@ -26,13 +26,15 @@ The TestLab command-line program `tl` follows in the style of git:
26
26
  tl [global options] command [command options] [arguments...]
27
27
 
28
28
  VERSION
29
- 0.6.9
29
+ 0.7.1
30
30
 
31
31
  GLOBAL OPTIONS
32
- --version -
33
- -v, --[no-]verbose - Show verbose output
34
- -q, --[no-]quiet - Quiet mode
35
- --help - Show this message
32
+ -l, --labfile=path/to/file - Path to Labfile (default: /home/zpatten/code/personal/testlab-repo/Labfile)
33
+ -c, --config=path/to/directory - Path to configuration directory (default: /home/zpatten/code/personal/testlab-repo/.testlab-zsp-desktop)
34
+ --version - Display the program version
35
+ -v, --[no-]verbose - Show verbose output
36
+ -q, --[no-]quiet - Quiet mode
37
+ --help - Show this message
36
38
 
37
39
  COMMANDS
38
40
  help - Shows a list of commands or help for one command
data/bin/tl CHANGED
@@ -46,12 +46,17 @@ desc 'Quiet mode'
46
46
  default_value false
47
47
  switch [:q, :quiet]
48
48
 
49
- desc 'Path to Labfile'
49
+ desc 'Path to Labfile: ${PWD}/Labfile'
50
50
  arg_name 'path/to/file'
51
51
  default_value File.join(Dir.pwd, 'Labfile')
52
52
  flag [:l, :labfile]
53
53
 
54
- desc 'Path to configuration directory'
54
+ desc 'Path to Repository directory: ${PWD}'
55
+ arg_name 'path/to/directory'
56
+ default_value Dir.pwd
57
+ flag [:r, :repo]
58
+
59
+ desc 'Path to Configuration directory: ${PWD}/.testlab-$(hostname -s)'
55
60
  arg_name 'path/to/directory'
56
61
  default_value File.join(Dir.pwd, ".testlab-#{HOSTNAME}")
57
62
  flag [:c, :config]
@@ -71,7 +76,8 @@ pre do |global,command,options,args|
71
76
  @testlab = TestLab.new(
72
77
  :ui => @ui,
73
78
  :labfile => global[:labfile],
74
- :config_dir => global[:config]
79
+ :config_dir => global[:config],
80
+ :repo_dir => global[:repo]
75
81
  )
76
82
 
77
83
  @ui.logger.debug { "global(#{global.inspect})" }
@@ -126,6 +126,14 @@ class TestLab
126
126
  super(*args)
127
127
  end
128
128
 
129
+ def config_dir
130
+ self.node.config_dir
131
+ end
132
+
133
+ def repo_dir
134
+ self.node.repo_dir
135
+ end
136
+
129
137
  end
130
138
 
131
139
  end
@@ -16,6 +16,10 @@ class TestLab
16
16
  self.testlab.config_dir
17
17
  end
18
18
 
19
+ def repo_dir
20
+ self.testlab.repo_dir
21
+ end
22
+
19
23
  end
20
24
 
21
25
  end
data/lib/testlab/node.rb CHANGED
@@ -54,6 +54,10 @@ class TestLab
54
54
  self.labfile.config_dir
55
55
  end
56
56
 
57
+ def repo_dir
58
+ self.labfile.repo_dir
59
+ end
60
+
57
61
  end
58
62
 
59
63
  end
@@ -15,6 +15,7 @@ class TestLab
15
15
  @ui = (ui || TestLab.ui)
16
16
 
17
17
  @config[:bind] ||= Hash.new
18
+ @config[:bind][:domain] ||= "default.zone"
18
19
 
19
20
  @ui.logger.debug { "config(#{@config.inspect})" }
20
21
  end
@@ -44,7 +45,7 @@ class TestLab
44
45
  reverse_records = Hash.new
45
46
 
46
47
  TestLab::Container.all.each do |container|
47
- container.domain ||= container.node.labfile.config[:domain]
48
+ container.domain ||= @config[:bind][:domain]
48
49
 
49
50
  container.interfaces.each do |interface|
50
51
  forward_records[container.domain] ||= Array.new
@@ -1,6 +1,6 @@
1
1
  class TestLab
2
2
  unless const_defined?(:VERSION)
3
3
  # TestLab Gem Version
4
- VERSION = "0.7.1"
4
+ VERSION = "0.7.2"
5
5
  end
6
6
  end
data/lib/testlab.rb CHANGED
@@ -105,12 +105,14 @@ class TestLab
105
105
  include TestLab::Utility::Misc
106
106
 
107
107
  attr_accessor :config_dir
108
+ attr_accessor :repo_dir
108
109
 
109
110
  def initialize(options={})
110
111
  self.ui = (options[:ui] || ZTK::UI.new)
111
112
  self.class.ui = self.ui
112
113
 
113
114
  @config_dir = (options[:config_dir] || File.join(Dir.pwd, ".testlab-#{HOSTNAME}"))
115
+ @repo_dir = (options[:repo_dir] || Dir.pwd)
114
116
 
115
117
  labfile = (options[:labfile] || File.join(Dir.pwd, 'Labfile'))
116
118
  labfile_path = ZTK::Locator.find(labfile)
metadata CHANGED
@@ -1,186 +1,200 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: testlab
3
- version: !ruby/object:Gem::Version
4
- hash: 1
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.7.2
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 7
9
- - 1
10
- version: 0.7.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Zachary Patten
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2013-07-01 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- version_requirements: &id001 !ruby/object:Gem::Requirement
22
- none: false
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- hash: 3
27
- segments:
28
- - 0
29
- version: "0"
30
- prerelease: false
31
- type: :runtime
32
- requirement: *id001
12
+ date: 2013-07-01 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
33
15
  name: gli
34
- - !ruby/object:Gem::Dependency
35
- version_requirements: &id002 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
36
17
  none: false
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- hash: 3
41
- segments:
42
- - 0
43
- version: "0"
44
- prerelease: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
45
22
  type: :runtime
46
- requirement: *id002
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
47
31
  name: lxc
48
- - !ruby/object:Gem::Dependency
49
- version_requirements: &id003 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
50
33
  none: false
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- hash: 3
55
- segments:
56
- - 0
57
- version: "0"
58
- prerelease: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
59
38
  type: :runtime
60
- requirement: *id003
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
61
47
  name: ztk
62
- - !ruby/object:Gem::Dependency
63
- version_requirements: &id004 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
64
49
  none: false
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- hash: 3
69
- segments:
70
- - 0
71
- version: "0"
72
- prerelease: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
73
54
  type: :runtime
74
- requirement: *id004
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
75
63
  name: activesupport
76
- - !ruby/object:Gem::Dependency
77
- version_requirements: &id005 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
78
65
  none: false
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- hash: 3
83
- segments:
84
- - 0
85
- version: "0"
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :runtime
86
71
  prerelease: false
87
- type: :development
88
- requirement: *id005
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
89
79
  name: bundler
90
- - !ruby/object:Gem::Dependency
91
- version_requirements: &id006 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
92
81
  none: false
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- hash: 3
97
- segments:
98
- - 0
99
- version: "0"
100
- prerelease: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
101
86
  type: :development
102
- requirement: *id006
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
103
95
  name: pry
104
- - !ruby/object:Gem::Dependency
105
- version_requirements: &id007 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
106
97
  none: false
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- hash: 3
111
- segments:
112
- - 0
113
- version: "0"
114
- prerelease: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
115
102
  type: :development
116
- requirement: *id007
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
117
111
  name: rake
118
- - !ruby/object:Gem::Dependency
119
- version_requirements: &id008 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
120
113
  none: false
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- hash: 3
125
- segments:
126
- - 0
127
- version: "0"
128
- prerelease: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
129
118
  type: :development
130
- requirement: *id008
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
131
127
  name: redcarpet
132
- - !ruby/object:Gem::Dependency
133
- version_requirements: &id009 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
134
129
  none: false
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- hash: 3
139
- segments:
140
- - 0
141
- version: "0"
142
- prerelease: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
143
134
  type: :development
144
- requirement: *id009
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ - !ruby/object:Gem::Dependency
145
143
  name: rspec
146
- - !ruby/object:Gem::Dependency
147
- version_requirements: &id010 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
148
145
  none: false
149
- requirements:
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- hash: 3
153
- segments:
154
- - 0
155
- version: "0"
156
- prerelease: false
146
+ requirements:
147
+ - - ! '>='
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
157
150
  type: :development
158
- requirement: *id010
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ - !ruby/object:Gem::Dependency
159
159
  name: yard
160
- - !ruby/object:Gem::Dependency
161
- version_requirements: &id011 !ruby/object:Gem::Requirement
160
+ requirement: !ruby/object:Gem::Requirement
162
161
  none: false
163
- requirements:
164
- - - ">="
165
- - !ruby/object:Gem::Version
166
- hash: 3
167
- segments:
168
- - 0
169
- version: "0"
170
- prerelease: false
162
+ requirements:
163
+ - - ! '>='
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
171
166
  type: :development
172
- requirement: *id011
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ - !ruby/object:Gem::Dependency
173
175
  name: coveralls
176
+ requirement: !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ! '>='
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
182
+ type: :development
183
+ prerelease: false
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
174
190
  description: A toolkit for building virtual computer labs
175
- email:
191
+ email:
176
192
  - zachary AT jovelabs DOT com
177
- executables:
193
+ executables:
178
194
  - tl
179
195
  extensions: []
180
-
181
196
  extra_rdoc_files: []
182
-
183
- files:
197
+ files:
184
198
  - .coveralls.yml
185
199
  - .gitignore
186
200
  - .rspec
@@ -275,39 +289,37 @@ files:
275
289
  - spec/utility_spec.rb
276
290
  - testlab.gemspec
277
291
  homepage: https://github.com/zpatten/testlab
278
- licenses:
292
+ licenses:
279
293
  - Apache 2.0
280
294
  post_install_message:
281
295
  rdoc_options: []
282
-
283
- require_paths:
296
+ require_paths:
284
297
  - lib
285
- required_ruby_version: !ruby/object:Gem::Requirement
298
+ required_ruby_version: !ruby/object:Gem::Requirement
286
299
  none: false
287
- requirements:
288
- - - ">="
289
- - !ruby/object:Gem::Version
290
- hash: 3
291
- segments:
300
+ requirements:
301
+ - - ! '>='
302
+ - !ruby/object:Gem::Version
303
+ version: '0'
304
+ segments:
292
305
  - 0
293
- version: "0"
294
- required_rubygems_version: !ruby/object:Gem::Requirement
306
+ hash: -3436193439365071171
307
+ required_rubygems_version: !ruby/object:Gem::Requirement
295
308
  none: false
296
- requirements:
297
- - - ">="
298
- - !ruby/object:Gem::Version
299
- hash: 3
300
- segments:
309
+ requirements:
310
+ - - ! '>='
311
+ - !ruby/object:Gem::Version
312
+ version: '0'
313
+ segments:
301
314
  - 0
302
- version: "0"
315
+ hash: -3436193439365071171
303
316
  requirements: []
304
-
305
317
  rubyforge_project:
306
318
  rubygems_version: 1.8.25
307
319
  signing_key:
308
320
  specification_version: 3
309
321
  summary: A toolkit for building virtual computer labs
310
- test_files:
322
+ test_files:
311
323
  - spec/container_spec.rb
312
324
  - spec/network_spec.rb
313
325
  - spec/node_spec.rb