Skip to content

Commit 38b8010

Browse files
more docs
1 parent 0722db8 commit 38b8010

File tree

1 file changed

+73
-1
lines changed

1 file changed

+73
-1
lines changed

linode_api4/objects/linode_interfaces.py

Lines changed: 73 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,20 @@
99

1010
@dataclass
1111
class LinodeInterfacesSettingsDefaultRouteOptions(JSONObject):
12+
"""
13+
The options used to configure the default route settings for a Linode's network interfaces.
14+
"""
15+
1216
ipv4_interface_id: Optional[int] = None
1317
ipv6_interface_id: Optional[int] = None
1418

1519

1620
@dataclass
1721
class LinodeInterfacesSettingsDefaultRoute(JSONObject):
22+
"""
23+
The default route settings for a Linode's network interfaces.
24+
"""
25+
1826
put_class = LinodeInterfacesSettingsDefaultRouteOptions
1927

2028
ipv4_interface_id: Optional[int] = None
@@ -24,6 +32,12 @@ class LinodeInterfacesSettingsDefaultRoute(JSONObject):
2432

2533

2634
class LinodeInterfacesSettings(Base):
35+
""""
36+
The settings for a Linode's network interfaces.
37+
38+
API Documentation: Not yet available.
39+
"""
40+
2741
api_endpoint = "/linode/instances/{id}/interfaces/settings"
2842

2943
properties = {
@@ -161,6 +175,10 @@ class LinodeInterfaceOptions(JSONObject):
161175

162176
@dataclass
163177
class LinodeInterfaceDefaultRoute(JSONObject):
178+
"""
179+
The default route configuration of a Linode Interface.
180+
"""
181+
164182
put_class = LinodeInterfaceDefaultRouteOptions
165183

166184
ipv4: bool = False
@@ -169,6 +187,10 @@ class LinodeInterfaceDefaultRoute(JSONObject):
169187

170188
@dataclass
171189
class LinodeInterfaceVPCIPv4Address(JSONObject):
190+
"""
191+
A single address under the IPv4 configuration of a VPC Linode Interface.
192+
"""
193+
172194
put_class = LinodeInterfaceVPCIPv4AddressOptions
173195

174196
address: str = ""
@@ -178,13 +200,21 @@ class LinodeInterfaceVPCIPv4Address(JSONObject):
178200

179201
@dataclass
180202
class LinodeInterfaceVPCIPv4Range(JSONObject):
203+
"""
204+
A single range under the IPv4 configuration of a VPC Linode Interface.
205+
"""
206+
181207
put_class = LinodeInterfaceVPCIPv4RangeOptions
182208

183209
range: str = ""
184210

185211

186212
@dataclass
187213
class LinodeInterfaceVPCIPv4(JSONObject):
214+
"""
215+
A single address under the IPv4 configuration of a VPC Linode Interface.
216+
"""
217+
188218
put_class = LinodeInterfaceVPCIPv4Options
189219

190220
addresses: List[LinodeInterfaceVPCIPv4Address] = field(default_factory=list)
@@ -193,6 +223,10 @@ class LinodeInterfaceVPCIPv4(JSONObject):
193223

194224
@dataclass
195225
class LinodeInterfaceVPC(JSONObject):
226+
"""
227+
VPC-specific configuration field for a Linode Interface.
228+
"""
229+
196230
put_class = LinodeInterfaceVPCOptions
197231

198232
vpc_id: int = 0
@@ -203,6 +237,10 @@ class LinodeInterfaceVPC(JSONObject):
203237

204238
@dataclass
205239
class LinodeInterfacePublicIPv4Address(JSONObject):
240+
"""
241+
A single address under the IPv4 configuration of a public Linode Interface.
242+
"""
243+
206244
put_class = LinodeInterfacePublicIPv4AddressOptions
207245

208246
address: str = ""
@@ -211,12 +249,20 @@ class LinodeInterfacePublicIPv4Address(JSONObject):
211249

212250
@dataclass
213251
class LinodeInterfacePublicIPv4Shared(JSONObject):
252+
"""
253+
A single shared address under the IPv4 configuration of a public Linode Interface.
254+
"""
255+
214256
address: str = ""
215257
linode_id: int = 0
216258

217259

218260
@dataclass
219261
class LinodeInterfacePublicIPv4(JSONObject):
262+
"""
263+
The IPv4 configuration of a public Linode Interface.
264+
"""
265+
220266
put_class = LinodeInterfacePublicIPv4Options
221267

222268
addresses: List[LinodeInterfacePublicIPv4Address] = field(
@@ -227,18 +273,30 @@ class LinodeInterfacePublicIPv4(JSONObject):
227273

228274
@dataclass
229275
class LinodeInterfacePublicIPv6SLAAC(JSONObject):
276+
"""
277+
A single SLAAC entry under the IPv6 configuration of a public Linode Interface.
278+
"""
279+
230280
address: str = ""
231281
prefix: int = 0
232282

233283

234284
@dataclass
235285
class LinodeInterfacePublicIPv6Shared(JSONObject):
286+
"""
287+
A single shared range under the IPv6 configuration of a public Linode Interface.
288+
"""
289+
236290
range: str = ""
237291
route_target: Optional[str] = None
238292

239293

240294
@dataclass
241295
class LinodeInterfacePublicIPv6Range(JSONObject):
296+
"""
297+
A single range under the IPv6 configuration of a public Linode Interface.
298+
"""
299+
242300
put_class = LinodeInterfacePublicIPv6RangeOptions
243301

244302
range: str = ""
@@ -247,6 +305,10 @@ class LinodeInterfacePublicIPv6Range(JSONObject):
247305

248306
@dataclass
249307
class LinodeInterfacePublicIPv6(JSONObject):
308+
"""
309+
The IPv6 configuration of a Linode Interface.
310+
"""
311+
250312
put_class = LinodeInterfacePublicIPv6Options
251313

252314
slaac: List[LinodeInterfacePublicIPv6SLAAC] = field(default_factory=list)
@@ -256,6 +318,10 @@ class LinodeInterfacePublicIPv6(JSONObject):
256318

257319
@dataclass
258320
class LinodeInterfacePublic(JSONObject):
321+
"""
322+
Public-specific configuration field for a Linode Interface.
323+
"""
324+
259325
put_class = LinodeInterfacePublicOptions
260326

261327
ipv4: Optional[LinodeInterfacePublicIPv4] = None
@@ -264,6 +330,10 @@ class LinodeInterfacePublic(JSONObject):
264330

265331
@dataclass
266332
class LinodeInterfaceVLAN(JSONObject):
333+
"""
334+
VLAN-specific configuration field for a Linode Interface.
335+
"""
336+
267337
put_class = LinodeInterfaceVLANOptions
268338

269339
vlan_label: str = ""
@@ -274,7 +344,7 @@ class LinodeInterface(DerivedBase):
274344
"""
275345
A Linode's network interface.
276346
277-
API Documentation: Not yet available.
347+
API Documentation: https://techdocs.akamai.com/linode-api/reference/get-linode-interface
278348
"""
279349

280350
api_endpoint = "/linode/instances/{linode_id}/interfaces/{id}"
@@ -310,6 +380,8 @@ def firewalls(self, *filters) -> List[Firewall]:
310380
311381
NOTE: Caching is disabled on this method and each call will make
312382
an additional Linode API request.
383+
384+
API Documentation: Not yet available.
313385
"""
314386

315387
return self._client._get_and_filter(

0 commit comments

Comments
 (0)