Skip to content

Commit fb7468d

Browse files
committed
tests(instance): fix
1 parent c0bf6fe commit fb7468d

File tree

1 file changed

+27
-23
lines changed

1 file changed

+27
-23
lines changed

scaleway/tests/test_instance.py

Lines changed: 27 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,31 @@
1+
import logging
2+
import sys
13
from typing import List
24
import unittest
35
import uuid
46
import time
57

8+
from scaleway.instance.v1 import CreateServerResponse
69
from scaleway_core.client import Client
710
from scaleway.instance.v1.api import InstanceV1API
811
from scaleway.block.v1alpha1 import BlockV1Alpha1API
9-
from scaleway.instance.v1.types import Server, VolumeServerTemplate
12+
from scaleway.instance.v1.types import Server, VolumeServerTemplate, VolumeVolumeType, ServerAction
1013
from scaleway.block.v1alpha1.types import Volume, CreateVolumeRequestFromEmpty
1114

1215

1316
server_name = f"test-sdk-python-{uuid.uuid4().hex[:6]}"
14-
max_retry = 10
15-
interval = 0.1
17+
max_retry = 60
18+
INTERVAL = 5
1619
volume_size = 10
1720
commercial_type = "DEV1-S"
1821
zone = "fr-par-1"
22+
image = "ubuntu_focal"
1923

24+
logger = logging.getLogger()
25+
logger.level = logging.DEBUG
26+
stream_handler = logging.StreamHandler(sys.stdout)
27+
logger.addHandler(stream_handler)
2028

21-
@unittest.skip("Skipping this test temporarily")
2229
class TestE2EServerCreation(unittest.TestCase):
2330
def setUp(self) -> None:
2431
self.zone = zone
@@ -40,46 +47,43 @@ def tearDown(self) -> None:
4047
self.instanceAPI.delete_server(zone=self.zone, server_id=self._server.id)
4148

4249
def wait_test_instance_server(self, server_id):
43-
interval = interval
50+
interval = INTERVAL
4451

4552
for i in range(1, max_retry):
53+
logger.log(1, "value of i: ", i)
4654
interval *= i
4755
s = self.instanceAPI.get_server(zone=self.zone, server_id=server_id)
48-
49-
if s.state == "running":
50-
break
51-
56+
if s.server.state == "running":
57+
return
5258
time.sleep(interval)
5359

5460
self.fail("Server did not reach 'running' state in time.")
5561

56-
def create_test_instance_server(self) -> Server:
57-
volume = {
58-
"0": VolumeServerTemplate(
59-
volume_type="sbs_volume", name="my-volume", size=volume_size
60-
)
61-
}
62-
62+
def create_test_instance_server(self) -> Server | None:
6363
server = self.instanceAPI._create_server(
6464
commercial_type=commercial_type,
6565
zone=self.zone,
6666
name=server_name,
6767
dynamic_ip_required=True,
68-
volumes=volume,
68+
protected=False,
69+
image=image,
6970
)
7071

71-
self._server = server.server
72+
self.instanceAPI.server_action(server_id=server.server.id, zone=self.zone, action=ServerAction.POWERON)
73+
74+
logging.log(1, "value of server", server)
7275

7376
self.wait_test_instance_server(server_id=server.server.id)
77+
self._server = server.server
7478

7579
return server.server
7680

7781
def create_test_from_empty_volume(self, number) -> List[Volume]:
78-
volumes: List[Volume] = {}
82+
volumes: List[Volume] = []
7983

8084
for i in range(number):
8185
volume = self.blockAPI.create_volume(
82-
from_empty=CreateVolumeRequestFromEmpty(size=10),
86+
from_empty=CreateVolumeRequestFromEmpty(size=10), zone=self.zone
8387
)
8488

8589
self.blockAPI.wait_for_volume(volume_id=volume.id, zone=self.zone)
@@ -92,7 +96,7 @@ def create_test_from_empty_volume(self, number) -> List[Volume]:
9296
def test_attach_aditionnal_volume(self):
9397
server = self.create_test_instance_server()
9498
additional_volumes = self.create_test_from_empty_volume(1)
95-
additional_volume = additional_volumes.values()[0]
99+
additional_volume = additional_volumes[0]
96100

97101
self.assertIsNotNone(server.id)
98102
self.assertEqual(server.zone, self.zone)
@@ -109,6 +113,6 @@ def test_attach_aditionnal_volume(self):
109113
updated_server = self.instanceAPI.get_server(
110114
zone=self.zone, server_id=server.id
111115
)
112-
attached_volumes = updated_server.volumes or {}
113-
attached_volume_ids = [v.volume.id for v in attached_volumes.values()]
116+
attached_volumes = updated_server.server.volumes or {}
117+
attached_volume_ids = [v.id for v in attached_volumes.values()]
114118
self.assertIn(additional_volume.id, attached_volume_ids)

0 commit comments

Comments
 (0)