chiark / gitweb /
make adt-virt-xenlvm work again
[autopkgtest.git] / virt-subproc / adt-virt-chroot
index e5651e195eaac0f8f393109d3de630317743ba81..4ec079ca405de047a2bd44e64856a15f3377a036 100755 (executable)
 
 import sys
 import os
+import string
+from optparse import OptionParser
 
 try: our_base = os.environ['AUTOPKGTEST_BASE']
 except KeyError: our_base = '/usr/share/autopkgtest';
 sys.path.insert(1, our_base+'/python')
 
-import string
-from optparse import OptionParser
 import VirtSubproc as vsp
+capabilities = []
 
 def parse_args():
        global down, debuglevel
 
-       usage = "%prog [options] =<dchroot>|/path/to/chroot"
+       usage = "%prog [<options>] =<dchroot>|/path/to/chroot"
        parser = OptionParser(usage=usage)
        pa = parser.add_option
        pe = parser.error
@@ -57,9 +58,12 @@ def parse_args():
        elif chroot_arg[0] == '/': down = ['chroot',chroot_arg,'--']
        else: pe("chroot spec must be =[DCHROOT] or /PATH/TO/CHROOT")
 
-       if opts.gain_root != None: down = opts.gain_root.split() + down
+       if opts.gain_root != None:
+               down = opts.gain_root.split() + down
+
+       if opts.gain_root or os.getuid()==0:
+               capabilities.append('root-on-testbed')
 
-       vsp.debug("down = %s" % string.join(down))
        vsp.down = down
 
 def hook_open():
@@ -68,12 +72,11 @@ def hook_open():
        downtmp = vsp.execute('mktemp -t -d', downp=True, outp=True)
        return downtmp
 
-def hook_stop():
-       vsp.execute('rm -rf --', c[1:2])
-       os.mkdir(c[1])
-
 def hook_cleanup():
        vsp.execute('rm -rf --', [downtmp], downp=True)
 
+def hook_capabilities():
+       return capabilities
+
 parse_args()
 vsp.main()