99from scaleway .instance .v1 .api import InstanceV1API
1010from scaleway .block .v1alpha1 import BlockV1Alpha1API
1111from scaleway .instance .v1 .types import Server , VolumeServerTemplate
12- from scaleway .block .v1alpha1 .types import Volume , CreateVolumeRequestFromEmpty
12+ from scaleway .block .v1alpha1 .types import Volume , CreateVolumeRequestFromEmpty
1313
1414logger = logging .getLogger ()
1515logger .level = logging .DEBUG
2020timeout = 10
2121volume_size = 10
2222commercial_type = "DEV1-S"
23+
24+
2325class TestE2EServerCreation (unittest .TestCase ):
2426 def setUp (self ) -> None :
2527 self .zone = "fr-par-1"
@@ -32,12 +34,13 @@ def setUp(self) -> None:
3234 def tearDown (self ) -> None :
3335 for volume in self ._volumes :
3436 try :
35- self .instanceAPI .detach_server_volume (server_id = self ._server .id , volume_id = volume .id )
37+ self .instanceAPI .detach_server_volume (
38+ server_id = self ._server .id , volume_id = volume .id
39+ )
3640 logger .info ("✅ Volume {volume.id} has been detach" )
3741 except Exception as e :
3842 logger .warning (f"Failed to detach volume { volume .id } : { e } " )
3943 try :
40-
4144 self .blockAPI .delete_volume (volume_id = volume .id )
4245 logger .info ("✅ Volume {volume.id} has been deleted" )
4346 except Exception as e :
@@ -48,7 +51,7 @@ def tearDown(self) -> None:
4851 logger .info (f"🗑️ Deleted server: { self ._server .id } " )
4952 except Exception as e :
5053 logger .warning (f"Failed to delete server { self ._server .id } : { e } " )
51-
54+
5255 def wait_test_instance_server (self , server_id ):
5356 for _ in range (10 ):
5457 s = self .api .get_server (zone = self .zone , server_id = server_id )
@@ -60,16 +63,17 @@ def wait_test_instance_server(self, server_id):
6063 self .fail ("Server did not reach 'running' state in time." )
6164
6265 def create_test_instance_server (self ) -> Server :
63- volume = { "0" : VolumeServerTemplate (volume_type = "sbs_volume" ,
64- name = "my-volume" ,
65- size = volume_size
66- )}
66+ volume = {
67+ "0" : VolumeServerTemplate (
68+ volume_type = "sbs_volume" , name = "my-volume" , size = volume_size
69+ )
70+ }
6771 server = self .instanceAPI ._create_server (
6872 commercial_type = commercial_type ,
6973 zone = self .zone ,
7074 name = server_name ,
7175 dynamic_ip_required = True ,
72- volumes = volume
76+ volumes = volume ,
7377 )
7478 logger .info (f"✅ Created server: { server .id } " )
7579 self ._server = server .server
@@ -80,23 +84,20 @@ def create_test_from_empty_volume(self, number) -> Dict[str, Volume]:
8084 volumes : Dict [str , Volume ] = {}
8185 for i in range (number ):
8286 volume = self .blockAPI .create_volume (
83- project_id = "19e2fd0b-3d53-4f8f-9338-629df9c1b1db" ,
84- from_empty = CreateVolumeRequestFromEmpty (size = 10 )
87+ project_id = "19e2fd0b-3d53-4f8f-9338-629df9c1b1db" ,
88+ from_empty = CreateVolumeRequestFromEmpty (size = 10 ),
8589 )
8690 logger .info ("✅ Created server: {volume.id}" )
8791 self ._volumes .append (volume ) # Ensure cleanup in tearDown
8892 volumes [str (i )] = volume
89-
90- return volumes
9193
92-
94+ return volumes
9395
9496 def test_attach_aditionnal_volume (self ):
9597 server = self .create_test_instance_server ()
9698 additional_volumes = self .create_test_from_empty_volume (1 )
9799 additional_volume = list (additional_volumes .values ())[0 ]
98100
99-
100101 self .assertIsNotNone (server .id )
101102 self .assertEqual (server .zone , self .zone )
102103
@@ -105,15 +106,18 @@ def test_attach_aditionnal_volume(self):
105106 logger .info (f"✅ Volume created with ID: { additional_volume .id } " )
106107
107108 self .instanceAPI .attach_server_volume (
108- server_id = server .id ,
109- volume_id = additional_volume .id
109+ server_id = server .id , volume_id = additional_volume .id
110110 )
111111 logger .info (f"🔗 Attached volume { additional_volume .id } to server { server .id } " )
112112
113113 time .sleep (5 )
114114
115- updated_server = self .instanceAPI .get_server (zone = self .zone , server_id = server .id )
115+ updated_server = self .instanceAPI .get_server (
116+ zone = self .zone , server_id = server .id
117+ )
116118 attached_volumes = updated_server .volumes or {}
117119 attached_volume_ids = [v .volume .id for v in attached_volumes .values ()]
118120 self .assertIn (additional_volume .id , attached_volume_ids )
119- logger .info (f"✅ Volume { additional_volume .id } is attached to server { server .id } " )
121+ logger .info (
122+ f"✅ Volume { additional_volume .id } is attached to server { server .id } "
123+ )
0 commit comments