Skip to content

Commit c8cc870

Browse files
docs: Fix xcp/net/ifrename/* for Sphinx-autodoc generation
Signed-off-by: Bernhard Kaindl <[email protected]>
1 parent 0c35e95 commit c8cc870

File tree

2 files changed

+58
-36
lines changed

2 files changed

+58
-36
lines changed

xcp/net/ifrename/logic.py

Lines changed: 49 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,11 @@
3939
[out] transactions
4040
list of string tuples as source and destination names for "ip link set
4141
name"
42+
43+
Terms and abbreviations used in this file:
44+
**kname**: The kernel name of the network interface (the original name assigned by the kernel).
45+
**tname**: The temporary name of the network interface,
46+
used as an intermediate step during the renaming process to avoid name conflicts.
4247
"""
4348

4449
from __future__ import unicode_literals
@@ -122,24 +127,32 @@ def __rename_nic(nic, name, transactions, cur_state):
122127
transactions.append((nic.kname, name))
123128

124129

125-
def rename_logic( static_rules,
126-
cur_state,
127-
last_state,
128-
old_state ):
130+
def rename_logic(static_rules, cur_state, last_state, old_state):
129131
"""
130132
Core logic of renaming the current state based on the rules and past state.
133+
131134
This function assumes all inputs have been suitably sanitised.
132-
@param static_rules
135+
136+
Parameters
137+
----------
138+
static_rules : list
133139
List of MACPCI objects representing rules
134-
@param cur_state
140+
cur_state : list
135141
List of MACPCI objects representing the current state
136-
@param last_state
142+
last_state : list
137143
List of MACPCI objects representing the last boot state
138-
@param old_state
144+
old_state : list
139145
List of MACPCI objects representing the old state
140-
@returns List of tuples...
141-
@throws AssertionError (Should not be thrown, but better to know about logic
142-
errors if they occur)
146+
147+
Returns
148+
-------
149+
list
150+
List of tuples representing name transactions.
151+
152+
Raises
153+
------
154+
AssertionError
155+
If the current state contains invalid entries.
143156
"""
144157

145158
transactions = []
@@ -365,26 +378,38 @@ def rename_logic( static_rules,
365378
util.niceformat(cur_state)))
366379
return transactions
367380

368-
def rename( static_rules,
369-
cur_state,
370-
last_state,
371-
old_state ):
381+
def rename(static_rules, cur_state, last_state, old_state):
372382
"""
373383
Rename current state based on the rules and past state.
374-
This function sanitises the input and delegates the renaming logic to
375-
__rename.
376-
@param static_rules
384+
385+
This function sanitises the input and delegates the renaming logic to rename_logic.
386+
387+
Parameters
388+
----------
389+
static_rules : list
377390
List of MACPCI objects representing rules
378-
@param cur_state
391+
cur_state : list
379392
List of MACPCI objects representing the current state
380-
@param last_state
393+
last_state : list
381394
List of MACPCI objects representing the last boot state
382-
@param old_state
395+
old_state : list
383396
List of MACPCI objects representing the old state
384397
385-
@throws StaticRuleError, CurrentStateError, LastStateError, TypeError
386-
387-
@returns list of tuples of name changes required
398+
Returns
399+
-------
400+
list
401+
List of tuples of name changes required
402+
403+
Raises
404+
------
405+
StaticRuleError
406+
If a static rule has a kernel name, a tname not starting with 'eth', duplicate eth names, or duplicate MACs.
407+
CurrentStateError
408+
If the current state contains invalid entries.
409+
LastStateError
410+
If the last state contains invalid entries.
411+
TypeError
412+
If any of the input lists contain objects that are not MACPCI instances.
388413
"""
389414

390415
if len(static_rules):

xcp/net/ifrename/static.py

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,16 @@
2525
Object for manipulating static rules.
2626
2727
Rules are of the form:
28-
<target name>: <id method> = "value"
28+
<target name>: <id method> = "value"
2929
30-
target name must be in the form eth*
31-
id methods are:
32-
mac: value should be the mac address of a device (e.g. DE:AD:C0:DE:00:00)
33-
pci: value should be the pci bus location of the device, optionally with an index (e.g. 0000:01:01.1[0])
34-
ppn: value should be the result of the biosdevname physical naming policy of a device (e.g. p1p1)
35-
label: value should be the SMBios label of a device (for SMBios 2.6 or above)
36-
37-
Any line starting with '#' is considered to be a comment
30+
target name must be in the form eth*
31+
id methods are:
32+
- mac: value should be the MAC address of a device (e.g. DE:AD:C0:DE:00:00)
33+
- pci: value should be the pci bus location of the device, optionally with an index (e.g. 0000:01:01.1[0])
34+
- ppn: value should be the result of the biosdevname physical naming policy of a device (e.g. p1p1)
35+
- label: value should be the SMBios label of a device (for SMBios 2.6 or above)
3836
37+
Any line starting with '#' is considered to be a comment
3938
"""
4039

4140
from __future__ import unicode_literals
@@ -82,9 +81,7 @@ class StaticRules(object):
8281
"""
8382
Object for parsing the static rules configuration.
8483
85-
There are two distinct usecases; the installer needs to write the
86-
static rules from scratch, whereas interface-rename.py in dom0 needs
87-
to read them.
84+
- interface-rename.py in Dom0 needs to read them.
8885
"""
8986

9087
methods = ["mac", "pci", "ppn", "label", "guess"]

0 commit comments

Comments
 (0)