<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vyos-cloud-init.git/cloudinit/net, branch 20.1</title>
<subtitle> (mirror of https://github.com/vyos/vyos-cloud-init.git)
</subtitle>
<id>https://git.amelek.net/vyos/vyos-cloud-init.git/atom?h=20.1</id>
<link rel='self' href='https://git.amelek.net/vyos/vyos-cloud-init.git/atom?h=20.1'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/'/>
<updated>2020-02-03T19:56:51+00:00</updated>
<entry>
<title>sysconfig: distro-specific config rendering for BOOTPROTO option (#162)</title>
<updated>2020-02-03T19:56:51+00:00</updated>
<author>
<name>Robert Schweikert</name>
<email>rjschwei@suse.com</email>
</author>
<published>2020-02-03T19:56:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=06e324ff8edb3126e5a8060757a48ceab2b1a121'/>
<id>urn:sha1:06e324ff8edb3126e5a8060757a48ceab2b1a121</id>
<content type='text'>
- Introduce the "flavor" configuration option for the sysconfig renderer
  this is necessary to account for differences in the handling of the
  BOOTPROTO setting between distributions (lp#1858808)
  + Thanks to Petr Pavlu for the idea
- Network config clean up for sysconfig renderer
  + The introduction of the "flavor" renderer configuration allows us
    to only write values that are pertinent for the given distro
- Set the DHCPv6 client mode on SUSE (lp#1800854)

Co-authored-by: Chad Smith &lt;chad.smith@canonical.com&gt;

LP: #1800854
</content>
</entry>
<entry>
<title>cloudinit: replace "from six import X" imports (except in util.py) (#183)</title>
<updated>2020-01-31T15:15:31+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-01-31T15:15:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=1bb1896ec900622e02c1ffb59db4d3f2df4a964d'/>
<id>urn:sha1:1bb1896ec900622e02c1ffb59db4d3f2df4a964d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>net/cmdline: correctly handle static ip= config (#201)</title>
<updated>2020-01-30T17:15:49+00:00</updated>
<author>
<name>Dimitri John Ledkov</name>
<email>xnox@ubuntu.com</email>
</author>
<published>2020-01-30T17:15:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=2bedc44092ec94faebfb2f55c6d7c6bdd754df23'/>
<id>urn:sha1:2bedc44092ec94faebfb2f55c6d7c6bdd754df23</id>
<content type='text'>
It is proto 'none', not 'static' as was mistakenly implemented in
initramfs-tools/cloud-init in the past, yet was never the case in the
klibc ipconfig state file output.

LP: #1861412</content>
</entry>
<entry>
<title>Replace mock library with unittest.mock (#186)</title>
<updated>2020-01-29T21:55:39+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-01-29T21:55:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=5f8f85bb38cc972d3d2c705a1ec73db3f690f323'/>
<id>urn:sha1:5f8f85bb38cc972d3d2c705a1ec73db3f690f323</id>
<content type='text'>
* cloudinit: replace "import mock" with "from unittest import mock"

* test-requirements.txt: drop mock

Co-authored-by: Chad Smith &lt;chad.smith@canonical.com&gt;
</content>
</entry>
<entry>
<title>Drop most of the remaining use of six (#179)</title>
<updated>2020-01-21T23:02:42+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-01-21T23:02:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=bb71a9d08d25193836eda91c328760305285574e'/>
<id>urn:sha1:bb71a9d08d25193836eda91c328760305285574e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Start removing dependency on six (#178)</title>
<updated>2020-01-21T22:15:30+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-01-21T22:15:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=8c4fd886931abcf2cc8627a47463907d655b35c3'/>
<id>urn:sha1:8c4fd886931abcf2cc8627a47463907d655b35c3</id>
<content type='text'>
* url_helper: drop six

* url_helper: sort imports

* log: drop six

* log: sort imports

* handlers/__init__: drop six

* handlers/__init__: sort imports

* user_data: drop six

* user_data: sort imports

* sources/__init__: drop six

* sources/__init__: sort imports

* DataSourceOVF: drop six

* DataSourceOVF: sort imports

* sources/helpers/openstack: drop six

* sources/helpers/openstack: sort imports

* mergers/m_str: drop six

This also allowed simplification of the logic, as we will never
encounter a non-string text type.

* type_utils: drop six

* mergers/m_dict: drop six

* mergers/m_list: drop six

* cmd/query: drop six

* mergers/__init__: drop six

* net/cmdline: drop six

* reporting/handlers: drop six

* reporting/handlers: sort imports
</content>
</entry>
<entry>
<title>net: fix rendering of 'static6' in network config (#77)</title>
<updated>2020-01-08T17:30:17+00:00</updated>
<author>
<name>Ryan Harper</name>
<email>ryan.harper@canonical.com</email>
</author>
<published>2020-01-08T17:30:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=dacdd30080bd8183d1f1c1dc9dbcbc8448301529'/>
<id>urn:sha1:dacdd30080bd8183d1f1c1dc9dbcbc8448301529</id>
<content type='text'>
* net: fix rendering of 'static6' in network config

A V1 static6 network typo was misrendered in eni, it's not valid.
It was ignored in sysconfig and netplan.  This branch fixes eni,
updates sysconfig, netplan to render it correctly and adds unittests
for all cases.

Reported-by: Raphaël Enrici

LP: #1850988

* net: add comment about static6 type in subnet_is_ipv6

Co-authored-by: Chad Smith &lt;blackboxsw@gmail.com&gt;
Co-authored-by: Daniel Watkins &lt;daniel@daniel-watkins.co.uk&gt;
</content>
</entry>
<entry>
<title>freebsd: introduce the freebsd renderer (#61)</title>
<updated>2019-12-20T18:45:17+00:00</updated>
<author>
<name>Gonéri Le Bouder</name>
<email>goneri@lebouder.net</email>
</author>
<published>2019-12-20T18:45:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=9bfb2ba7268e2c3c932023fc3d3020cdc6d6cc18'/>
<id>urn:sha1:9bfb2ba7268e2c3c932023fc3d3020cdc6d6cc18</id>
<content type='text'>
* 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 &lt;= 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ć &lt;me+github@igalic.co&gt;
</content>
</entry>
<entry>
<title>dhcp: Support RedHat dhcp rfc3442 lease format for option 121 (#76)</title>
<updated>2019-12-10T00:48:37+00:00</updated>
<author>
<name>Eric Lafontaine</name>
<email>eric.lafontaine@bell.ca</email>
</author>
<published>2019-12-10T00:48:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=a47405af306219d804ed262d6f7e2039a75883f2'/>
<id>urn:sha1:a47405af306219d804ed262d6f7e2039a75883f2</id>
<content type='text'>
RedHat dhcp client writes out rfc3442 classless-static-routes in a different format[1]
than what is found in isc-dhcp clients.  This patch adds support for the RedHat format.

1. Background details on the format
 https://bugzilla.redhat.com/show_bug.cgi?id=516325
 https://github.com/vaijab/fedora-dhcp/blob/e83fb19c51765442d77fa60596bfdb2b3b9fbe2e/dhcp-rfc3442-classless-static-routes.patch#L252 
 https://github.com/heftig/NetworkManager/blob/f56c82d86122fc45304fc829b5f1e4766ed51589/src/dhcp-manager/nm-dhcp-client.c#L978

LP: #1850642</content>
</entry>
<entry>
<title>network_state: handle empty v1 config (#45)</title>
<updated>2019-12-07T04:11:12+00:00</updated>
<author>
<name>Ryan Harper</name>
<email>ryan.harper@canonical.com</email>
</author>
<published>2019-12-07T04:11:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=34ec440c1ad61c23c34b46f1798813d0f3ada952'/>
<id>urn:sha1:34ec440c1ad61c23c34b46f1798813d0f3ada952</id>
<content type='text'>
Sending a valid but empty v1 network config resulted in a
stacktrace during execution.  Update the network_state
parse path to specific check if the 'config' key is None
(not present) versus being present but explicitly empty.
Also add some network_state unittests.

LP: #1852496</content>
</entry>
</feed>
