summaryrefslogtreecommitdiff
path: root/tests/data/netinfo
diff options
context:
space:
mode:
authorGonéri Le Bouder <goneri@lebouder.net>2019-12-20 13:45:17 -0500
committerDaniel Watkins <oddbloke@ubuntu.com>2019-12-20 13:45:17 -0500
commit9bfb2ba7268e2c3c932023fc3d3020cdc6d6cc18 (patch)
treee2370783dd4e86e7abfa8167fc8b254ad48918b5 /tests/data/netinfo
parent87f2cb0acc7e802f93fa71ff3432dfd6708717ca (diff)
downloadvyos-cloud-init-9bfb2ba7268e2c3c932023fc3d3020cdc6d6cc18.tar.gz
vyos-cloud-init-9bfb2ba7268e2c3c932023fc3d3020cdc6d6cc18.zip
freebsd: introduce the freebsd renderer (#61)
* freebsd: introduce the freebsd renderer Refactoring of the FreeBSD code base to provide a real network renderer for FreeBSD. Use the generic update_sysconfig_file() from rhel_util to handle the access to /etc/rc.conf. Interfaces are not automatically renamed by FreeBSD using the following configuration in /etc/rc.conf: ``` ifconfig_fxp0_name="eth0" ``` * freesd: use regex named groups Reduce the complexity of `get_interfaces_by_mac_on_freebsd()` with named groups. * freebsd: breaks up _write_network() in tree small functions - `_write_ifconfig_entries()` - `_write_route_entries()` - `_write_resolve_conf()` * extend find_fallback_nic() to support FreeBSD this uses `route -n show default` to find the default interface * freebsd: use dns keys from NetworkState class The NetworkState class (settings instance) exposes the DNS configuration in two keys: - `dns_nameservers` - `dns_searchdomains` On OpenStack, these keys are set when a global DNS server is set. The alternative is the `dns_nameservers` and `dns_search` keys from each subdomain. We continue to read those. * freebsd: properly target the /etc/resolv.conf file * freebsd: ignore 'service routing restart' ret code On FreeBSD 10, the restart of routing and dhclient is likely to fail because - routing: it cannot remove the loopback route, but it will still set up the default route as expected. - dhclient: it cannot stop the dhclient started by the netif service. In both case, the situation is ok, and we can proceed. * freebsd: handle case when metadata MAC local locally Handle the case where the metadata configuration comes with a MAC that does not exist locally. See: - https://github.com/canonical/cloud-init/pull/61/files/635ce14b3153934ba1041be48b7245062f21e960#r359600604 - https://github.com/canonical/cloud-init/pull/61/files/635ce14b3153934ba1041be48b7245062f21e960#r359600966 * freebsd: show up a warning if several subnet found The FreeBSD provider currently only allow one subnet per interface. * freebsd: honor the target parameter in _write_network * freebsd: log when a bad route is found * freebsd: pass _postcmds to start_services() * freebsd: updatercconf() is depercated Replace `updatercconf()` by `rhel_util.update_sysconfig_file()`. * freebsd: ensure gateway is ipv4 before using it With the legacy ENI format, an IPv6 gateway may be pushed. This instead of the expected IPv4. * freebsd: find_fallback_nic, support FB10 On FreeBSD <= 10, `ifconfig -l` ignores the down interfaces. * freebsd: use util.target_path() to load resolv.conf Ensure we access `/etc/resolv.conf`, not `etc/resolv.conf`. * freebsd: skip subnet without netmask Those are likely to be either invalid of in IPv6 format. IPv6 support will be addressed later in a new patchset. * freebsd: get_devicelist returns netif list Ensure `get_devicelist()` returns the list of known netif on FreeBSD. * replace rhel_util.update_sysconfig_file wrapper call, with a wrapper function * reverse if condition to remove an indent Co-authored-by: Igor Galić <me+github@igalic.co>
Diffstat (limited to 'tests/data/netinfo')
-rw-r--r--tests/data/netinfo/freebsd-ifconfig-output52
-rw-r--r--tests/data/netinfo/freebsd-netdev-formatted-output23
2 files changed, 49 insertions, 26 deletions
diff --git a/tests/data/netinfo/freebsd-ifconfig-output b/tests/data/netinfo/freebsd-ifconfig-output
index 3de15a5a..f64c2f60 100644
--- a/tests/data/netinfo/freebsd-ifconfig-output
+++ b/tests/data/netinfo/freebsd-ifconfig-output
@@ -1,17 +1,39 @@
vtnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
- options=6c07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
- ether fa:16:3e:14:1f:99
- hwaddr fa:16:3e:14:1f:99
- inet 10.1.80.61 netmask 0xfffff000 broadcast 10.1.95.255
- nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
- media: Ethernet 10Gbase-T <full-duplex>
- status: active
-pflog0: flags=0<> metric 0 mtu 33160
-pfsync0: flags=0<> metric 0 mtu 1500
- syncpeer: 0.0.0.0 maxupd: 128 defer: off
+ options=6c07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
+ ether 52:54:00:50:b7:0d
+re0.33: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
+ options=80003<RXCSUM,TXCSUM,LINKSTATE>
+ ether 80:00:73:63:5c:48
+ groups: vlan
+ vlan: 33 vlanpcp: 0 parent interface: re0
+ media: Ethernet autoselect (1000baseT <full-duplex,master>)
+ status: active
+ nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
+bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
+ ether 02:14:39:0e:25:00
+ inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
+ id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
+ maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200
+ root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
+ member: vnet0:11 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
+ ifmaxaddr 0 port 5 priority 128 path cost 2000
+ member: vnet0:1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
+ ifmaxaddr 0 port 4 priority 128 path cost 2000
+ groups: bridge
+ nd6 options=9<PERFORMNUD,IFDISABLED>
+vnet0:11: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
+ description: 'associated with jail: webirc'
+ options=8<VLAN_MTU>
+ ether 02:ff:60:8c:f3:72
+ hwaddr 02:2b:bb:64:3f:0a
+ inet6 fe80::2b:bbff:fe64:3f0a%vnet0:11 prefixlen 64 tentative scopeid 0x5
+ groups: epair
+ media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)
+ status: active
+ nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
- options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
- inet6 ::1 prefixlen 128
- inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
- inet 127.0.0.1 netmask 0xff000000
- nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
+ options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
+ inet6 ::1 prefixlen 128
+ inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
+ inet 127.0.0.1 netmask 0xff000000
+ nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
diff --git a/tests/data/netinfo/freebsd-netdev-formatted-output b/tests/data/netinfo/freebsd-netdev-formatted-output
index a9d2ac14..a0d937b3 100644
--- a/tests/data/netinfo/freebsd-netdev-formatted-output
+++ b/tests/data/netinfo/freebsd-netdev-formatted-output
@@ -1,11 +1,12 @@
-+++++++++++++++++++++++++++++++Net device info+++++++++++++++++++++++++++++++
-+---------+-------+----------------+------------+-------+-------------------+
-| Device | Up | Address | Mask | Scope | Hw-Address |
-+---------+-------+----------------+------------+-------+-------------------+
-| lo0 | True | 127.0.0.1 | 0xff000000 | . | . |
-| lo0 | True | ::1/128 | . | . | . |
-| lo0 | True | fe80::1%lo0/64 | . | 0x4 | . |
-| pflog0 | False | . | . | . | . |
-| pfsync0 | False | . | . | . | . |
-| vtnet0 | True | 10.1.80.61 | 0xfffff000 | . | fa:16:3e:14:1f:99 |
-+---------+-------+----------------+------------+-------+-------------------+
++++++++++++++++++++++++++++++++++++++++++Net device info++++++++++++++++++++++++++++++++++++++++++
++----------+------+-------------------------------------+------------+-------+-------------------+
+| Device | Up | Address | Mask | Scope | Hw-Address |
++----------+------+-------------------------------------+------------+-------+-------------------+
+| bridge0 | True | 192.168.1.1 | 0xffffff00 | . | 02:14:39:0e:25:00 |
+| lo0 | True | 127.0.0.1 | 0xff000000 | . | . |
+| lo0 | True | ::1/128 | . | . | . |
+| lo0 | True | fe80::1%lo0/64 | . | 0x2 | . |
+| re0.33 | True | . | . | . | 80:00:73:63:5c:48 |
+| vnet0:11 | True | fe80::2b:bbff:fe64:3f0a%vnet0:11/64 | . | 0x5 | 02:2b:bb:64:3f:0a |
+| vtnet0 | True | . | . | . | 52:54:00:50:b7:0d |
++----------+------+-------------------------------------+------------+-------+-------------------+