Traceback (most recent call last):
File "./net-convert.py", line 82, in <module>
main()
File "./net-convert.py", line 78, in main
r.render_network_state(network_state=ns, target=args.directory)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 501, in render_network_state
network_state).items():
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 479, in _render_sysconfig
cls._render_physical_interfaces(network_state, iface_contents)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 407, in _render_physical_interfaces
cls._render_subnet_routes(iface_cfg, route_cfg, iface_subnets)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 352, in _render_subnet_routes
% (iface_cfg.name))
ValueError: Duplicate declaration of default route found for interface 'eth1'
cloud-init 0.7.9-153-g16a7302f-0ubuntu1~16.04.1
yakkety ----------------
Traceback (most recent call last):
File "./net-convert.py", line 82, in <module>
main()
File "./net-convert.py", line 78, in main
r.render_network_state(network_state=ns, target=args.directory)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 501, in render_network_state
network_state).items():
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 479, in _render_sysconfig
cls._render_physical_interfaces(network_state, iface_contents)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 407, in _render_physical_interfaces
cls._render_subnet_routes(iface_cfg, route_cfg, iface_subnets)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 352, in _render_subnet_routes
% (iface_cfg.name))
ValueError: Duplicate declaration of default route found for interface 'eth1'
cloud-init 0.7.9-153-g16a7302f-0ubuntu1~16.10.1
zesty ----------------
Traceback (most recent call last):
File "./net-convert.py", line 82, in <module>
main()
File "./net-convert.py", line 78, in main
r.render_network_state(network_state=ns, target=args.directory)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 501, in render_network_state
network_state).items():
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 479, in _render_sysconfig
cls._render_physical_interfaces(network_state, iface_contents)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 407, in _render_physical_interfaces
cls._render_subnet_routes(iface_cfg, route_cfg, iface_subnets)
File "/usr/lib/python3/dist-packages/cloudinit/net/sysconfig.py", line 352, in _render_subnet_routes
% (iface_cfg.name))
ValueError: Duplicate declaration of default route found for interface 'eth1'
cloud-init 0.7.9-153-g16a7302f-0ubuntu1~17.04.1
No problems with networking experienced when starting up xenial yakkety or zesty cloud-init proposed containers.
Also validated the expected raised ValueError due to duplicate macs with the following script:
cat >duplicate_ gw_data. json <<EOF mac_address" : "aa:ab: ac:ad:ae: 00",
{
"links": [
{"ethernet_
"id": "tap1a", "type": "phy", "vif_id": "1a81968a"}
],
"networks": [
{"id": "network0", "ip_address": "172.19.1.34", "link": "tap1a",
"netmask": "255.255.255.0", "network_id": "dacd568d", "type": "ipv4",
"routes": [
{"gateway": "172.19.3.254", "netmask": "0.0.0.0",
"network": "0.0.0.0"},
{"gateway": "172.19.3.200", "netmask": "0.0.0.0",
"network": "0.0.0.0"}]}
],
"services": [{"address": "172.19.0.12", "type": "dns"}]
}
EOF
for release in xenial yakkety zesty; do echo $release ----------------; gw_data. json test-$release/ root/duplicate_ gw_data. json; root/net- convert. py; data=duplicate_ gw_data. json --kind= network_ data.json --output- kind=sysconfig -m eth1,aa: ab:ac:ad: ae:00 --directory= ./out.d;
lxc file push duplicate_
lxc file push net-convert.py test-$release/
lxc exec test-$release -- ./net-convert.py --network-
lxc exec test-$release -- dpkg-query --show cloud-init;
done;
--------OUTPUT with expected ValueErrors------
xenial ----------------
Internal State object: cloudinit. net.network_ state.NetworkSt ate
nameservers:
address: null
gateway: null
mac_ address: aa:ab:ac:ad:ae:00
subnets:
ipv4: true
netmask: 255.255.255.0
routes:
netmask: 0.0.0.0
network: 0.0.0.0
netmask: 0.0.0.0
network: 0.0.0.0
type: static
!!python/
_network_state:
dns:
- 172.19.0.12
search: []
interfaces:
eth1:
inet: inet
mode: manual
mtu: null
name: eth1
- address: 172.19.1.34
- gateway: 172.19.3.254
- gateway: 172.19.3.200
type: physical
routes: []
use_ipv6: false
_version: 1
use_ipv6: false
Traceback (most recent call last): network_ state(network_ state=ns, target= args.directory) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 501, in render_ network_ state state). items() : python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 479, in _render_sysconfig _render_ physical_ interfaces( network_ state, iface_contents) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 407, in _render_ physical_ interfaces _render_ subnet_ routes( iface_cfg, route_cfg, iface_subnets) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 352, in _render_ subnet_ routes g16a7302f- 0ubuntu1~ 16.04.1
File "./net-convert.py", line 82, in <module>
main()
File "./net-convert.py", line 78, in main
r.render_
File "/usr/lib/
network_
File "/usr/lib/
cls.
File "/usr/lib/
cls.
File "/usr/lib/
% (iface_cfg.name))
ValueError: Duplicate declaration of default route found for interface 'eth1'
cloud-init 0.7.9-153-
yakkety ----------------
Internal State object: cloudinit. net.network_ state.NetworkSt ate
nameservers:
address: null
gateway: null
mac_ address: aa:ab:ac:ad:ae:00
subnets:
ipv4: true
netmask: 255.255.255.0
routes:
netmask: 0.0.0.0
network: 0.0.0.0
netmask: 0.0.0.0
network: 0.0.0.0
type: static
!!python/
_network_state:
dns:
- 172.19.0.12
search: []
interfaces:
eth1:
inet: inet
mode: manual
mtu: null
name: eth1
- address: 172.19.1.34
- gateway: 172.19.3.254
- gateway: 172.19.3.200
type: physical
routes: []
use_ipv6: false
_version: 1
use_ipv6: false
Traceback (most recent call last): network_ state(network_ state=ns, target= args.directory) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 501, in render_ network_ state state). items() : python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 479, in _render_sysconfig _render_ physical_ interfaces( network_ state, iface_contents) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 407, in _render_ physical_ interfaces _render_ subnet_ routes( iface_cfg, route_cfg, iface_subnets) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 352, in _render_ subnet_ routes g16a7302f- 0ubuntu1~ 16.10.1
File "./net-convert.py", line 82, in <module>
main()
File "./net-convert.py", line 78, in main
r.render_
File "/usr/lib/
network_
File "/usr/lib/
cls.
File "/usr/lib/
cls.
File "/usr/lib/
% (iface_cfg.name))
ValueError: Duplicate declaration of default route found for interface 'eth1'
cloud-init 0.7.9-153-
zesty ----------------
Internal State object: cloudinit. net.network_ state.NetworkSt ate
nameservers:
address: null
gateway: null
mac_ address: aa:ab:ac:ad:ae:00
subnets:
ipv4: true
netmask: 255.255.255.0
routes:
netmask: 0.0.0.0
network: 0.0.0.0
netmask: 0.0.0.0
network: 0.0.0.0
type: static
!!python/
_network_state:
dns:
- 172.19.0.12
search: []
interfaces:
eth1:
inet: inet
mode: manual
mtu: null
name: eth1
- address: 172.19.1.34
- gateway: 172.19.3.254
- gateway: 172.19.3.200
type: physical
routes: []
use_ipv6: false
_version: 1
use_ipv6: false
Traceback (most recent call last): network_ state(network_ state=ns, target= args.directory) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 501, in render_ network_ state state). items() : python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 479, in _render_sysconfig _render_ physical_ interfaces( network_ state, iface_contents) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 407, in _render_ physical_ interfaces _render_ subnet_ routes( iface_cfg, route_cfg, iface_subnets) python3/ dist-packages/ cloudinit/ net/sysconfig. py", line 352, in _render_ subnet_ routes g16a7302f- 0ubuntu1~ 17.04.1
File "./net-convert.py", line 82, in <module>
main()
File "./net-convert.py", line 78, in main
r.render_
File "/usr/lib/
network_
File "/usr/lib/
cls.
File "/usr/lib/
cls.
File "/usr/lib/
% (iface_cfg.name))
ValueError: Duplicate declaration of default route found for interface 'eth1'
cloud-init 0.7.9-153-
for release in xenial yakkety zesty; do gw_data. json test-xenial/ root/duplicate_ gw_data. json; data=duplicate_ gw_data. json --kind= network_ data.json --output- kind=sysconfig -m eth1,aa: ab:ac:ad: ae:00 --directory= ./out.d;
echo $release ----------------;
lxc file push duplicate_
lxc exec test-$release -- ./net-convert.py --network-
lxc file exec test-$release -- dpkg-query --show cloud-init;
done;