Removed trailing whitespace
This commit is contained in:
parent
8e465a13b5
commit
bd05975a53
@ -48,9 +48,9 @@ qubes_guid_path = "/usr/bin/qubes_guid"
|
|||||||
|
|
||||||
qubes_base_dir = "/var/lib/qubes"
|
qubes_base_dir = "/var/lib/qubes"
|
||||||
|
|
||||||
qubes_appvms_dir = qubes_base_dir + "/appvms"
|
qubes_appvms_dir = qubes_base_dir + "/appvms"
|
||||||
qubes_templates_dir = qubes_base_dir + "/vm-templates"
|
qubes_templates_dir = qubes_base_dir + "/vm-templates"
|
||||||
qubes_servicevms_dir = qubes_base_dir + "/servicevms"
|
qubes_servicevms_dir = qubes_base_dir + "/servicevms"
|
||||||
qubes_store_filename = qubes_base_dir + "/qubes.xml"
|
qubes_store_filename = qubes_base_dir + "/qubes.xml"
|
||||||
|
|
||||||
qubes_max_qid = 254*254
|
qubes_max_qid = 254*254
|
||||||
@ -105,7 +105,7 @@ class XendSession(object):
|
|||||||
|
|
||||||
if not dry_run:
|
if not dry_run:
|
||||||
xend_session = XendSession()
|
xend_session = XendSession()
|
||||||
|
|
||||||
class QubesException (Exception) : pass
|
class QubesException (Exception) : pass
|
||||||
|
|
||||||
|
|
||||||
@ -203,7 +203,7 @@ class QubesVm(object):
|
|||||||
self.icon_path = self.dir_path + "/icon.png"
|
self.icon_path = self.dir_path + "/icon.png"
|
||||||
else:
|
else:
|
||||||
self.icon_path = None
|
self.icon_path = None
|
||||||
|
|
||||||
if not dry_run and xend_session.session is not None:
|
if not dry_run and xend_session.session is not None:
|
||||||
self.refresh_xend_session()
|
self.refresh_xend_session()
|
||||||
|
|
||||||
@ -245,7 +245,7 @@ class QubesVm(object):
|
|||||||
def is_networked(self):
|
def is_networked(self):
|
||||||
if self.is_netvm():
|
if self.is_netvm():
|
||||||
return True
|
return True
|
||||||
|
|
||||||
if self.netvm_vm is not None:
|
if self.netvm_vm is not None:
|
||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
@ -376,7 +376,7 @@ class QubesVm(object):
|
|||||||
for cpu in cpus_util:
|
for cpu in cpus_util:
|
||||||
cpu_total_load += cpus_util[cpu]
|
cpu_total_load += cpus_util[cpu]
|
||||||
cpu_total_load /= len(cpus_util)
|
cpu_total_load /= len(cpus_util)
|
||||||
p = 100*cpu_total_load
|
p = 100*cpu_total_load
|
||||||
if p > 100:
|
if p > 100:
|
||||||
p = 100
|
p = 100
|
||||||
return p
|
return p
|
||||||
@ -426,7 +426,7 @@ class QubesVm(object):
|
|||||||
def get_private_img_sz(self):
|
def get_private_img_sz(self):
|
||||||
if not os.path.exists(self.private_img):
|
if not os.path.exists(self.private_img):
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
return os.path.getsize(self.private_img)
|
return os.path.getsize(self.private_img)
|
||||||
|
|
||||||
def create_xenstore_entries(self, xid):
|
def create_xenstore_entries(self, xid):
|
||||||
@ -506,8 +506,8 @@ class QubesVm(object):
|
|||||||
if verbose:
|
if verbose:
|
||||||
print "--> Loading the VM (type = {0})...".format(self.type)
|
print "--> Loading the VM (type = {0})...".format(self.type)
|
||||||
|
|
||||||
if not self.is_netvm():
|
if not self.is_netvm():
|
||||||
total_mem_mb = self.get_total_xen_memory()/1024/1024
|
total_mem_mb = self.get_total_xen_memory()/1024/1024
|
||||||
xend_session.xend_server.xend.domain.maxmem_set(self.name, total_mem_mb)
|
xend_session.xend_server.xend.domain.maxmem_set(self.name, total_mem_mb)
|
||||||
|
|
||||||
mem_required = self.get_mem_dynamic_max()
|
mem_required = self.get_mem_dynamic_max()
|
||||||
@ -523,7 +523,7 @@ class QubesVm(object):
|
|||||||
xend_session.session.xenapi.VM.start (self.session_uuid, True) # Starting a VM paused
|
xend_session.session.xenapi.VM.start (self.session_uuid, True) # Starting a VM paused
|
||||||
|
|
||||||
qmemman_client.close() # let qmemman_daemon resume balancing
|
qmemman_client.close() # let qmemman_daemon resume balancing
|
||||||
|
|
||||||
xid = int (xend_session.session.xenapi.VM.get_domid (self.session_uuid))
|
xid = int (xend_session.session.xenapi.VM.get_domid (self.session_uuid))
|
||||||
|
|
||||||
if verbose:
|
if verbose:
|
||||||
@ -716,15 +716,15 @@ class QubesTemplateVm(QubesVm):
|
|||||||
print "--> Copying the template's appvm templates dir:\n{0} ==>\n{1}".\
|
print "--> Copying the template's appvm templates dir:\n{0} ==>\n{1}".\
|
||||||
format(src_template_vm.appmenus_templates_dir, self.appmenus_templates_dir)
|
format(src_template_vm.appmenus_templates_dir, self.appmenus_templates_dir)
|
||||||
shutil.copytree (src_template_vm.appmenus_templates_dir, self.appmenus_templates_dir)
|
shutil.copytree (src_template_vm.appmenus_templates_dir, self.appmenus_templates_dir)
|
||||||
|
|
||||||
|
|
||||||
def get_disk_utilization_root_img(self):
|
def get_disk_utilization_root_img(self):
|
||||||
return self.get_disk_usage(self.root_img)
|
return self.get_disk_usage(self.root_img)
|
||||||
|
|
||||||
def get_root_img_sz(self):
|
def get_root_img_sz(self):
|
||||||
if not os.path.exists(self.root_img):
|
if not os.path.exists(self.root_img):
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
return os.path.getsize(self.root_img)
|
return os.path.getsize(self.root_img)
|
||||||
|
|
||||||
def verify_files(self):
|
def verify_files(self):
|
||||||
@ -761,7 +761,7 @@ class QubesTemplateVm(QubesVm):
|
|||||||
raise QubesException (
|
raise QubesException (
|
||||||
"VM's kernels directory does not exist: {0}".\
|
"VM's kernels directory does not exist: {0}".\
|
||||||
format(self.kernels_dir))
|
format(self.kernels_dir))
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def start(self, debug_console = False, verbose = False):
|
def start(self, debug_console = False, verbose = False):
|
||||||
@ -850,7 +850,7 @@ class QubesServiceVm(QubesVm):
|
|||||||
# In fact there is no point in making it unpdatebale...
|
# In fact there is no point in making it unpdatebale...
|
||||||
# So, this is just for completncess
|
# So, this is just for completncess
|
||||||
assert not self.is_running()
|
assert not self.is_running()
|
||||||
self.updateable = True
|
self.updateable = True
|
||||||
|
|
||||||
def get_disk_utilization_root_img(self):
|
def get_disk_utilization_root_img(self):
|
||||||
return self.get_disk_usage(self.root_img)
|
return self.get_disk_usage(self.root_img)
|
||||||
@ -858,7 +858,7 @@ class QubesServiceVm(QubesVm):
|
|||||||
def get_root_img_sz(self):
|
def get_root_img_sz(self):
|
||||||
if not os.path.exists(self.root_img):
|
if not os.path.exists(self.root_img):
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
return os.path.getsize(self.root_img)
|
return os.path.getsize(self.root_img)
|
||||||
|
|
||||||
def verify_files(self):
|
def verify_files(self):
|
||||||
@ -925,7 +925,7 @@ class QubesNetVm(QubesServiceVm):
|
|||||||
|
|
||||||
def get_ip_for_vm(self, qid):
|
def get_ip_for_vm(self, qid):
|
||||||
hi = qid / 253
|
hi = qid / 253
|
||||||
lo = qid % 253 + 2
|
lo = qid % 253 + 2
|
||||||
assert hi >= 0 and hi <= 254 and lo >= 2 and lo <= 254, "Wrong IP address for VM"
|
assert hi >= 0 and hi <= 254 and lo >= 2 and lo <= 254, "Wrong IP address for VM"
|
||||||
return self.netprefix + "{0}.{1}".format(hi,lo)
|
return self.netprefix + "{0}.{1}".format(hi,lo)
|
||||||
|
|
||||||
@ -1006,7 +1006,7 @@ class QubesDom0NetVm(QubesNetVm):
|
|||||||
for cpu in self.session_cpus:
|
for cpu in self.session_cpus:
|
||||||
cpu_total_load += xend_session.session.xenapi.host_cpu.get_utilisation(cpu)
|
cpu_total_load += xend_session.session.xenapi.host_cpu.get_utilisation(cpu)
|
||||||
cpu_total_load /= len(self.session_cpus)
|
cpu_total_load /= len(self.session_cpus)
|
||||||
p = 100*cpu_total_load
|
p = 100*cpu_total_load
|
||||||
if p > 100:
|
if p > 100:
|
||||||
p = 100
|
p = 100
|
||||||
return p
|
return p
|
||||||
@ -1186,14 +1186,14 @@ class QubesAppVm(QubesVm):
|
|||||||
|
|
||||||
if verbose:
|
if verbose:
|
||||||
print "--> Creating the VM config file: {0}".format(self.conf_file)
|
print "--> Creating the VM config file: {0}".format(self.conf_file)
|
||||||
|
|
||||||
self.create_config_file()
|
self.create_config_file()
|
||||||
|
|
||||||
template_priv = self.template_vm.private_img
|
template_priv = self.template_vm.private_img
|
||||||
if verbose:
|
if verbose:
|
||||||
print "--> Copying the template's private image: {0}".\
|
print "--> Copying the template's private image: {0}".\
|
||||||
format(template_priv)
|
format(template_priv)
|
||||||
|
|
||||||
# We prefer to use Linux's cp, because it nicely handles sparse files
|
# We prefer to use Linux's cp, because it nicely handles sparse files
|
||||||
retcode = subprocess.call (["cp", template_priv, self.private_img])
|
retcode = subprocess.call (["cp", template_priv, self.private_img])
|
||||||
if retcode != 0:
|
if retcode != 0:
|
||||||
@ -1393,7 +1393,7 @@ class QubesVmCollection(dict):
|
|||||||
installed_by_rpm = True):
|
installed_by_rpm = True):
|
||||||
|
|
||||||
qid = self.get_new_unused_qid()
|
qid = self.get_new_unused_qid()
|
||||||
vm = QubesTemplateVm (qid=qid, name=name,
|
vm = QubesTemplateVm (qid=qid, name=name,
|
||||||
dir_path=dir_path, conf_file=conf_file,
|
dir_path=dir_path, conf_file=conf_file,
|
||||||
root_img=root_img, private_img=private_img,
|
root_img=root_img, private_img=private_img,
|
||||||
installed_by_rpm=installed_by_rpm,
|
installed_by_rpm=installed_by_rpm,
|
||||||
@ -1423,7 +1423,7 @@ class QubesVmCollection(dict):
|
|||||||
|
|
||||||
qid = self.get_new_unused_qid()
|
qid = self.get_new_unused_qid()
|
||||||
netid = self.get_new_unused_netid()
|
netid = self.get_new_unused_netid()
|
||||||
vm = QubesNetVm (qid=qid, name=name,
|
vm = QubesNetVm (qid=qid, name=name,
|
||||||
netid=netid,
|
netid=netid,
|
||||||
dir_path=dir_path, conf_file=conf_file,
|
dir_path=dir_path, conf_file=conf_file,
|
||||||
root_img=root_img)
|
root_img=root_img)
|
||||||
@ -1443,7 +1443,7 @@ class QubesVmCollection(dict):
|
|||||||
|
|
||||||
qid = self.get_new_unused_qid()
|
qid = self.get_new_unused_qid()
|
||||||
netid = self.get_new_unused_netid()
|
netid = self.get_new_unused_netid()
|
||||||
vm = QubesFirewallVm (qid=qid, name=name,
|
vm = QubesFirewallVm (qid=qid, name=name,
|
||||||
netid=netid,
|
netid=netid,
|
||||||
dir_path=dir_path, conf_file=conf_file,
|
dir_path=dir_path, conf_file=conf_file,
|
||||||
netvm_vm = self.get_default_fw_netvm_vm(),
|
netvm_vm = self.get_default_fw_netvm_vm(),
|
||||||
@ -1502,7 +1502,7 @@ class QubesVmCollection(dict):
|
|||||||
vms = set([vm for vm in self.values()
|
vms = set([vm for vm in self.values()
|
||||||
if (vm.is_appvm() and vm.template_vm.qid == template_qid)])
|
if (vm.is_appvm() and vm.template_vm.qid == template_qid)])
|
||||||
return vms
|
return vms
|
||||||
|
|
||||||
def verify_new_vm(self, new_vm):
|
def verify_new_vm(self, new_vm):
|
||||||
|
|
||||||
# Verify that qid is unique
|
# Verify that qid is unique
|
||||||
@ -1579,7 +1579,7 @@ class QubesVmCollection(dict):
|
|||||||
tree = xml.etree.ElementTree.ElementTree(root)
|
tree = xml.etree.ElementTree.ElementTree(root)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|
||||||
# We need to manually truncate the file, as we open the
|
# We need to manually truncate the file, as we open the
|
||||||
# file as "r+" in the lock_db_for_writing() function
|
# file as "r+" in the lock_db_for_writing() function
|
||||||
self.qubes_store_file.seek (0, os.SEEK_SET)
|
self.qubes_store_file.seek (0, os.SEEK_SET)
|
||||||
@ -1610,11 +1610,11 @@ class QubesVmCollection(dict):
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
element = tree.getroot()
|
element = tree.getroot()
|
||||||
default_template = element.get("default_template")
|
default_template = element.get("default_template")
|
||||||
self.default_template_qid = int(default_template) \
|
self.default_template_qid = int(default_template) \
|
||||||
if default_template != "None" else None
|
if default_template != "None" else None
|
||||||
|
|
||||||
default_netvm = element.get("default_netvm")
|
default_netvm = element.get("default_netvm")
|
||||||
if default_netvm is not None:
|
if default_netvm is not None:
|
||||||
self.default_netvm_qid = int(default_netvm) \
|
self.default_netvm_qid = int(default_netvm) \
|
||||||
if default_netvm != "None" else None
|
if default_netvm != "None" else None
|
||||||
@ -1637,7 +1637,7 @@ class QubesVmCollection(dict):
|
|||||||
|
|
||||||
vm = QubesNetVm(**kwargs)
|
vm = QubesNetVm(**kwargs)
|
||||||
self[vm.qid] = vm
|
self[vm.qid] = vm
|
||||||
|
|
||||||
except (ValueError, LookupError) as err:
|
except (ValueError, LookupError) as err:
|
||||||
print("{0}: import error (QubesNetVM) {1}".format(
|
print("{0}: import error (QubesNetVM) {1}".format(
|
||||||
os.path.basename(sys.argv[0]), err))
|
os.path.basename(sys.argv[0]), err))
|
||||||
@ -1668,10 +1668,10 @@ class QubesVmCollection(dict):
|
|||||||
netvm_vm = self[netvm_qid]
|
netvm_vm = self[netvm_qid]
|
||||||
|
|
||||||
kwargs["netvm_vm"] = netvm_vm
|
kwargs["netvm_vm"] = netvm_vm
|
||||||
|
|
||||||
vm = QubesFirewallVm(**kwargs)
|
vm = QubesFirewallVm(**kwargs)
|
||||||
self[vm.qid] = vm
|
self[vm.qid] = vm
|
||||||
|
|
||||||
except (ValueError, LookupError) as err:
|
except (ValueError, LookupError) as err:
|
||||||
print("{0}: import error (QubesFirewallVM) {1}".format(
|
print("{0}: import error (QubesFirewallVM) {1}".format(
|
||||||
os.path.basename(sys.argv[0]), err))
|
os.path.basename(sys.argv[0]), err))
|
||||||
@ -1680,7 +1680,7 @@ class QubesVmCollection(dict):
|
|||||||
|
|
||||||
self.default_template_qid
|
self.default_template_qid
|
||||||
# Then, read in the TemplateVMs, because a reference to templete VM
|
# Then, read in the TemplateVMs, because a reference to templete VM
|
||||||
# is needed to create each AppVM
|
# is needed to create each AppVM
|
||||||
for element in tree.findall("QubesTemplateVm"):
|
for element in tree.findall("QubesTemplateVm"):
|
||||||
try:
|
try:
|
||||||
|
|
||||||
@ -1717,7 +1717,7 @@ class QubesVmCollection(dict):
|
|||||||
netvm_vm = self[netvm_qid]
|
netvm_vm = self[netvm_qid]
|
||||||
|
|
||||||
kwargs["netvm_vm"] = netvm_vm
|
kwargs["netvm_vm"] = netvm_vm
|
||||||
|
|
||||||
vm = QubesTemplateVm(**kwargs)
|
vm = QubesTemplateVm(**kwargs)
|
||||||
|
|
||||||
self[vm.qid] = vm
|
self[vm.qid] = vm
|
||||||
@ -1769,7 +1769,7 @@ class QubesVmCollection(dict):
|
|||||||
netvm_vm = self[netvm_qid]
|
netvm_vm = self[netvm_qid]
|
||||||
|
|
||||||
kwargs["netvm_vm"] = netvm_vm
|
kwargs["netvm_vm"] = netvm_vm
|
||||||
|
|
||||||
if kwargs["label"] is not None:
|
if kwargs["label"] is not None:
|
||||||
if kwargs["label"] not in QubesVmLabels:
|
if kwargs["label"] not in QubesVmLabels:
|
||||||
print "ERROR: incorrect label for VM '{0}'".format(kwargs["name"])
|
print "ERROR: incorrect label for VM '{0}'".format(kwargs["name"])
|
||||||
@ -1805,8 +1805,8 @@ class QubesVmCollection(dict):
|
|||||||
format(kwargs["name"], kwargs["template_qid"])
|
format(kwargs["name"], kwargs["template_qid"])
|
||||||
|
|
||||||
kwargs["template_vm"] = template_vm
|
kwargs["template_vm"] = template_vm
|
||||||
kwargs["netvm_vm"] = self.get_default_netvm_vm()
|
kwargs["netvm_vm"] = self.get_default_netvm_vm()
|
||||||
|
|
||||||
if kwargs["label"] is not None:
|
if kwargs["label"] is not None:
|
||||||
if kwargs["label"] not in QubesVmLabels:
|
if kwargs["label"] not in QubesVmLabels:
|
||||||
print "ERROR: incorrect label for VM '{0}'".format(kwargs["name"])
|
print "ERROR: incorrect label for VM '{0}'".format(kwargs["name"])
|
||||||
|
Loading…
Reference in New Issue
Block a user