本文整理汇总了Python中freenasUI.common.warden.Warden.start方法的典型用法代码示例。如果您正苦于以下问题:Python Warden.start方法的具体用法?Python Warden.start怎么用?Python Warden.start使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类freenasUI.common.warden.Warden
的用法示例。
在下文中一共展示了Warden.start方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: save
# 需要导入模块: from freenasUI.common.warden import Warden [as 别名]
# 或者: from freenasUI.common.warden.Warden import start [as 别名]
#.........这里部分代码省略.........
createfile = "/var/tmp/.jailcreate"
try:
cf = open(createfile, "a+")
cf.close()
w.create(**jail_create_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
if os.path.exists(createfile):
os.unlink(createfile)
return
if os.path.exists(createfile):
os.unlink(createfile)
for key in (
'jail_bridge_ipv4', 'jail_bridge_ipv6', 'jail_defaultrouter_ipv4',
'jail_defaultrouter_ipv6', 'jail_mac'
):
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
val = self.cleaned_data.get(key, None)
if val:
if key == 'jail_bridge_ipv4':
mask = self.cleaned_data.get('jail_bridge_ipv4_netmask', jc_ipv4_netmask)
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV4
jail_set_args['bridge-ipv4'] = "%s/%s" % (val, mask)
elif key == 'jail_bridge_ipv6':
prefix = self.cleaned_data.get('jail_bridge_ipv6_prefix', jc_ipv6_prefix)
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV6
jail_set_args['bridge-ipv6'] = "%s/%s" % (val, prefix)
elif key == 'jail_defaultrouter_ipv4':
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV4
jail_set_args['defaultrouter-ipv4'] = val
elif key == 'jail_defaultrouter_ipv6':
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV6
jail_set_args['defaultrouter-ipv6'] = val
elif key == 'jail_mac':
jail_flags |= WARDEN_SET_FLAGS_MAC
jail_set_args['mac'] = val
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
jail_nat = self.cleaned_data.get('jail_nat', None)
jail_vnet = self.cleaned_data.get('jail_vnet', None)
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_nat:
jail_flags |= WARDEN_SET_FLAGS_NAT_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_NAT_DISABLE
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_vnet:
# XXXX if NOT LINUX XXXX (revisit this)
if (saved_template.jt_arch != 'x86' and saved_template.jt_os != 'Linux'):
jail_flags |= WARDEN_SET_FLAGS_VNET_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_VNET_DISABLE
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
if self.cleaned_data['jail_autostart']:
try:
w.auto(jail=jail_host)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
try:
w.start(jail=jail_host)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
示例2: save
# 需要导入模块: from freenasUI.common.warden import Warden [as 别名]
# 或者: from freenasUI.common.warden.Warden import start [as 别名]
#.........这里部分代码省略.........
elif key == 'jail_defaultrouter_ipv4':
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV4
jail_set_args['defaultrouter-ipv4'] = val
elif key == 'jail_defaultrouter_ipv6':
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV6
jail_set_args['defaultrouter-ipv6'] = val
elif key == 'jail_mac':
jail_flags |= WARDEN_SET_FLAGS_MAC
jail_set_args['mac'] = val
elif key == 'jail_iface':
jail_flags |= WARDEN_SET_FLAGS_IFACE
jail_set_args['iface'] = val
elif key == 'jail_flags':
jail_flags |= WARDEN_SET_FLAGS_FLAGS
jail_set_args['jflags'] = val
elif key == 'jail_mac':
jail_mac_list = [jail.jail_mac for jail in Jails.objects.all()]
mac_address = generate_randomMAC()
while mac_address in jail_mac_list:
mac_address = generate_randomMAC()
jail_flags |= WARDEN_SET_FLAGS_MAC
jail_set_args['mac'] = mac_address
jail_set_args['flags'] = jail_flags
try:
# Do not try to set options if no other options other than
# jail and flags were set.
if len(jail_set_args) > 2:
w.set(**jail_set_args)
except Exception as e:
log.debug('Failed to set jail arguments', exc_info=True)
self.errors['__all__'] = self.error_class([str(e)])
return
jail_nat = self.cleaned_data.get('jail_nat', None)
jail_vnet = self.cleaned_data.get('jail_vnet', None)
if jc.jc_ipv4_dhcp or jc.jc_ipv6_autoconf:
jail_vnet = True
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_nat:
jail_flags |= WARDEN_SET_FLAGS_NAT_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_NAT_DISABLE
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
log.debug('Failed to set jail arguments', exc_info=True)
self.errors['__all__'] = self.error_class([str(e)])
return
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_vnet:
# XXXX if NOT LINUX XXXX (revisit this)
if (saved_template.jt_arch != 'x86' and
saved_template.jt_os != 'Linux'):
jail_flags |= WARDEN_SET_FLAGS_VNET_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_VNET_DISABLE
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
log.debug('Failed to set jail arguments', exc_info=True)
self.errors['__all__'] = self.error_class([str(e)])
return
if self.cleaned_data['jail_autostart']:
try:
w.auto(jail=jail_host)
except Exception as e:
self.errors['__all__'] = self.error_class([str(e)])
return
try:
w.start(jail=jail_host)
except Exception as e:
log.debug('Failed to start jail', exc_info=True)
self.errors['__all__'] = self.error_class([str(e)])
return
# Requery instance so we have everything up-to-date after save
# See #14686
self.instance = Jails.objects.get(jail_host=jail_host)
if self.instance:
add_media_user_and_group(self.instance.jail_path)
示例3: save
# 需要导入模块: from freenasUI.common.warden import Warden [as 别名]
# 或者: from freenasUI.common.warden.Warden import start [as 别名]
def save(self):
try:
jc = JailsConfiguration.objects.order_by("-id")[0]
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
if not jc.jc_path:
self.errors['__all__'] = self.error_class(["No jail root configured."])
return
jail_host = self.cleaned_data.get('jail_host')
jail_ipv4 = self.cleaned_data.get('jail_ipv4')
jail_ipv6 = self.cleaned_data.get('jail_ipv6')
jail_flags = WARDEN_FLAGS_NONE
jail_create_args = { }
jail_create_args['jail'] = jail_host
w = Warden()
# if self.cleaned_data['jail_32bit']:
# jail_flags |= WARDEN_CREATE_FLAGS_32BIT
if self.cleaned_data['jail_source']:
jail_flags |= WARDEN_CREATE_FLAGS_SRC
if self.cleaned_data['jail_ports']:
jail_flags |= WARDEN_CREATE_FLAGS_PORTS
if self.cleaned_data['jail_vanilla']:
jail_flags |= WARDEN_CREATE_FLAGS_VANILLA
if self.cleaned_data['jail_type'] == WARDEN_TYPE_PORTJAIL:
jail_flags |= WARDEN_CREATE_FLAGS_PORTJAIL
elif self.cleaned_data['jail_type'] == WARDEN_TYPE_PLUGINJAIL:
jail_flags |= WARDEN_CREATE_FLAGS_PLUGINJAIL
elif self.cleaned_data['jail_type'] == WARDEN_TYPE_LINUXJAIL:
jail_flags |= WARDEN_CREATE_FLAGS_LINUXJAIL
jail_create_args['script'] = LINUXSCRIPT
if self.cleaned_data['jail_archive']:
if jail_flags & WARDEN_CREATE_FLAGS_LINUXJAIL:
jail_flags |= WARDEN_CREATE_FLAGS_LINUXARCHIVE
else:
jail_flags |= WARDEN_CREATE_FLAGS_ARCHIVE
if jail_ipv4:
jail_flags |= WARDEN_CREATE_FLAGS_IPV4
jail_create_args['ipv4'] = jail_ipv4
if jail_ipv6:
jail_flags |= WARDEN_CREATE_FLAGS_IPV6
jail_create_args['ipv6'] = jail_ipv6
jail_create_args['flags'] = jail_flags
try:
w.create(**jail_create_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
jail_set_args = { }
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
jail_bridge_ipv4 = self.cleaned_data.get('jail_bridge_ipv4')
jail_bridge_ipv6 = self.cleaned_data.get('jail_bridge_ipv6')
if jail_bridge_ipv4:
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV4
jail_set_args['bridge-ipv4'] = jail_bridge_ipv4
if jail_bridge_ipv6:
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV6
jail_set_args['bridge-ipv6'] = jail_bridge_ipv6
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
if self.cleaned_data['jail_autostart']:
try:
w.auto(jail=jail_host)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
try:
w.start(jail=jail_host)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
示例4: save
# 需要导入模块: from freenasUI.common.warden import Warden [as 别名]
# 或者: from freenasUI.common.warden.Warden import start [as 别名]
#.........这里部分代码省略.........
createfile = "/var/tmp/.jailcreate"
try:
cf = open(createfile, "a+")
cf.close()
w.create(**jail_create_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
if os.path.exists(createfile):
os.unlink(createfile)
return
if os.path.exists(createfile):
os.unlink(createfile)
for key in ('jail_bridge_ipv4', 'jail_bridge_ipv6', \
'jail_defaultrouter_ipv4', 'jail_defaultrouter_ipv6', 'jail_mac'):
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
val = self.cleaned_data.get(key, None)
if val:
if key == 'jail_bridge_ipv4':
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV4
jail_set_args['bridge-ipv4'] = val
elif key == 'jail_bridge_ipv6':
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV6
jail_set_args['bridge-ipv6'] = val
elif key == 'jail_defaultrouter_ipv4':
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV4
jail_set_args['defaultrouter-ipv4'] = val
elif key == 'jail_defaultrouter_ipv6':
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV6
jail_set_args['defaultrouter-ipv6'] = val
elif key == 'jail_mac':
jail_flags |= WARDEN_SET_FLAGS_MAC
jail_set_args['mac'] = val
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
jail_nat = self.cleaned_data.get('jail_nat', None)
jail_vnet = self.cleaned_data.get('jail_vnet', None)
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_nat:
jail_flags |= WARDEN_SET_FLAGS_NAT_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_NAT_DISABLE
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
jail_set_args = {}
jail_set_args['jail'] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_vnet:
if (
self.cleaned_data['jail_type'] != WARDEN_TYPE_LINUXJAIL
and
not self.cleaned_data['jail_32bit']
):
jail_flags |= WARDEN_SET_FLAGS_VNET_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_VNET_DISABLE
jail_set_args['flags'] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
if self.cleaned_data['jail_autostart']:
try:
w.auto(jail=jail_host)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
try:
w.start(jail=jail_host)
except Exception as e:
self.errors['__all__'] = self.error_class([_(e.message)])
return
示例5: save
# 需要导入模块: from freenasUI.common.warden import Warden [as 别名]
# 或者: from freenasUI.common.warden.Warden import start [as 别名]
#.........这里部分代码省略.........
for key in (
"jail_bridge_ipv4",
"jail_bridge_ipv6",
"jail_defaultrouter_ipv4",
"jail_defaultrouter_ipv6",
"jail_mac",
"jail_iface",
"jail_flags",
):
jail_set_args = {}
jail_set_args["jail"] = jail_host
jail_flags = WARDEN_FLAGS_NONE
val = self.cleaned_data.get(key, None)
if val:
if key == "jail_bridge_ipv4":
mask = self.cleaned_data.get("jail_bridge_ipv4_netmask", jc_ipv4_netmask)
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV4
jail_set_args["bridge-ipv4"] = "%s/%s" % (val, mask)
elif key == "jail_bridge_ipv6":
prefix = self.cleaned_data.get("jail_bridge_ipv6_prefix", jc_ipv6_prefix)
jail_flags |= WARDEN_SET_FLAGS_BRIDGE_IPV6
jail_set_args["bridge-ipv6"] = "%s/%s" % (val, prefix)
elif key == "jail_defaultrouter_ipv4":
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV4
jail_set_args["defaultrouter-ipv4"] = val
elif key == "jail_defaultrouter_ipv6":
jail_flags |= WARDEN_SET_FLAGS_DEFAULTROUTER_IPV6
jail_set_args["defaultrouter-ipv6"] = val
elif key == "jail_mac":
jail_flags |= WARDEN_SET_FLAGS_MAC
jail_set_args["mac"] = val
elif key == "jail_iface":
jail_flags |= WARDEN_SET_FLAGS_IFACE
jail_set_args["iface"] = val
elif key == "jail_flags":
jail_flags |= WARDEN_SET_FLAGS_FLAGS
jail_set_args["jflags"] = val
jail_set_args["flags"] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors["__all__"] = self.error_class([_(e.message)])
return
jail_nat = self.cleaned_data.get("jail_nat", None)
jail_vnet = self.cleaned_data.get("jail_vnet", None)
if jc.jc_ipv4_dhcp or jc.jc_ipv6_autoconf:
jail_vnet = True
jail_set_args = {}
jail_set_args["jail"] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_nat:
jail_flags |= WARDEN_SET_FLAGS_NAT_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_NAT_DISABLE
jail_set_args["flags"] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors["__all__"] = self.error_class([_(e.message)])
return
jail_set_args = {}
jail_set_args["jail"] = jail_host
jail_flags = WARDEN_FLAGS_NONE
if jail_vnet:
# XXXX if NOT LINUX XXXX (revisit this)
if saved_template.jt_arch != "x86" and saved_template.jt_os != "Linux":
jail_flags |= WARDEN_SET_FLAGS_VNET_ENABLE
else:
jail_flags |= WARDEN_SET_FLAGS_VNET_DISABLE
jail_set_args["flags"] = jail_flags
try:
w.set(**jail_set_args)
except Exception as e:
self.errors["__all__"] = self.error_class([_(e.message)])
return
if self.cleaned_data["jail_autostart"]:
try:
w.auto(jail=jail_host)
except Exception as e:
self.errors["__all__"] = self.error_class([_(e.message)])
return
try:
w.start(jail=jail_host)
except Exception as e:
self.errors["__all__"] = self.error_class([_(e.message)])
return