def test_image_metadata_put(self): # Get api sample of image metadata put request. image_id = fake.get_valid_image_id() response = self._do_put('images/%s/metadata' % image_id, 'image-metadata-put-req', {}) subs = self._get_regexes() self._verify_response('image-metadata-put-resp', subs, response, 200)
def test_image_metadata_get(self): # Get api sample of an image metadata request. image_id = fake.get_valid_image_id() response = self._do_get('images/%s/metadata' % image_id) subs = self._get_regexes() subs['image_id'] = image_id self._verify_response('image-metadata-get-resp', subs, response, 200)
def test_image_meta_key_get(self): # Get api sample of an image metadata key request. image_id = fake.get_valid_image_id() key = "kernel_id" response = self._do_get('images/%s/metadata/%s' % (image_id, key)) subs = self._get_regexes() self._verify_response('image-meta-key-get', subs, response, 200)
def test_scheduler_hints_post(self): """Get api sample of scheduler hint post request""" hints = {"image_id": fake.get_valid_image_id(), "image_near": str(uuid.uuid4())} response = self._do_post("servers", "scheduler-hints-post-req", hints) self.assertEqual(response.status, 202) subs = self._get_regexes() return self._verify_response("scheduler-hints-post-resp", subs, response)
def test_image_metadata_put(self): """Get api sample of image metadata put request""" image_id = fake.get_valid_image_id() response = self._do_put("images/%s/metadata" % image_id, "image-metadata-put-req", {}) self.assertEqual(response.status, 200) subs = self._get_regexes() return self._verify_response("image-metadata-put-resp", subs, response)
def test_image_meta_key_get(self): """Get api sample of a image metadata key request""" image_id = fake.get_valid_image_id() key = "kernel_id" response = self._do_get("images/%s/metadata/%s" % (image_id, key)) subs = self._get_regexes() return self._verify_response("image-meta-key-get", subs, response)
def _test_server_rebuild_preserve_ephemeral(self, value): uuid = self._post_server() image = fake.get_valid_image_id() subs = { 'host': self._get_host(), 'uuid': image, 'name': 'foobar', 'pass': '******', 'hostid': '[a-f0-9]+', 'preserve_ephemeral': str(value).lower(), 'action': 'rebuild', 'glance_host': self._get_glance_host(), } def fake_rebuild(self_, context, instance, image_href, admin_password, files_to_inject=None, **kwargs): self.assertEqual(kwargs['preserve_ephemeral'], value) self.stubs.Set(compute_api.API, 'rebuild', fake_rebuild) response = self._do_post('servers/%s/action' % uuid, 'server-action-rebuild-preserve-ephemeral', subs) self.assertEqual(response.status, 202)
def test_image_get(self): # Get api sample of one single image details request. image_id = fake.get_valid_image_id() response = self._do_get('images/%s' % image_id) subs = self._get_regexes() subs['image_id'] = image_id self._verify_response('image-get-resp', subs, response, 200)
def test_image_metadata_get(self): """Get api sample of a image metadata request""" image_id = fake.get_valid_image_id() response = self._do_get("images/%s/metadata" % image_id) subs = self._get_regexes() subs["image_id"] = image_id return self._verify_response("image-metadata-get-resp", subs, response)
def test_show(self): # Get api sample of one single image details request. image_id = fake.get_valid_image_id() response = self._do_get('images/%s' % image_id) subs = self._get_regexes() subs['image_id'] = image_id self._verify_response('image-get-resp', subs, response, 200)
def test_image_meta_key_put(self): """Get api sample of image metadata key put request""" image_id = fake.get_valid_image_id() key = "auto_disk_config" response = self._do_put("images/%s/metadata/%s" % (image_id, key), "image-meta-key-put-req", {}) self.assertEqual(response.status, 200) subs = self._get_regexes() return self._verify_response("image-meta-key-put-resp", subs, response)
def test_scheduler_hints_post(self): # Get api sample of scheduler hint post request. subs = self._get_regexes() subs.update({'image_id': fake.get_valid_image_id(), 'image_near': str(uuid.uuid4())}) response = self._do_post('servers', 'scheduler-hints-post-req', subs) self._verify_response('scheduler-hints-post-resp', subs, response, 202)
def test_image_get(self): """Get api sample of one single image details request""" image_id = fake.get_valid_image_id() response = self._do_get('images/%s' % image_id) self.assertEqual(response.status, 200) subs = self._get_regexes() subs['image_id'] = image_id return self._verify_response('image-get-resp', subs, response)
def test_image_meta_key_put(self): # Get api sample of image metadata key put request. image_id = fake.get_valid_image_id() key = "auto_disk_config" response = self._do_put('images/%s/metadata/%s' % (image_id, key), 'image-meta-key-put-req', {}) subs = self._get_regexes() self._verify_response('image-meta-key-put-resp', subs, response, 200)
def test_image_metadata_put(self): """Get api sample of image metadata put request""" image_id = fake.get_valid_image_id() response = self._do_put('images/%s/metadata' % image_id, 'image-metadata-put-req', {}) self.assertEqual(response.status, 200) subs = self._get_regexes() return self._verify_response('image-metadata-put-resp', subs, response)
def _post_server(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), } response = self._do_post('servers', 'server-post-req', subs) subs = self._get_regexes() return self._verify_response('server-post-resp', subs, response, 202)
def test_servers_post(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), 'access_ip_v4': '1.2.3.4', 'access_ip_v6': 'fe80::' } self._servers_post(subs)
def test_image_get(self): """Get api sample of one single image details request""" image_id = fake.get_valid_image_id() response = self._do_get("images/%s" % image_id) self.assertEqual(response.status, 200) subs = self._get_regexes() subs["image_id"] = image_id return self._verify_response("image-get-resp", subs, response)
def test_servers_post(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), } response = self._do_post('servers', 'server-post-req', subs) self.assertEqual(response.status, 202) subs = self._get_regexes() return self._verify_response('server-post-resp', subs, response)
def test_user_data_post(self): user_data_contents = '#!/bin/bash\n/bin/su\necho "I am in you!"\n' user_data = base64.b64encode(user_data_contents) subs = {"image_id": fake.get_valid_image_id(), "host": self._get_host(), "user_data": user_data} response = self._do_post("servers", "userdata-post-req", subs) self.assertEqual(response.status, 202) subs.update(self._get_regexes()) return self._verify_response("userdata-post-resp", subs, response)
def test_image_meta_key_put(self): """Get api sample of image metadata key put request""" image_id = fake.get_valid_image_id() key = "auto_disk_config" response = self._do_put('images/%s/metadata/%s' % (image_id, key), 'image-meta-key-put-req', {}) self.assertEqual(response.status, 200) subs = self._get_regexes() return self._verify_response('image-meta-key-put-resp', subs, response)
def test_image_metadata_post(self): """Get api sample to update metadata of an image metadata request""" image_id = fake.get_valid_image_id() response = self._do_post( 'images/%s/metadata' % image_id, 'image-metadata-post-req', {}) self.assertEqual(response.status, 200) subs = self._get_regexes() return self._verify_response('image-metadata-post-resp', subs, response)
def test_cloud_pipe_create(self): # Get api samples of cloud pipe extension creation. self.flags(vpn_image_id=fake.get_valid_image_id()) project = {"project_id": str(uuid_lib.uuid4().hex)} response = self._do_post("os-cloudpipe", "cloud-pipe-create-req", project) subs = self._get_regexes() subs.update(project) subs["image_id"] = CONF.vpn_image_id self._verify_response("cloud-pipe-create-resp", subs, response, 200) return project
def test_multiple_create(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), 'min_count': "2", 'max_count': "3" } response = self._do_post('servers', 'multiple-create-post-req', subs) subs.update(self._get_regexes()) self._verify_response('multiple-create-post-resp', subs, response, 202)
def test_scheduler_hints_post(self): """Get api sample of scheduler hint post request""" hints = { 'image_id': fake.get_valid_image_id(), 'image_near': str(uuid.uuid4()) } response = self._do_post('servers', 'scheduler-hints-post-req', hints) self.assertEqual(response.status, 202) subs = self._get_regexes() return self._verify_response('scheduler-hints-post-resp', subs, response)
def test_server_rebuild(self): uuid = self._post_server() image = fake.get_valid_image_id() subs = {'host': self._get_host(), 'uuid': image, 'name': 'foobar', 'pass': '******', 'hostid': '[a-f0-9]+', } self._test_server_action(uuid, 'rebuild', subs, 'server-action-rebuild-resp')
def test_cloud_pipe_create(self): # Get api samples of cloud pipe extension creation. self.flags(vpn_image_id=fake.get_valid_image_id()) project = {'project_id': 'cloudpipe-' + str(uuid_lib.uuid4())} response = self._do_post('os-cloudpipe', 'cloud-pipe-create-req', project) subs = self._get_regexes() subs.update(project) subs['image_id'] = CONF.vpn_image_id self._verify_response('cloud-pipe-create-resp', subs, response, 200) return project
def test_cloud_pipe_create(self): """Get api samples of cloud pipe extension creation""" FLAGS.vpn_image_id = fake.get_valid_image_id() project = {"project_id": "cloudpipe-" + str(uuid.uuid4())} response = self._do_post("os-cloudpipe", "cloud-pipe-create-req", project) self.assertEqual(response.status, 200) subs = self._get_regexes() subs.update(project) subs["image_id"] = FLAGS.vpn_image_id self._verify_response("cloud-pipe-create-resp", subs, response) return project
def test_create_availability_zone(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), "availability_zone": "nova" } response = self._do_post('servers', 'availability-zone-post-req', subs) self.assertEqual(response.status, 202) subs.update(self._get_regexes()) return self._verify_response('availability-zone-post-resp', subs, response)
def test_rebuild_server(self): uuid = self._post_server() subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), } response = self._do_post('servers/%s/action' % uuid, 'server-action-rebuild-req', subs) subs = self._get_regexes() subs['hostid'] = '[a-f0-9]+' self._verify_response('server-action-rebuild-resp', subs, response, 202)
def test_cloud_pipe_create(self): """Get api samples of cloud pipe extension creation""" FLAGS.vpn_image_id = fake.get_valid_image_id() project = {'project_id': 'cloudpipe-' + str(uuid.uuid4())} response = self._do_post('os-cloudpipe', 'cloud-pipe-create-req', project) self.assertEqual(response.status, 200) subs = self._get_regexes() subs.update(project) subs['image_id'] = FLAGS.vpn_image_id self._verify_response('cloud-pipe-create-resp', subs, response) return project
def test_user_data_post(self): user_data_contents = '#!/bin/bash\n/bin/su\necho "I am in you!"\n' user_data = base64.b64encode(user_data_contents) subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), 'user_data': user_data } response = self._do_post('servers', 'userdata-post-req', subs) subs.update(self._get_regexes()) self._verify_response('userdata-post-resp', subs, response, 202)
def test_servers_details(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), 'access_ip_v4': '1.2.3.4', 'access_ip_v6': 'fe80::' } uuid = self._servers_post(subs) response = self._do_get('servers/detail') subs['hostid'] = '[a-f0-9]+' subs['id'] = uuid self._verify_response('servers-details-resp', subs, response, 200)
def test_multiple_create_without_reservation_id(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), 'min_count': "2", 'max_count': "3" } response = self._do_post('servers', 'multiple-create-no-resv-post-req', subs) self.assertEqual(response.status, 202) subs.update(self._get_regexes()) return self._verify_response('multiple-create-no-resv-post-resp', subs, response)
def test_servers_update(self): subs = { 'image_id': fake.get_valid_image_id(), 'host': self._get_host(), 'access_ip_v4': '1.2.3.4', 'access_ip_v6': 'fe80::' } uuid = self._servers_post(subs) subs['access_ip_v4'] = "4.3.2.1" subs['access_ip_v6'] = '80fe::' response = self._do_put('servers/%s' % uuid, 'server-put-req', subs) subs['hostid'] = '[a-f0-9]+' subs['id'] = uuid self._verify_response('server-put-resp', subs, response, 200)
def _test_server_rebuild_preserve_ephemeral(self, value): uuid = self._post_server() image = fake.get_valid_image_id() subs = { "host": self._get_host(), "uuid": image, "name": "foobar", "pass": "******", "hostid": "[a-f0-9]+", "preserve_ephemeral": str(value).lower(), "action": "rebuild", "glance_host": self._get_glance_host(), } def fake_rebuild(self_, context, instance, image_href, admin_password, files_to_inject=None, **kwargs): self.assertEqual(kwargs["preserve_ephemeral"], value) self.stubs.Set(compute_api.API, "rebuild", fake_rebuild) response = self._do_post("servers/%s/action" % uuid, "server-action-rebuild-preserve-ephemeral", subs) self.assertEqual(response.status, 202)
def test_get_image(self): image_id = fake.get_valid_image_id() response = self._do_get('images/%s' % image_id) subs = self._get_regexes() subs['image_id'] = image_id self._verify_response('image-get-resp', subs, response, 200)