3 from shutil import copy2 as copy
6 class TestCluster(Cluster):
7 def execute_test(self, ci_dir, packages_dir):
8 tests = os.path.join(ci_dir, '../xseg/tools/qa')
9 self.inject_file(tests, '/root')
10 self.inject_file(packages_dir, '/root')
12 libxseg0_*_amd64.deb \
13 libxseg0-dbg_*_amd64.deb \
14 python-xseg_*_amd64.deb \
15 python-archipelago_*_amd64.deb \
16 archipelago-modules-dkms_*_amd64.deb \
17 archipelago_*_amd64.deb \
18 archipelago-dbg_*_amd64.deb \
19 archipelago-ganeti_*_amd64.deb"""
20 remote_folder = os.path.normpath(packages_dir)
21 remote_folder = os.path.basename(remote_folder)
22 self.execute_command('cd /root/' + remote_folder + ' ; ' + cmd)
23 #self.execute_command('python /root/qa/tests.py -v', verbose=True)
24 self.execute_command('python /root/qa/tests.py -v FiledTest', verbose=True)
25 self.execute_command('python /root/qa/tests.py -v MapperdTest', verbose=True)
26 self.execute_command('python /root/qa/tests.py -v VlmcdTest', verbose=True)
27 self.execute_command('mkdir -p /srv/archip/blocks')
28 self.execute_command('mkdir -p /srv/archip/maps')
29 self.execute_command('mkdir -p /mnt/mountpoint')
30 self.execute_command('archipelago start', verbose=True)
31 self.execute_command('python /root/qa/basictest.py', verbose=True)
33 if __name__ == '__main__':
34 now = datetime.datetime.now().strftime('%b-%d-%I%M%p-%G')
35 node = 'archipelago-test ' + now
36 token = os.environ['TOKEN']
37 token = open(token).read().strip()
38 packages_dir = os.environ['PACKAGES_DIR']
39 image_id = os.environ['IMAGE_ID']
40 image_id = open(image_id).read().strip()
41 ci_dir = os.path.dirname(os.path.abspath(__file__))
42 conffile = os.path.join(ci_dir, 'config')
43 tmpfile = '/tmp/tmpconfig_' + now
44 copy(conffile, tmpfile)
47 tc = TestCluster(conffile=conffile, token=token, servers=node, image_id=image_id)
49 tc.execute_test(ci_dir, packages_dir)