1+ import logging
12import os
3+ import time
24
35import pytest
46
79
810IN_GITHUB_ACTIONS = os .getenv ('GITHUB_ACTIONS' ) == 'true'
911
12+ logging .basicConfig (level = logging .DEBUG )
13+ logger = logging .getLogger ()
1014
1115@pytest .mark .skipif (IN_GITHUB_ACTIONS , reason = "Test doesn't work in Github Actions." )
1216@pytest .mark .withoutresponses
@@ -19,20 +23,35 @@ def test_create_instance(self, verda_client: VerdaClient):
1923 instance = verda_client .instances .create (
2024 hostname = 'test-instance' ,
2125 location = Locations .FIN_03 ,
22- instance_type = 'CPU.4V' ,
23- description = 'test instance' ,
24- image = 'ubuntu-18 .04' ,
26+ instance_type = 'CPU.4V.16G ' ,
27+ description = 'test cpu instance' ,
28+ image = 'ubuntu-22 .04' ,
2529 ssh_key_ids = [ssh_key .id ],
30+ os_volume = {'name' : 'test-os-volume-cpu' , 'size' : 55 },
2631 )
2732
2833 # assert instance is created
2934 assert instance .id is not None
3035 assert instance .status == verda_client .constants .instance_status .PROVISIONING
3136
32- # delete instance
33- verda_client .instances .action (instance .id , 'delete' )
37+ while instance .status != verda_client .constants .instance_status .RUNNING :
38+ time .sleep (2 )
39+ logger .debug ('Waiting for instance to be running... %s' , instance .status )
40+ instance = verda_client .instances .get_by_id (instance .id )
41+
42+ logger .debug ('Instance is running... %s' , instance .status )
43+ logger .debug ('Instance ID: %s' , instance .id )
44+ logger .debug ('Instance OS Volume ID: %s' , instance .os_volume_id )
45+ logger .debug ('Instance IP: %s' , instance .ip )
46+
47+ # assert os volume is created
48+ assert instance .os_volume_id is not None
3449
35- # permanently delete all volumes in trash
36- trash = verda_client .volumes .get_in_trash ()
37- for volume in trash :
38- verda_client .volumes .delete (volume .id , is_permanent = True )
50+ # get os volume
51+ os_volume = verda_client .volumes .get_by_id (instance .os_volume_id )
52+ assert os_volume .id is not None
53+ assert os_volume .name == 'test-os-volume-cpu'
54+ assert os_volume .size == 55
55+
56+ # delete instance
57+ verda_client .instances .action (instance .id , 'delete' , volume_ids = [instance .os_volume_id ], delete_permanently = True )
0 commit comments