From 47710756a5c248376bd679ad65590ad98014f194 Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Fri, 25 Jul 2025 15:01:26 -0400 Subject: [PATCH] Implement mtu for netplan backend --- confluent_osdeploy/common/profile/scripts/confignet | 3 +++ .../debian/profiles/default/scripts/confignet | 11 ++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/confluent_osdeploy/common/profile/scripts/confignet b/confluent_osdeploy/common/profile/scripts/confignet index 5baa4951..78126b6f 100644 --- a/confluent_osdeploy/common/profile/scripts/confignet +++ b/confluent_osdeploy/common/profile/scripts/confignet @@ -164,6 +164,9 @@ class NetplanManager(object): if curraddr not in currips: needcfgwrite = True currips.append(curraddr) + if stgs.get('mtu', None): + devdict = self.getcfgarrpath([devname]) + devdict['mtu'] = int(stgs['mtu']) gws = [] gws.append(stgs.get('ipv4_gateway', None)) gws.append(stgs.get('ipv6_gateway', None)) diff --git a/confluent_osdeploy/debian/profiles/default/scripts/confignet b/confluent_osdeploy/debian/profiles/default/scripts/confignet index 5bf0871b..78126b6f 100644 --- a/confluent_osdeploy/debian/profiles/default/scripts/confignet +++ b/confluent_osdeploy/debian/profiles/default/scripts/confignet @@ -164,6 +164,9 @@ class NetplanManager(object): if curraddr not in currips: needcfgwrite = True currips.append(curraddr) + if stgs.get('mtu', None): + devdict = self.getcfgarrpath([devname]) + devdict['mtu'] = int(stgs['mtu']) gws = [] gws.append(stgs.get('ipv4_gateway', None)) gws.append(stgs.get('ipv6_gateway', None)) @@ -381,6 +384,8 @@ class NetworkManager(object): cmdargs['ipv4.gateway'] = stgs['ipv4_gateway'] if stgs.get('ipv6_gateway', None): cmdargs['ipv6.gateway'] = stgs['ipv6_gateway'] + if stgs.get('mtu', None): + cmdargs['802-3-ethernet.mtu'] = stgs['mtu'] dnsips = self.deploycfg.get('nameservers', []) if not dnsips: dnsips = [] @@ -406,10 +411,10 @@ class NetworkManager(object): cargs = [] for arg in cmdargs: cargs.append(arg) - cargs.append(cmdargs[arg]) + cargs.append('{}'.format(cmdargs[arg])) if stgs['team_mode'] in self.bondtypes: stgs['team_mode'] = self.bondtypes[stgs['team_mode']] - subprocess.check_call(['nmcli', 'c', 'add', 'type', 'bond', 'con-name', cname, 'connection.interface-name', cname, 'bond.options', 'mode={}'.format(stgs['team_mode'])] + cargs) + subprocess.check_call(['nmcli', 'c', 'add', 'type', 'bond', 'con-name', cname, 'connection.interface-name', cname, 'bond.options', 'miimon=100,mode={}'.format(stgs['team_mode'])] + cargs) for iface in cfg['interfaces']: self.add_team_member(cname, iface) subprocess.check_call(['nmcli', 'c', 'u', cname]) @@ -441,7 +446,7 @@ class NetworkManager(object): cargs = [] for arg in cmdargs: cargs.append(arg) - cargs.append(cmdargs[arg]) + cargs.append('{}'.format(cmdargs[arg])) if u: subprocess.check_call(['nmcli', 'c', 'm', u, 'connection.interface-name', iname] + cargs) subprocess.check_call(['nmcli', 'c', 'u', u])