Codebase list cinder-tempest-plugin / 4f00e9f
Wait for CG to be available before creating volume in the CG The test cases should wait for CG to be available first before moving to create volume in the CG. Change-Id: Iac0aefff7a2277e1d3a36d8943e285a226a6830f Closes-Bug: #1897532 Sam Wan 5 years ago
1 changed file(s) with 65 addition(s) and 65 deletion(s). Raw diff Collapse all Expand all
7777 self.consistencygroups_adm_client.create_consistencygroup)
7878 cg = create_consistencygroup(volume_type['id'],
7979 name=cg_name)['consistencygroup']
80 vol_name = data_utils.rand_name("volume")
81 params = {'name': vol_name,
82 'volume_type': volume_type['id'],
83 'consistencygroup_id': cg['id'],
84 'size': CONF.volume.volume_size}
85
86 # Create volume
87 volume = self.admin_volume_client.create_volume(**params)['volume']
88
89 waiters.wait_for_volume_resource_status(self.admin_volume_client,
90 volume['id'], 'available')
91 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
92 cg['id'], 'available')
93 self.assertEqual(cg_name, cg['name'])
80 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
81 cg['id'], 'available')
82 self.assertEqual(cg_name, cg['name'])
83
84 # Create volume
85 vol_name = data_utils.rand_name("volume")
86 params = {'name': vol_name,
87 'volume_type': volume_type['id'],
88 'consistencygroup_id': cg['id'],
89 'size': CONF.volume.volume_size}
90
91 volume = self.admin_volume_client.create_volume(**params)['volume']
92 waiters.wait_for_volume_resource_status(self.admin_volume_client,
93 volume['id'], 'available')
9494
9595 # Get a given CG
9696 cg = self.consistencygroups_adm_client.show_consistencygroup(
121121 self.consistencygroups_adm_client.create_consistencygroup)
122122 cg = create_consistencygroup(volume_type['id'],
123123 name=cg_name)['consistencygroup']
124 vol_name = data_utils.rand_name("volume")
125 params = {'name': vol_name,
126 'volume_type': volume_type['id'],
127 'consistencygroup_id': cg['id'],
128 'size': CONF.volume.volume_size}
129
130 # Create volume
131 volume = self.admin_volume_client.create_volume(**params)['volume']
132 waiters.wait_for_volume_resource_status(self.admin_volume_client,
133 volume['id'], 'available')
134 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
135 cg['id'], 'available')
136 self.assertEqual(cg_name, cg['name'])
124 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
125 cg['id'], 'available')
126 self.assertEqual(cg_name, cg['name'])
127
128 # Create volume
129 vol_name = data_utils.rand_name("volume")
130 params = {'name': vol_name,
131 'volume_type': volume_type['id'],
132 'consistencygroup_id': cg['id'],
133 'size': CONF.volume.volume_size}
134 volume = self.admin_volume_client.create_volume(**params)['volume']
135 waiters.wait_for_volume_resource_status(self.admin_volume_client,
136 volume['id'], 'available')
137137
138138 # Create cgsnapshot
139139 cgsnapshot_name = data_utils.rand_name('cgsnapshot')
141141 self.consistencygroups_adm_client.create_cgsnapshot)
142142 cgsnapshot = create_cgsnapshot(cg['id'],
143143 name=cgsnapshot_name)['cgsnapshot']
144 self.consistencygroups_adm_client.wait_for_cgsnapshot_status(
145 cgsnapshot['id'], 'available')
146 self.assertEqual(cgsnapshot_name, cgsnapshot['name'])
144147 snapshots = self.os_admin.snapshots_v2_client.list_snapshots(
145148 detail=True)['snapshots']
146149 for snap in snapshots:
148151 waiters.wait_for_volume_resource_status(
149152 self.os_admin.snapshots_v2_client,
150153 snap['id'], 'available')
151 self.consistencygroups_adm_client.wait_for_cgsnapshot_status(
152 cgsnapshot['id'], 'available')
153 self.assertEqual(cgsnapshot_name, cgsnapshot['name'])
154154
155155 # Get a given CG snapshot
156156 cgsnapshot = self.consistencygroups_adm_client.show_cgsnapshot(
181181 self.consistencygroups_adm_client.create_consistencygroup)
182182 cg = create_consistencygroup(volume_type['id'],
183183 name=cg_name)['consistencygroup']
184 vol_name = data_utils.rand_name("volume")
185 params = {'name': vol_name,
186 'volume_type': volume_type['id'],
187 'consistencygroup_id': cg['id'],
188 'size': CONF.volume.volume_size}
189
190 # Create volume
191 volume = self.admin_volume_client.create_volume(**params)['volume']
192 waiters.wait_for_volume_resource_status(self.admin_volume_client,
193 volume['id'], 'available')
194 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
195 cg['id'], 'available')
196 self.assertEqual(cg_name, cg['name'])
184 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
185 cg['id'], 'available')
186 self.assertEqual(cg_name, cg['name'])
187
188 # Create volume
189 vol_name = data_utils.rand_name("volume")
190 params = {'name': vol_name,
191 'volume_type': volume_type['id'],
192 'consistencygroup_id': cg['id'],
193 'size': CONF.volume.volume_size}
194 volume = self.admin_volume_client.create_volume(**params)['volume']
195 waiters.wait_for_volume_resource_status(self.admin_volume_client,
196 volume['id'], 'available')
197197
198198 # Create cgsnapshot
199199 cgsnapshot_name = data_utils.rand_name('cgsnapshot')
201201 self.consistencygroups_adm_client.create_cgsnapshot)
202202 cgsnapshot = create_cgsnapshot(cg['id'],
203203 name=cgsnapshot_name)['cgsnapshot']
204 self.consistencygroups_adm_client.wait_for_cgsnapshot_status(
205 cgsnapshot['id'], 'available')
206 self.assertEqual(cgsnapshot_name, cgsnapshot['name'])
204207 snapshots = self.snapshots_client.list_snapshots(
205208 detail=True)['snapshots']
206209 for snap in snapshots:
207210 if volume['id'] == snap['volume_id']:
208211 waiters.wait_for_volume_resource_status(
209212 self.os_admin.snapshots_v2_client, snap['id'], 'available')
210 self.consistencygroups_adm_client.wait_for_cgsnapshot_status(
211 cgsnapshot['id'], 'available')
212 self.assertEqual(cgsnapshot_name, cgsnapshot['name'])
213213
214214 # Create CG from CG snapshot
215215 cg_name2 = data_utils.rand_name('CG_from_snap')
217217 self.consistencygroups_adm_client.create_consistencygroup_from_src)
218218 cg2 = create_consistencygroup2(cgsnapshot_id=cgsnapshot['id'],
219219 name=cg_name2)['consistencygroup']
220 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
221 cg2['id'], 'available')
222 self.assertEqual(cg_name2, cg2['name'])
220223 vols = self.admin_volume_client.list_volumes(
221224 detail=True)['volumes']
222225 for vol in vols:
223226 if vol['consistencygroup_id'] == cg2['id']:
224227 waiters.wait_for_volume_resource_status(
225228 self.admin_volume_client, vol['id'], 'available')
226 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
227 cg2['id'], 'available')
228 self.assertEqual(cg_name2, cg2['name'])
229229
230230 # Clean up
231231 self._delete_consistencygroup(cg2['id'])
246246 self.consistencygroups_adm_client.create_consistencygroup)
247247 cg = create_consistencygroup(volume_type['id'],
248248 name=cg_name)['consistencygroup']
249 vol_name = data_utils.rand_name("volume")
250 params = {'name': vol_name,
251 'volume_type': volume_type['id'],
252 'consistencygroup_id': cg['id'],
253 'size': CONF.volume.volume_size}
254
255 # Create volume
256 volume = self.admin_volume_client.create_volume(**params)['volume']
257 waiters.wait_for_volume_resource_status(self.admin_volume_client,
258 volume['id'], 'available')
259 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
260 cg['id'], 'available')
261 self.assertEqual(cg_name, cg['name'])
249 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
250 cg['id'], 'available')
251 self.assertEqual(cg_name, cg['name'])
252
253 # Create volume
254 vol_name = data_utils.rand_name("volume")
255 params = {'name': vol_name,
256 'volume_type': volume_type['id'],
257 'consistencygroup_id': cg['id'],
258 'size': CONF.volume.volume_size}
259 volume = self.admin_volume_client.create_volume(**params)['volume']
260 waiters.wait_for_volume_resource_status(self.admin_volume_client,
261 volume['id'], 'available')
262262
263263 # Create CG from CG
264264 cg_name2 = data_utils.rand_name('CG_from_cg')
266266 self.consistencygroups_adm_client.create_consistencygroup_from_src)
267267 cg2 = create_consistencygroup2(source_cgid=cg['id'],
268268 name=cg_name2)['consistencygroup']
269 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
270 cg2['id'], 'available')
271 self.assertEqual(cg_name2, cg2['name'])
269272 vols = self.admin_volume_client.list_volumes(
270273 detail=True)['volumes']
271274 for vol in vols:
272275 if vol['consistencygroup_id'] == cg2['id']:
273276 waiters.wait_for_volume_resource_status(
274277 self.admin_volume_client, vol['id'], 'available')
275 self.consistencygroups_adm_client.wait_for_consistencygroup_status(
276 cg2['id'], 'available')
277 self.assertEqual(cg_name2, cg2['name'])
278278
279279 # Clean up
280280 self._delete_consistencygroup(cg2['id'])