From 2e7a7e40423c2f63d261b1dc088df1d3be04b45d Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Mon, 26 Sep 2022 11:03:20 +0200 Subject: [PATCH 67/75] Add NetworkManagerConnection model This represents the NetworkManager connection profiles in form of keyfiles at /etc/NetworkManager/system-connections. --- .../models/networkmanagerconnection.py | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 repos/system_upgrade/el8toel9/models/networkmanagerconnection.py diff --git a/repos/system_upgrade/el8toel9/models/networkmanagerconnection.py b/repos/system_upgrade/el8toel9/models/networkmanagerconnection.py new file mode 100644 index 00000000..e3456b77 --- /dev/null +++ b/repos/system_upgrade/el8toel9/models/networkmanagerconnection.py @@ -0,0 +1,47 @@ +from leapp.models import fields, Model +from leapp.topics import SystemInfoTopic + + +class NetworkManagerConnectionProperty(Model): + """ + Name-value pair for NetworkManager properties. + + This model is not expected to be used as a message (produced/consumed by actors). + It is used within NetworkManagerConnectionSetting of a NetworkManagerConnection. + """ + topic = SystemInfoTopic + + name = fields.String() + """ Name of a property """ + value = fields.String() + """ Value of a property """ + + +class NetworkManagerConnectionSetting(Model): + """ + NetworkManager setting, composed of a name and a list of name-value pairs. + + This model is not expected to be used as a message (produced/consumed by actors). + It is used within NetworkManagerConnection. + """ + topic = SystemInfoTopic + + name = fields.String() + """ The NetworkManager setting name """ + properties = fields.List(fields.Model(NetworkManagerConnectionProperty), default=[]) + """ The name-value pair for every setting property """ + + +class NetworkManagerConnection(Model): + """ + NetworkManager native keyfile connection + + Produced for every connection profile loaded from INI-stile files + described in nm-settings-keyfile(5) manual. + """ + topic = SystemInfoTopic + + settings = fields.List(fields.Model(NetworkManagerConnectionSetting), default=[]) + """ List of NetworkManager settings """ + filename = fields.String() + """ Path to file this model was populated from """ -- 2.39.0