def run_test_asd_start(xml=False): alba.demo_kill() alba.demo_setup() object_location = "%s/obj" % ALBA_BASE_PATH local("dd if=/dev/urandom of=%s bs=1M count=1" % object_location) for i in xrange(0, 1000): cmd = [ env['alba_bin'], 'proxy-upload-object', "-h 127.0.0.1 ", 'demo', object_location, str(i) ] local(" ".join(cmd)) for i in xrange(0, N): alba.osd_stop(alba.get_osd_port(i)) alba.start_osds(default_kind, N, True, restart = True) time.sleep(2) cmd = [ env['alba_bin'], 'proxy-upload-object', "-h 127.0.0.1 ", 'demo', object_location, "fdskii", "--allow-overwrite" ] with warn_only(): # this clears the borked connections from the # asd connection pools local(" ".join(cmd)) local(" ".join(cmd)) local(" ".join(cmd)) time.sleep(2) local(" ".join(cmd)) r = local(" ".join(cmd)) print r local(" ".join([ env['alba_bin'], 'proxy-download-object', "-h 127.0.0.1 ", 'demo', '1', '%s/obj2' % ALBA_BASE_PATH ])) alba.smoke_test() if xml: alba.dump_junit_xml()
def test(old_proxy, old_plugins, old_asd): try: alba.smoke_test() def alba_cli(extra, old = False, capture = False): key = 'alba.0.6' if old else 'alba_bin' binary = env[key] cmd = [binary] cmd.extend(extra) cmd_line = ' '.join(cmd) r = local(cmd_line, capture = capture) return r obj_name = 'alba_binary' ns = 'demo' cfg = './cfg/albamgr_example_arakoon_cfg.ini' alba_cli(['proxy-upload-object', "-h 127.0.0.1 ", ns , env['alba_bin'], obj_name]) alba_cli(['proxy-download-object', "-h 127.0.0.1 ", ns, obj_name, '/tmp/downloaded.bin']) alba_cli(['delete-object', ns, obj_name, '--config', cfg ]) # some explicit backward compatible operations r = alba_cli (['list-all-osds', '--config', cfg, '--to-json'], old = True, capture = True) osds = json.loads(r) assert osds['success'] == True long_id = osds['result'][0]['long_id'] # decommission 1 asd: alba_cli (['decommission-osd', '--long-id', long_id, '--config', cfg], old = True, capture = True) print "now, list them" r = alba_cli (['list-decommissioning-osds', '--config', cfg, '--to-json'], old = True, capture = True) decommissioning_osds = json.loads(r) print decommissioning_osds['success'] assert decommissioning_osds['success'] == True except Exception, e: print e with warn_only(): local ("which alba.0.6") local ("pgrep -a alba") local ("pgrep -a arakoon") local ("which fuser") local ("sudo fuser -n tcp 10000 8001") raise