Skip to content

Commit c93b992

Browse files
authored
Add mac_address to server PrivateNet (#52)
1 parent 45a3b05 commit c93b992

5 files changed

Lines changed: 20 additions & 6 deletions

File tree

CHANGELOG.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
History
33
=======
44

5+
master (XXXX-XX-XX)
6+
7+
* Feature: Add `mac_address` to Server PrivateNet domain
8+
59
1.3.0 (2019-07-10)
610
------------------
711

hcloud/servers/client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ def __init__(self, client, data, complete=True):
5252

5353
private_nets = data.get("private_net")
5454
if private_nets:
55-
private_nets = [PrivateNet(network=BoundNetwork(client._client.networks, {"id": private_net['network']}, complete=False), ip=private_net['ip'], alias_ips=private_net['alias_ips']) for private_net in private_nets]
55+
private_nets = [PrivateNet(network=BoundNetwork(client._client.networks, {"id": private_net['network']}, complete=False), ip=private_net['ip'], alias_ips=private_net['alias_ips'], mac_address=private_net['mac_address']) for private_net in private_nets]
5656
data['private_net'] = private_nets
5757

5858
super(BoundServer, self).__init__(client, data, complete)

hcloud/servers/domain.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -324,18 +324,23 @@ class PrivateNet(BaseDomain):
324324
The main IP Address of the server in the Network
325325
:param alias_ips: List[str]
326326
The alias ips for a server
327+
:param mac_address: str
328+
The mac address of the interface on the server
327329
"""
328330
__slots__ = (
329331
"network",
330332
"ip",
331-
"alias_ips"
333+
"alias_ips",
334+
"mac_address"
332335
)
333336

334337
def __init__(self,
335338
network, # type: BoundNetwork
336339
ip, # type: str
337340
alias_ips, # type: List[str]
341+
mac_address, # type: str
338342
):
339343
self.network = network
340344
self.ip = ip
341345
self.alias_ips = alias_ips
346+
self.mac_address = mac_address

tests/unit/servers/conftest.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ def response_simple_server():
3333
{
3434
"network": 4711,
3535
"ip": "10.1.1.5",
36-
"alias_ips": ["10.1.1.8"]
36+
"alias_ips": ["10.1.1.8"],
37+
"mac_address": "86:00:ff:2a:7d:e1"
3738
}
3839
],
3940
"server_type": {
@@ -450,7 +451,8 @@ def response_simple_servers():
450451
{
451452
"network": 4711,
452453
"ip": "10.1.1.5",
453-
"alias_ips": ["10.1.1.8"]
454+
"alias_ips": ["10.1.1.8"],
455+
"mac_address": "86:00:ff:2a:7d:e1"
454456
}
455457
],
456458
"server_type": {
@@ -570,7 +572,8 @@ def response_simple_servers():
570572
{
571573
"network": 4711,
572574
"ip": "10.1.1.7",
573-
"alias_ips": ["10.1.1.99"]
575+
"alias_ips": ["10.1.1.99"],
576+
"mac_address": "86:00:ff:2a:7d:e1"
574577
}
575578
],
576579
"server_type": {
@@ -697,7 +700,8 @@ def response_full_server():
697700
{
698701
"network": 4711,
699702
"ip": "10.1.1.5",
700-
"alias_ips": ["10.1.1.8"]
703+
"alias_ips": ["10.1.1.8"],
704+
"mac_address": "86:00:ff:2a:7d:e1"
701705
}
702706
],
703707
"server_type": {

tests/unit/servers/test_client.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ def test_bound_server_init(self, response_full_server):
8888
assert isinstance(bound_server.private_net[0], PrivateNet)
8989
assert bound_server.private_net[0].network._client == bound_server._client._client.networks
9090
assert bound_server.private_net[0].ip == "10.1.1.5"
91+
assert bound_server.private_net[0].mac_address == "86:00:ff:2a:7d:e1"
9192
assert len(bound_server.private_net[0].alias_ips) == 1
9293
assert bound_server.private_net[0].alias_ips[0] == "10.1.1.8"
9394

0 commit comments

Comments
 (0)