testlab 1.18.0 → 1.18.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/.gitignore +1 -0
- data/.travis.yml +20 -9
- data/Rakefile +6 -45
- data/features/step_definitions/testlab_steps.rb +2 -1
- data/features/support/{Labfile.local → Labfile.bare-metal} +3 -3
- data/features/support/env.rb +3 -2
- data/lib/testlab/container/actions.rb +4 -1
- data/lib/testlab/container/io.rb +2 -2
- data/lib/testlab/container/status.rb +11 -0
- data/lib/testlab/node.rb +2 -0
- data/lib/testlab/providers/vagrant.rb +2 -1
- data/lib/testlab/provisioners/resolv.rb +2 -1
- data/lib/testlab/provisioners/templates/raring/provision.erb +4 -5
- data/lib/testlab/utility/logger.rb +2 -1
- data/lib/testlab/version.rb +1 -1
- data/scripts/before_install.sh +58 -0
- data/{spec/support/install-lxc.sh → scripts/test.sh} +10 -8
- data/testlab.gemspec +5 -0
- metadata +62 -6
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTBiNzQ4NzUwY2JlYWVjMTE0NzcwNmMwYzM0OTQ3ZTY2OTQwZDIzOQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
M2RhODk4NGFjYjViYjE2NzEwMTE2Nzg2OGI0NTMyMGY0NGIzMWFhMA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZDBmN2Q5OGQ3OGY4MTgxNGM1MDFmNzY4MzU1MjMwNWFmMzFmYzM4NjM1NTdj
|
10
|
+
OTFlZTYyNTUxMmQ0YTA4ZTM3NWJjMDI2YmMyZWE1MzYxYzZhYjgyMzgwOGJk
|
11
|
+
MTVjOTUwNTgyOGJkOTM4ODk0NTgwYmQ4MDgyNDY1NDc5MGMyODI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
OTRiNTBjN2UxMzQzMjAyZGJmNThjN2VkM2I1ZDEzYmZlOTUzMjRhNjdjMjNl
|
14
|
+
NzdkYzIxNTYxMmYzNzkxNTQ3MTcwMGI1MDlmNDI5ZWU5ZTJmMGEyZjFlNDk4
|
15
|
+
ZjIyZmNiM2Y0NThiYmU4M2UxMmUzZGI5ZTE4ZGY1MTQ2OTM0NTE=
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -1,22 +1,33 @@
|
|
1
1
|
language: ruby
|
2
|
+
env:
|
3
|
+
global:
|
4
|
+
- secure: YbxuFSMIVppYT99C+klcWpzLr0w/sLqjfxbBVorzTLgHhFpUVIdK4tIu5dQDohrVEuMskPzqilFjnW+bqKQ6rfG9pgkN9Gkp5LbxzTRdWPT5u9111fQSjW/hdqN+z0Beqdi1k2ZoPQRTgVPaPq9UHlX8/4LK021gTTbe2EGMcSg=
|
5
|
+
- secure: KMwqbWoqcYmmyNoGHxBUnmWmQ1zzoxpcNggrcU7VeWB1NrUIeeAsvX1zAmb1xiuFZDaIrnto9mmiWVuphGpK5FDOGzFGWCO4vISBUzRkcJQE8rU1K4G3O/meXJ9W1pADHE4b/50uEGQjPMry4lwOiugKMc5x7+364de2YoALx6E=
|
6
|
+
- secure: H4MqaotOXE5aboHmv+udPK8sPKpzpgBaKBj3ZOqfqgmkea4sbyIMptAXvMrdWlaJGhfjxhmjwN7UfpYYxv4zN2a+16uQR1waRSt5ugxGY05riRp1vF8silogj8iSaM6TiDmytdyAbPOg+gFsDJNT50Sa29tDkiOA5L2VFAgkwjU=
|
7
|
+
- secure: QR7/0AU/pC64kfH9tsd5nANsX/S2QMKT2LVGcFfZhdRyisT597s4LzVj6snBrfh+Qd0mqkZZmkVHRNmi5BdO3qVeA/0R8LOm3WD5gFaBNEbCV7B3j2iX6a386nKYd+9LbLO57cfnVePFRsWmPF3pefhNDnQbWLKjUxT2rj3j/RQ=
|
2
8
|
rvm:
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
9
|
+
- ree
|
10
|
+
- 1.9.2
|
11
|
+
- 1.9.3
|
12
|
+
- 2.0.0
|
13
|
+
- 2.1.0
|
8
14
|
branches:
|
9
15
|
only:
|
10
|
-
|
11
|
-
before_install:
|
16
|
+
- master
|
17
|
+
before_install:
|
18
|
+
- "sudo ./scripts/before_install.sh"
|
19
|
+
after_script:
|
20
|
+
- "travis-artifacts upload --path testlab.log"
|
21
|
+
after_test:
|
22
|
+
- "travis-artifacts upload --target-path artifacts/$TRAVIS_BUILD_ID/$TRAVIS_JOB_ID"
|
12
23
|
notifications:
|
13
24
|
email:
|
14
25
|
recipients:
|
15
|
-
|
26
|
+
- "testlab-ci@lookout.com"
|
16
27
|
on_success: always
|
17
28
|
on_failure: always
|
18
29
|
irc:
|
19
30
|
channels:
|
20
|
-
|
31
|
+
- "irc.freenode.net#jovelabs"
|
21
32
|
use_notice: true
|
22
33
|
skip_join: true
|
data/Rakefile
CHANGED
@@ -19,16 +19,11 @@
|
|
19
19
|
################################################################################
|
20
20
|
|
21
21
|
require 'rake/clean'
|
22
|
-
require 'bundler/gem_tasks'
|
23
22
|
|
24
|
-
|
23
|
+
require 'bundler/gem_tasks'
|
25
24
|
|
26
25
|
require 'rspec/core/rake_task'
|
27
26
|
RSpec::Core::RakeTask.new(:spec)
|
28
|
-
task :default => [:spec]
|
29
|
-
task :test => [:spec]
|
30
|
-
|
31
|
-
################################################################################
|
32
27
|
|
33
28
|
require 'cucumber/rake/task'
|
34
29
|
desc 'Run features'
|
@@ -39,49 +34,15 @@ Cucumber::Rake::Task.new(:features) do |t|
|
|
39
34
|
t.fork = false
|
40
35
|
end
|
41
36
|
|
42
|
-
################################################################################
|
43
|
-
|
44
37
|
require 'coveralls/rake/task'
|
45
38
|
Coveralls::RakeTask.new
|
46
|
-
task :coveralls => [:spec, 'coveralls:push']
|
47
|
-
|
48
|
-
################################################################################
|
49
39
|
|
50
|
-
require '
|
51
|
-
require 'yard/rake/yardoc_task'
|
40
|
+
require 'ztk/rake/docs'
|
52
41
|
|
53
|
-
|
54
|
-
DOC_PATH = File.expand_path(File.join("..", "", "#{GEM_NAME}.doc"))
|
55
|
-
|
56
|
-
namespace :doc do
|
57
|
-
YARD::Rake::YardocTask.new(:pages) do |t|
|
58
|
-
|
59
|
-
# t.files = ['lib/**/*.rb']
|
60
|
-
t.options = ['--verbose', '-o', DOC_PATH]
|
61
|
-
end
|
62
|
-
|
63
|
-
namespace :pages do
|
64
|
-
|
65
|
-
desc 'Generate and publish YARD Documentation to GitHub pages'
|
66
|
-
task :publish => ['doc:pages'] do
|
67
|
-
describe = %x(git describe).chomp
|
68
|
-
stats = %x(bundle exec yard stats).chomp
|
69
|
-
|
70
|
-
commit_message = Array.new
|
71
|
-
commit_message << "Generated YARD Documentation for #{GEM_NAME.upcase} #{describe}\n\n"
|
72
|
-
commit_message << stats
|
73
|
-
|
74
|
-
Dir.chdir(DOC_PATH) do
|
75
|
-
puts(%x{git add -Av})
|
76
|
-
puts(%x{git commit -m"#{commit_message.join}"})
|
77
|
-
puts(%x{git push origin gh-pages})
|
78
|
-
end
|
79
|
-
end
|
80
|
-
|
81
|
-
end
|
42
|
+
################################################################################
|
82
43
|
|
83
|
-
|
84
|
-
|
85
|
-
task
|
44
|
+
task :coveralls => [:spec, 'coveralls:push']
|
45
|
+
task :default => [:spec]
|
46
|
+
task :test => [:spec]
|
86
47
|
|
87
48
|
################################################################################
|
@@ -32,5 +32,6 @@ end
|
|
32
32
|
|
33
33
|
def testlab_cmd(app_name, *args)
|
34
34
|
args = args.join(' ')
|
35
|
-
|
35
|
+
log_file = File.join(TEST_ROOT, 'testlab.log')
|
36
|
+
step %(I run `#{app_name} --repo=#{TEST_REPO} --labfile=#{TEST_LABFILE} --log=#{log_file} #{args}`)
|
36
37
|
end
|
@@ -5,7 +5,7 @@ version ">= 1.5.1"
|
|
5
5
|
|
6
6
|
node 'vagrant' do
|
7
7
|
|
8
|
-
provider
|
8
|
+
provider TestLab::Provider::BareMetal
|
9
9
|
|
10
10
|
provisioners [
|
11
11
|
TestLab::Provisioner::Raring,
|
@@ -36,8 +36,8 @@ node 'vagrant' do
|
|
36
36
|
user do
|
37
37
|
username 'deployer'
|
38
38
|
password 'deployer'
|
39
|
-
identity File.join(
|
40
|
-
public_identity File.join(
|
39
|
+
identity File.join(Dir.pwd, 'spec', 'support', 'test')
|
40
|
+
public_identity File.join(Dir.pwd, 'spec', 'support', 'test.pub')
|
41
41
|
uid 2600
|
42
42
|
gid 2600
|
43
43
|
end
|
data/features/support/env.rb
CHANGED
@@ -3,10 +3,11 @@ require 'aruba/cucumber'
|
|
3
3
|
ENV['PATH'] = "#{File.expand_path(File.dirname(__FILE__) + '/../../bin')}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
|
4
4
|
LIB_DIR = File.join(File.expand_path(File.dirname(__FILE__)),'..','..','lib')
|
5
5
|
|
6
|
+
TEST_ROOT = File.expand_path(File.join(File.dirname(__FILE__), "..", ".."))
|
6
7
|
TEST_REPO = File.dirname(__FILE__)
|
7
8
|
|
8
|
-
if ENV['USER']
|
9
|
-
TEST_LABFILE = File.join(TEST_REPO, 'Labfile.
|
9
|
+
if %w( vagrant travis ).include?(ENV['USER'])
|
10
|
+
TEST_LABFILE = File.join(TEST_REPO, 'Labfile.bare-metal')
|
10
11
|
else
|
11
12
|
TEST_LABFILE = File.join(TEST_REPO, 'Labfile.vagrant')
|
12
13
|
end
|
@@ -84,7 +84,10 @@ class TestLab
|
|
84
84
|
end
|
85
85
|
|
86
86
|
# Ensure the hostname is set
|
87
|
-
self.
|
87
|
+
self.lxc.attach(%(-- /bin/bash -c 'hostname #{self.id}'))
|
88
|
+
self.lxc.attach(%(-- /bin/bash -c 'echo "#{self.id}" | tee /etc/hostname'))
|
89
|
+
self.lxc.attach(%(-- /bin/bash -c 'sed -i "s/\\(127\\.0\\.1\\.1\\).*/\\1\t#{self.id} #{self.fqdn}/g" /etc/hosts'))
|
90
|
+
self.lxc.attach(%(-- /bin/bash -c '(grep "#{self.id}" /etc/hosts) || (echo "127.0.1.1\t#{self.id} #{self.fqdn}" | tee -a /etc/hosts)'))
|
88
91
|
|
89
92
|
do_provisioner_callbacks(self, :up, @ui)
|
90
93
|
end
|
data/lib/testlab/container/io.rb
CHANGED
@@ -43,9 +43,9 @@ class TestLab
|
|
43
43
|
when :get, :put then
|
44
44
|
elapsed = (Time.now - @start_time)
|
45
45
|
current_size = (args[1] + args[2].length)
|
46
|
-
message = ((action == :get) ? 'downloading from' : 'uploading to')
|
46
|
+
message = ((action == :get) ? 'downloading to local host from' : 'uploading from local host to')
|
47
47
|
|
48
|
-
transfer_message(%(#{message} node:), args[0].local, current_size, @total_size, elapsed)
|
48
|
+
transfer_message(%(#{message} TestLab node #{self.node.id.inspect}:), args[0].local, current_size, @total_size, elapsed)
|
49
49
|
|
50
50
|
when :finish
|
51
51
|
@ui.stdout.puts
|
@@ -124,6 +124,17 @@ class TestLab
|
|
124
124
|
end
|
125
125
|
end
|
126
126
|
|
127
|
+
# Container Importable
|
128
|
+
#
|
129
|
+
# If the container has a non-nil sc_url value, we assume since we can
|
130
|
+
# supposedly download a shipping container image for the container
|
131
|
+
# that it is therefore importable.
|
132
|
+
# @return [Boolean] True if the container has a non-nil sc_url attribute,
|
133
|
+
# False otherwise.
|
134
|
+
def importable?
|
135
|
+
!self.sc_url.nil?
|
136
|
+
end
|
137
|
+
|
127
138
|
end
|
128
139
|
|
129
140
|
end
|
data/lib/testlab/node.rb
CHANGED
@@ -190,7 +190,8 @@ class TestLab
|
|
190
190
|
####################
|
191
191
|
|
192
192
|
def instance_id
|
193
|
-
|
193
|
+
default_id = "#{TestLab.hostname}-#{@config[:node][:id]}-#{File.basename(@config[:vagrant][:file])}"
|
194
|
+
(@config[:vagrant][:id] || default_id.downcase)
|
194
195
|
end
|
195
196
|
|
196
197
|
def user
|
@@ -1,13 +1,13 @@
|
|
1
1
|
export DEBIAN_FRONTEND="noninteractive"
|
2
2
|
|
3
3
|
# Update APT and ensure our required packages are installed
|
4
|
-
apt-get -
|
4
|
+
apt-get -qq update
|
5
5
|
<% %w(lxc apparmor bridge-utils debootstrap yum iptables iptables-persistent ntpdate ntp pbzip2).each do |package| -%>
|
6
|
-
dpkg --status <%= package %> &> /dev/null || apt-get -
|
6
|
+
dpkg --status <%= package %> &> /dev/null || apt-get -qq install <%= package %>
|
7
7
|
<% end -%>
|
8
8
|
|
9
9
|
# Ensure the default lxc networking services are off
|
10
|
-
service lxc-net stop ||
|
10
|
+
service lxc-net stop || true
|
11
11
|
echo "manual" | tee /etc/init/lxc-net.override
|
12
12
|
|
13
13
|
# Ensure NTP services are enabled and running
|
@@ -18,8 +18,7 @@ sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/' /etc/sysctl.conf
|
|
18
18
|
sysctl -w net.ipv4.ip_forward=1
|
19
19
|
|
20
20
|
# Install an iptable NAT rule
|
21
|
-
|
22
|
-
if ! iptables -t nat -v --list | grep "MASQUERADE"; then
|
21
|
+
if ! (iptables -t nat -v --list | grep "MASQUERADE"); then
|
23
22
|
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
24
23
|
iptables-save | tee /etc/iptables/rules.v4
|
25
24
|
fi
|
@@ -35,7 +35,8 @@ class TestLab
|
|
35
35
|
"hostname" => "%s (%s)" % [Socket.gethostname.inspect, TestLab.hostname.inspect],
|
36
36
|
"program" => $0.to_s.inspect,
|
37
37
|
"argv" => ARGV.join(' ').inspect,
|
38
|
-
"timezone" => Time.now.zone.inspect
|
38
|
+
"timezone" => Time.now.zone.inspect,
|
39
|
+
"user" => ENV['USER'].inspect
|
39
40
|
}
|
40
41
|
end
|
41
42
|
|
data/lib/testlab/version.rb
CHANGED
@@ -0,0 +1,58 @@
|
|
1
|
+
################################################################################
|
2
|
+
#
|
3
|
+
# Author: Zachary Patten <zachary AT jovelabs DOT com>
|
4
|
+
# Copyright: Copyright (c) Zachary Patten
|
5
|
+
# License: Apache License, Version 2.0
|
6
|
+
#
|
7
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
# you may not use this file except in compliance with the License.
|
9
|
+
# You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing, software
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
16
|
+
# See the License for the specific language governing permissions and
|
17
|
+
# limitations under the License.
|
18
|
+
#
|
19
|
+
################################################################################
|
20
|
+
#!/bin/bash
|
21
|
+
set -x
|
22
|
+
|
23
|
+
cat <<EOF | tee /usr/sbin/policy-rc.d
|
24
|
+
#!/bin/sh
|
25
|
+
exit 101
|
26
|
+
EOF
|
27
|
+
chmod 755 /usr/sbin/policy-rc.d
|
28
|
+
|
29
|
+
mkdir -p /lib/modules/$(uname -r)
|
30
|
+
depmod -a
|
31
|
+
|
32
|
+
apt-get -qq update
|
33
|
+
add-apt-repository -y ppa:serge-hallyn/lxc-backport
|
34
|
+
apt-get -qq update
|
35
|
+
|
36
|
+
apt-get -qq install lxc
|
37
|
+
lxc-version
|
38
|
+
|
39
|
+
apt-get -qq install slirp
|
40
|
+
git clone git://github.com/jpetazzo/sekexe
|
41
|
+
|
42
|
+
(iptables -L -t nat) || true
|
43
|
+
(grep -i iptables /etc/vz/vz.conf) || true
|
44
|
+
(lsmod | grep nat) || true
|
45
|
+
|
46
|
+
mkdir -p $HOME/.ssh
|
47
|
+
ssh-keygen -N '' -f $HOME/.ssh/id_rsa
|
48
|
+
|
49
|
+
cat $HOME/.ssh/id_rsa.pub | tee $HOME/.ssh/authorized_keys
|
50
|
+
cat $HOME/.ssh/id_rsa.pub | tee $HOME/.ssh/authorized_keys2
|
51
|
+
|
52
|
+
chown -R $SUDO_USER:$SUDO_USER $HOME/.ssh
|
53
|
+
|
54
|
+
ls -la $HOME/.ssh
|
55
|
+
|
56
|
+
eval `ssh-agent -s`
|
57
|
+
ssh-add $HOME/.ssh/id_rsa
|
58
|
+
ssh-add -L
|
@@ -18,11 +18,13 @@
|
|
18
18
|
#
|
19
19
|
################################################################################
|
20
20
|
#!/bin/bash
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
21
|
+
set -e
|
22
|
+
set -x
|
23
|
+
|
24
|
+
# For Travis-CI sekexe:
|
25
|
+
#
|
26
|
+
# script:
|
27
|
+
# - sekexe/run "export HOME=$HOME USER=$USER PWD=$(pwd) ; env ; cd $(pwd) ; $(pwd)/scripts/test.sh"
|
28
|
+
|
29
|
+
|
30
|
+
/home/$USER/.rvm/bin/rvm $(cat $PWD/.ruby-version)@$(cat $PWD/.ruby-gemset) do bundle exec rake
|
data/testlab.gemspec
CHANGED
@@ -49,4 +49,9 @@ Gem::Specification.new do |spec|
|
|
49
49
|
spec.add_development_dependency("rspec")
|
50
50
|
spec.add_development_dependency("yard")
|
51
51
|
spec.add_development_dependency("coveralls")
|
52
|
+
|
53
|
+
spec.add_development_dependency("travis")
|
54
|
+
spec.add_development_dependency("travis-artifacts")
|
55
|
+
spec.add_development_dependency("typhoeus", "~> 0.6.7")
|
56
|
+
spec.add_development_dependency("websocket-native")
|
52
57
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: testlab
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.18.
|
4
|
+
version: 1.18.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Zachary Patten
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-01
|
11
|
+
date: 2014-02-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gli
|
@@ -178,6 +178,62 @@ dependencies:
|
|
178
178
|
- - ! '>='
|
179
179
|
- !ruby/object:Gem::Version
|
180
180
|
version: '0'
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: travis
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - ! '>='
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '0'
|
188
|
+
type: :development
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - ! '>='
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: '0'
|
195
|
+
- !ruby/object:Gem::Dependency
|
196
|
+
name: travis-artifacts
|
197
|
+
requirement: !ruby/object:Gem::Requirement
|
198
|
+
requirements:
|
199
|
+
- - ! '>='
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: '0'
|
202
|
+
type: :development
|
203
|
+
prerelease: false
|
204
|
+
version_requirements: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - ! '>='
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '0'
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
name: typhoeus
|
211
|
+
requirement: !ruby/object:Gem::Requirement
|
212
|
+
requirements:
|
213
|
+
- - ~>
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
version: 0.6.7
|
216
|
+
type: :development
|
217
|
+
prerelease: false
|
218
|
+
version_requirements: !ruby/object:Gem::Requirement
|
219
|
+
requirements:
|
220
|
+
- - ~>
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: 0.6.7
|
223
|
+
- !ruby/object:Gem::Dependency
|
224
|
+
name: websocket-native
|
225
|
+
requirement: !ruby/object:Gem::Requirement
|
226
|
+
requirements:
|
227
|
+
- - ! '>='
|
228
|
+
- !ruby/object:Gem::Version
|
229
|
+
version: '0'
|
230
|
+
type: :development
|
231
|
+
prerelease: false
|
232
|
+
version_requirements: !ruby/object:Gem::Requirement
|
233
|
+
requirements:
|
234
|
+
- - ! '>='
|
235
|
+
- !ruby/object:Gem::Version
|
236
|
+
version: '0'
|
181
237
|
description: A toolkit for building virtual computer labs
|
182
238
|
email:
|
183
239
|
- zachary AT jovelabs DOT com
|
@@ -205,7 +261,7 @@ files:
|
|
205
261
|
- features/step_definitions/network_steps.rb
|
206
262
|
- features/step_definitions/node_steps.rb
|
207
263
|
- features/step_definitions/testlab_steps.rb
|
208
|
-
- features/support/Labfile.
|
264
|
+
- features/support/Labfile.bare-metal
|
209
265
|
- features/support/Labfile.vagrant
|
210
266
|
- features/support/env.rb
|
211
267
|
- features/testlab.feature
|
@@ -293,6 +349,8 @@ files:
|
|
293
349
|
- lib/testlab/utility/logger.rb
|
294
350
|
- lib/testlab/utility/misc.rb
|
295
351
|
- lib/testlab/version.rb
|
352
|
+
- scripts/before_install.sh
|
353
|
+
- scripts/test.sh
|
296
354
|
- spec/container_spec.rb
|
297
355
|
- spec/interface_spec.rb
|
298
356
|
- spec/labfile_spec.rb
|
@@ -304,7 +362,6 @@ files:
|
|
304
362
|
- spec/provisioners/generic_spec.rb
|
305
363
|
- spec/spec_helper.rb
|
306
364
|
- spec/support/Labfile
|
307
|
-
- spec/support/install-lxc.sh
|
308
365
|
- spec/support/test
|
309
366
|
- spec/support/test.pub
|
310
367
|
- spec/testlab_spec.rb
|
@@ -340,7 +397,7 @@ test_files:
|
|
340
397
|
- features/step_definitions/network_steps.rb
|
341
398
|
- features/step_definitions/node_steps.rb
|
342
399
|
- features/step_definitions/testlab_steps.rb
|
343
|
-
- features/support/Labfile.
|
400
|
+
- features/support/Labfile.bare-metal
|
344
401
|
- features/support/Labfile.vagrant
|
345
402
|
- features/support/env.rb
|
346
403
|
- features/testlab.feature
|
@@ -355,7 +412,6 @@ test_files:
|
|
355
412
|
- spec/provisioners/generic_spec.rb
|
356
413
|
- spec/spec_helper.rb
|
357
414
|
- spec/support/Labfile
|
358
|
-
- spec/support/install-lxc.sh
|
359
415
|
- spec/support/test
|
360
416
|
- spec/support/test.pub
|
361
417
|
- spec/testlab_spec.rb
|