Skip to content

Commit 06615de

Browse files
doc: Add documentation to objects/networking.py (#266)
## 📝 Description This change adds documentation to the `objects/networking.py` file. Blocked by #260 ## ✔️ How to Test ``` tox ```
1 parent 2b06306 commit 06615de

1 file changed

Lines changed: 36 additions & 2 deletions

File tree

linode_api4/objects/networking.py

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,12 @@ class IPv6Pool(Base):
1717

1818

1919
class IPv6Range(Base):
20+
"""
21+
An instance of a Linode IPv6 Range.
22+
23+
API Documentation: https://www.linode.com/docs/api/networking/#ipv6-range-view
24+
"""
25+
2026
api_endpoint = "/networking/ipv6/ranges/{range}"
2127
id_attribute = "range"
2228

@@ -87,6 +93,12 @@ class VLAN(Base):
8793
"""
8894
.. note:: At this time, the Linode API only supports listing VLANs.
8995
.. note:: This endpoint is in beta. This will only function if base_url is set to `https://api.linode.com/v4beta`.
96+
97+
An instance of a Linode VLAN.
98+
VLANs provide a mechanism for secure communication between two or more Linodes that are assigned to the same VLAN.
99+
VLANs are implicitly created during Instance or Instance Config creation.
100+
101+
API Documentation: https://www.linode.com/docs/api/networking/#vlans-list
90102
"""
91103

92104
api_endpoint = "/networking/vlans/{}"
@@ -101,6 +113,12 @@ class VLAN(Base):
101113

102114

103115
class FirewallDevice(DerivedBase):
116+
"""
117+
An object representing the assignment between a Linode Firewall and another Linode resource.
118+
119+
API Documentation: https://www.linode.com/docs/api/networking/#firewall-device-view
120+
"""
121+
104122
api_endpoint = "/networking/firewalls/{firewall_id}/devices/{id}"
105123
derived_url_path = "devices"
106124
parent_id_name = "firewall_id"
@@ -116,6 +134,10 @@ class FirewallDevice(DerivedBase):
116134
class Firewall(Base):
117135
"""
118136
.. note:: This endpoint is in beta. This will only function if base_url is set to `https://api.linode.com/v4beta`.
137+
138+
An instance of a Linode Cloud Firewall.
139+
140+
API Documentation: https://www.linode.com/docs/api/networking/#firewall-view
119141
"""
120142

121143
api_endpoint = "/networking/firewalls/{id}"
@@ -133,7 +155,12 @@ class Firewall(Base):
133155

134156
def update_rules(self, rules):
135157
"""
136-
Sets the JSON rules for this Firewall
158+
Sets the JSON rules for this Firewall.
159+
160+
API Documentation: https://www.linode.com/docs/api/networking/#firewall-rules-update__request-samples
161+
162+
:param rules: The rules to apply to this Firewall.
163+
:type rules: dict
137164
"""
138165
self._client.put(
139166
"{}/rules".format(self.api_endpoint), model=self, data=rules
@@ -142,7 +169,12 @@ def update_rules(self, rules):
142169

143170
def get_rules(self):
144171
"""
145-
Gets the JSON rules for this Firewall
172+
Gets the JSON rules for this Firewall.
173+
174+
API Documentation: https://www.linode.com/docs/api/networking/#firewall-rules-update__request-samples
175+
176+
:returns: The rules that this Firewall is currently configured with.
177+
:rtype: dict
146178
"""
147179
return self._client.get(
148180
"{}/rules".format(self.api_endpoint), model=self
@@ -152,6 +184,8 @@ def device_create(self, id, type="linode", **kwargs):
152184
"""
153185
Creates and attaches a device to this Firewall
154186
187+
API Documentation: https://www.linode.com/docs/api/networking/#firewall-device-create
188+
155189
:param id: The ID of the entity to create a device for.
156190
:type id: int
157191

0 commit comments

Comments
 (0)