Codebase list cinder-tempest-plugin / 51c56f2
Wait for servers to be SSHABLE This is necessary to make sure we don't miss an attach or detach event in the instance. Depends-On: https://review.opendev.org/c/openstack/tempest/+/882342 Change-Id: I4cb8af79d6d474b28e96d7b2c385ed8e5ba9c1d7 Dan Smith 3 years ago
6 changed file(s) with 50 addition(s) and 10 deletion(s). Raw diff Collapse all Expand all
137137 'name',
138138 data_utils.rand_name(self.__class__.__name__ + '-instance'))
139139
140 if wait_until == 'SSHABLE' and not kwargs.get('validation_resources'):
141 kwargs['validation_resources'] = (
142 self.get_test_validation_resources(self.os_primary))
143 kwargs['validatable'] = True
144
140145 tenant_network = self.get_tenant_network()
141146 body, _ = compute.create_test_server(
142147 self.os_primary,
2929 super(VolumesBackupsTest, cls).skip_checks()
3030 if not CONF.volume_feature_enabled.backup:
3131 raise cls.skipException("Cinder backup feature disabled")
32
33 @classmethod
34 def setup_credentials(cls):
35 # Setting network=True, subnet=True creates a default network
36 cls.set_network_resources(
37 network=True,
38 subnet=True,
39 router=True,
40 dhcp=True)
41 super(VolumesBackupsTest, cls).setup_credentials()
3242
3343 @decorators.idempotent_id('885410c6-cd1d-452c-a409-7c32b7e0be15')
3444 def test_volume_snapshot_backup(self):
106116 server = self.create_server(
107117 name=server_name,
108118 block_device_mapping=bd_map,
109 wait_until='ACTIVE')
119 wait_until='SSHABLE')
110120
111121 # Delete VM
112122 self.os_primary.servers_client.delete_server(server['id'])
2222
2323 def setUp(self):
2424 super(SnapshotDataIntegrityTests, self).setUp()
25 self.keypair = self.create_keypair()
25 self.validation_resources = self.get_test_validation_resources(
26 self.os_primary)
27 # NOTE(danms): If validation is enabled, we will have a keypair to use,
28 # otherwise we need to create our own.
29 if 'keypair' in self.validation_resources:
30 self.keypair = self.validation_resources['keypair']
31 else:
32 self.keypair = self.create_keypair()
2633 self.security_group = self.create_security_group()
2734
2835 @decorators.idempotent_id('ff10644e-5a70-4a9f-9801-8204bb81fb61')
4754 # Create an instance
4855 server = self.create_server(
4956 key_name=self.keypair['name'],
57 validatable=True,
58 validation_resources=self.validation_resources,
59 wait_until='SSHABLE',
5060 security_groups=[{'name': self.security_group['name']}])
5161
5262 # Create an empty volume
3636 @classmethod
3737 def resource_cleanup(cls):
3838 super(TestEncryptedCinderVolumes, cls).resource_cleanup()
39
40 def launch_instance(self):
41 keypair = self.create_keypair()
42
43 return self.create_server(key_name=keypair['name'])
4439
4540 def attach_detach_volume(self, server, volume):
4641 attached_volume = self.nova_volume_attach(server, volume)
107102 self.volumes_client, volume_s['id'], 'available')
108103 volume_source = self.volumes_client.show_volume(
109104 volume_s['id'])['volume']
110 server = self.launch_instance()
105 validation_resources = self.get_test_validation_resources(
106 self.os_primary)
107 server = self.create_server(wait_until='SSHABLE',
108 validatable=True,
109 validation_resources=validation_resources)
111110 self.attach_detach_volume(server, volume_source)
112111
113112 @decorators.idempotent_id('5bb622ab-5060-48a8-8840-d589a548b7e4')
3030
3131 def setUp(self):
3232 super(VolumeMultiattachTests, self).setUp()
33 self.keypair = self.create_keypair()
33 self.validation_resources = self.get_test_validation_resources(
34 self.os_primary)
35 # NOTE(danms): If validation is enabled, we will have a keypair to use,
36 # otherwise we need to create our own.
37 if 'keypair' in self.validation_resources:
38 self.keypair = self.validation_resources['keypair']
39 else:
40 self.keypair = self.create_keypair()
3441 self.security_group = self.create_security_group()
3542
3643 @classmethod
5158 # Create an instance
5259 server_1 = self.create_server(
5360 key_name=self.keypair['name'],
61 wait_until='SSHABLE',
62 validatable=True,
63 validation_resources=self.validation_resources,
5464 security_groups=[{'name': self.security_group['name']}])
5565
5666 # Create multiattach type
91101 # Create another instance
92102 server_2 = self.create_server(
93103 key_name=self.keypair['name'],
104 validatable=True,
105 validation_resources=self.validation_resources,
106 wait_until='SSHABLE',
94107 security_groups=[{'name': self.security_group['name']}])
95108
96109 instance_2_ip = self.get_server_ip(server_2)
116129 # Create an instance
117130 server = self.create_server(
118131 key_name=self.keypair['name'],
132 validatable=True,
133 validation_resources=self.validation_resources,
134 wait_until='SSHABLE',
119135 security_groups=[{'name': self.security_group['name']}])
120136
121137 # Create multiattach type
44 pbr!=2.1.0,>=2.0.0 # Apache-2.0
55 oslo.config>=5.1.0 # Apache-2.0
66 oslo.serialization!=2.19.1,>=2.18.0 # Apache-2.0
7 tempest>=27.0.0 # Apache-2.0
7 tempest>=30.0.0 # Apache-2.0