Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
net/cloud-init: Update to 21.2 and add patch for setting MTU
PR:		256309
  • Loading branch information
f-andrey authored and lwhsu committed Jul 5, 2021
1 parent c360e11 commit 9620aca
Show file tree
Hide file tree
Showing 4 changed files with 85 additions and 5 deletions.
3 changes: 1 addition & 2 deletions net/cloud-init/Makefile
@@ -1,6 +1,5 @@
PORTNAME= cloud-init
DISTVERSION= 20.4.1
PORTREVISION= 2
DISTVERSION= 21.2
CATEGORIES= net python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}

Expand Down
6 changes: 3 additions & 3 deletions net/cloud-init/distinfo
@@ -1,3 +1,3 @@
TIMESTAMP = 1611086699
SHA256 (canonical-cloud-init-20.4.1_GH0.tar.gz) = 76187a5b1cdda31fe46e993b70e9a3ef5759f5d3cf84eb08520ea19ea80ebcad
SIZE (canonical-cloud-init-20.4.1_GH0.tar.gz) = 1240251
TIMESTAMP = 1625456512
SHA256 (canonical-cloud-init-21.2_GH0.tar.gz) = f9ee63692a68102c396daf6e9fff5c1dfdec44cba478b4659484f68e58d1b3ca
SIZE (canonical-cloud-init-21.2_GH0.tar.gz) = 1289949
60 changes: 60 additions & 0 deletions net/cloud-init/files/patch-cloudinit_net_bsd.py
@@ -0,0 +1,60 @@
--- cloudinit/net/bsd.py.orig 2021-07-05 03:47:58 UTC
+++ cloudinit/net/bsd.py
@@ -33,7 +33,7 @@ class BSDRenderer(renderer.Renderer):
self.interface_configurations = {}
self._postcmds = config.get('postcmds', True)

- def _ifconfig_entries(self, settings, target=None):
+ def _ifconfig_entries(self, settings):
ifname_by_mac = net.get_interfaces_by_mac()
for interface in settings.iter_interfaces():
device_name = interface.get("name")
@@ -76,9 +76,10 @@ class BSDRenderer(renderer.Renderer):
self.interface_configurations[device_name] = {
'address': subnet.get('address'),
'netmask': subnet.get('netmask'),
+ 'mtu': subnet.get('mtu') or interface.get('mtu'),
}

- def _route_entries(self, settings, target=None):
+ def _route_entries(self, settings):
routes = list(settings.iter_routes())
for interface in settings.iter_interfaces():
subnets = interface.get("subnets", [])
@@ -101,7 +102,7 @@ class BSDRenderer(renderer.Renderer):
gateway = route.get('gateway')
self.set_route(network, netmask, gateway)

- def _resolve_conf(self, settings, target=None):
+ def _resolve_conf(self, settings):
nameservers = settings.dns_nameservers
searchdomains = settings.dns_searchdomains
for interface in settings.iter_interfaces():
@@ -114,11 +115,11 @@ class BSDRenderer(renderer.Renderer):
# fails.
try:
resolvconf = ResolvConf(util.load_file(subp.target_path(
- target, self.resolv_conf_fn)))
+ self.target, self.resolv_conf_fn)))
resolvconf.parse()
except IOError:
util.logexc(LOG, "Failed to parse %s, use new empty file",
- subp.target_path(target, self.resolv_conf_fn))
+ subp.target_path(self.target, self.resolv_conf_fn))
resolvconf = ResolvConf('')
resolvconf.parse()

@@ -136,10 +137,12 @@ class BSDRenderer(renderer.Renderer):
except ValueError:
util.logexc(LOG, "Failed to add search domain %s", domain)
util.write_file(
- subp.target_path(target, self.resolv_conf_fn),
+ subp.target_path(self.target, self.resolv_conf_fn),
str(resolvconf), 0o644)

def render_network_state(self, network_state, templates=None, target=None):
+ if target:
+ self.target = target
self._ifconfig_entries(settings=network_state)
self._route_entries(settings=network_state)
self._resolve_conf(settings=network_state)
21 changes: 21 additions & 0 deletions net/cloud-init/files/patch-cloudinit_net_freebsd.py
@@ -0,0 +1,21 @@
--- cloudinit/net/freebsd.py.orig 2021-07-05 03:46:41 UTC
+++ cloudinit/net/freebsd.py
@@ -19,12 +19,13 @@ class Renderer(cloudinit.net.bsd.BSDRenderer):

def write_config(self):
for device_name, v in self.interface_configurations.items():
+ net_config = 'DHCP'
if isinstance(v, dict):
- self.set_rc_config_value(
- 'ifconfig_' + device_name,
- v.get('address') + ' netmask ' + v.get('netmask'))
- else:
- self.set_rc_config_value('ifconfig_' + device_name, 'DHCP')
+ net_config = v.get('address') + ' netmask ' + v.get('netmask')
+ mtu = v.get('mtu')
+ if mtu:
+ net_config += (' mtu %d' % mtu)
+ self.set_rc_config_value('ifconfig_' + device_name, net_config)

def start_services(self, run=False):
if not run:

0 comments on commit 9620aca

Please sign in to comment.