Skip to content

Commit c6bf20c

Browse files
schema progress
1 parent 2f17cb5 commit c6bf20c

File tree

1 file changed

+63
-0
lines changed

1 file changed

+63
-0
lines changed

linode_api4/objects/linode_interfaces.py

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,69 @@
55
from linode_api4.objects.serializable import JSONObject
66

77

8+
@dataclass
9+
class LinodeInterfaceDefaultRouteOptions(JSONObject):
10+
ipv4: bool = False
11+
ipv6: bool = False
12+
13+
14+
@dataclass
15+
class LinodeInterfaceVPCIPv4AddressOptions(JSONObject):
16+
address: str = ""
17+
primary: Optional[bool] = None
18+
nat_1_1_address: Optional[str] = None
19+
20+
21+
@dataclass
22+
class LinodeInterfaceVPCIPv4RangeOptions(JSONObject):
23+
range: str = ""
24+
25+
26+
@dataclass
27+
class LinodeInterfaceVPCIPv4Options(JSONObject):
28+
addresses: Optional[List[LinodeInterfaceVPCIPv4AddressOptions]] = None
29+
ranges: Optional[List[LinodeInterfaceVPCIPv4RangeOptions]] = None
30+
31+
32+
@dataclass
33+
class LinodeInterfaceVPCOptions(JSONObject):
34+
subnet_id: int = 0
35+
ipv4: Optional[LinodeInterfaceVPCIPv4Options] = None
36+
37+
38+
@dataclass
39+
class LinodeInterfacePublicIPv4AddressOptions(JSONObject):
40+
address: str = ""
41+
primary: Optional[bool] = None
42+
43+
44+
@dataclass
45+
class LinodeInterfacePublicIPv4Options(JSONObject):
46+
addresses: Optional[List[LinodeInterfacePublicIPv4AddressOptions]] = None
47+
48+
49+
@dataclass
50+
class LinodeInterfacePublicIPv6RangeOptions(JSONObject):
51+
range: str = ""
52+
53+
54+
@dataclass
55+
class LinodeInterfacePublicIPv6Options(JSONObject):
56+
ranges: Optional[List[LinodeInterfacePublicIPv6RangeOptions]] = None
57+
58+
59+
@dataclass
60+
class LinodeInterfacePublicOptions(JSONObject):
61+
ipv4: Optional[LinodeInterfacePublicIPv4Options] = None
62+
ipv6: Optional[LinodeInterfacePublicIPv6Options] = None
63+
64+
65+
@dataclass
66+
class LinodeInterfaceVLANOptions(JSONObject):
67+
vlan_label: str = ""
68+
ipam_address: Optional[str] = None
69+
70+
871
@dataclass
972
class LinodeInterfaceDefaultRoute(JSONObject):
1073
ipv4: bool = False

0 commit comments

Comments
 (0)