diff options
author | Christian Poessinger <christian@poessinger.com> | 2020-09-20 15:18:50 +0200 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2020-09-20 15:18:50 +0200 |
commit | 103e8404cdea70dad486940f209b9683f1c7b936 (patch) | |
tree | e8f18c41978d0dbb05ed9b61fe2db62402a809d3 /src/conf_mode/interfaces-geneve.py | |
parent | 993f6873c02f3f79013acedfe61ce705bdb3a4d0 (diff) | |
download | vyos-1x-103e8404cdea70dad486940f209b9683f1c7b936.tar.gz vyos-1x-103e8404cdea70dad486940f209b9683f1c7b936.zip |
ifconfig: T2653: remove duplicates of get_config()
A lot of derived classes from Interface implemented their own get_config()
method which more or less was the same everywhere. We also hat different
qualifiers like @staticmethod or @classmethod.
This is now changed to only have the @classmethod in Interface base class which
will return the necessary dictionary keys for the required interfaces. This
change is a mid reduction in lines of code which is always a very nice thing!
Diffstat (limited to 'src/conf_mode/interfaces-geneve.py')
-rwxr-xr-x | src/conf_mode/interfaces-geneve.py | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/conf_mode/interfaces-geneve.py b/src/conf_mode/interfaces-geneve.py index cc2cf025a..af7c121f4 100755 --- a/src/conf_mode/interfaces-geneve.py +++ b/src/conf_mode/interfaces-geneve.py @@ -17,7 +17,6 @@ import os from sys import exit -from copy import deepcopy from netifaces import interfaces from vyos.config import Config @@ -62,7 +61,6 @@ def verify(geneve): def generate(geneve): return None - def apply(geneve): # Check if GENEVE interface already exists if geneve['ifname'] in interfaces(): @@ -72,10 +70,11 @@ def apply(geneve): g.remove() if 'deleted' not in geneve: - # GENEVE interface needs to be created on-block - # instead of passing a ton of arguments, I just use a dict - # that is managed by vyos.ifconfig - conf = deepcopy(GeneveIf.get_config()) + # This is a special type of interface which needs additional parameters + # when created using iproute2. Instead of passing a ton of arguments, + # use a dictionary provided by the interface class which holds all the + # options necessary. + conf = GeneveIf.get_config() # Assign GENEVE instance configuration parameters to config dict conf['vni'] = geneve['vni'] |