本文整理汇总了Python中xmlbuilder.XMLBuilder.bridge方法的典型用法代码示例。如果您正苦于以下问题:Python XMLBuilder.bridge方法的具体用法?Python XMLBuilder.bridge怎么用?Python XMLBuilder.bridge使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xmlbuilder.XMLBuilder
的用法示例。
在下文中一共展示了XMLBuilder.bridge方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: build_network_xml
# 需要导入模块: from xmlbuilder import XMLBuilder [as 别名]
# 或者: from xmlbuilder.XMLBuilder import bridge [as 别名]
def build_network_xml(self, network):
"""Generate network XML
:type network: Network
:rtype : String
"""
network_xml = XMLBuilder('network')
network_xml.name(self._get_name(
network.environment and network.environment.name or '',
network.name))
stp_val = 'off'
if self.driver.stp:
stp_val = 'on'
network_xml.bridge(
name="fuelbr{0}".format(network.id),
stp=stp_val, delay="0")
if not (network.forward is None):
network_xml.forward(mode=network.forward)
if not (network.ip_network is None):
ip_network = IPNetwork(network.ip_network)
with network_xml.ip(
address=str(ip_network[1]),
prefix=str(ip_network.prefixlen)):
if network.has_pxe_server:
network_xml.tftp(root=network.tftp_root_dir)
if network.has_dhcp_server:
with network_xml.dhcp:
network_xml.range(start=str(network.ip_pool_start),
end=str(network.ip_pool_end))
for interface in network.interfaces:
for address in interface.addresses:
if IPAddress(address.ip_address) in ip_network:
network_xml.host(
mac=str(interface.mac_address),
ip=str(address.ip_address),
name=interface.node.name
)
if network.has_pxe_server:
network_xml.bootp(file="pxelinux.0")
return str(network_xml)
示例2: update_dhcpd
# 需要导入模块: from xmlbuilder import XMLBuilder [as 别名]
# 或者: from xmlbuilder.XMLBuilder import bridge [as 别名]
def update_dhcpd(self):
mac = re.sub('-',':',self.fuel['mac'])
fuel = self.fuel
ip = vlans[self.vlan]['network']
filename = "/tmp/deploy." + str(os.getpid())
x = XMLBuilder('network')
x.name("lab" + str(self.vlan))
x.bridge(name = "br"+self.vlan, stp="off", delay="0")
with x.forward(mode = "route", dev="eth0"):
x.interface(dev="eth0")
with x.ip(address = str(ip.ip+1), netmask="255.255.255.192"):
with x.dhcp:
x.host(mac=mac, ip=str(ip.ip+2))
x.bootp(file="pxelinux.0")
x.tftp(root="/var/lib/tftpboot")
print str(x)+"\n"
f=open(filename,"w")
f.write(str(x)+"\n")
f.close()
os.system("sudo ifconfig br%s down" % self.vlan)
os.system("virsh net-destroy lab%s" % self.vlan)
os.system("virsh net-create %s" % filename)
os.system("sudo brctl addif br%s eth1.%s" % (self.vlan, self.vlan))