# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+from glanceclient.exc import HTTPBadRequest
try:
from urllib.request import URLError
created_image = self.image_creator.create()
self.assertIsNotNone(created_image)
- retrieved_image = glance_utils.get_image(self.glance,
- self.image_settings.name)
+ retrieved_image = glance_utils.get_image(
+ self.glance, image_settings=self.image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(created_image.size, retrieved_image.size)
self.assertEqual(get_image_size(self.image_settings),
created_image = self.image_creator.create()
self.assertIsNotNone(created_image)
- retrieved_image = glance_utils.get_image(self.glance,
- self.image_settings.name)
+ retrieved_image = glance_utils.get_image(
+ self.glance, image_settings=self.image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(self.image_creator.get_image().size,
retrieved_image.size)
self.assertEqual(self.image_name, created_image.name)
retrieved_image = glance_utils.get_image(
- self.glance, file_image_settings.name)
+ self.glance, image_settings=file_image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(self.image_creator.get_image().size,
retrieved_image.size)
created_image = self.image_creator.create()
self.assertIsNotNone(created_image)
- retrieved_image = glance_utils.get_image(self.glance,
- self.image_settings.name)
+ retrieved_image = glance_utils.get_image(
+ self.glance, image_settings=self.image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(self.image_creator.get_image().size,
retrieved_image.size)
glance_utils.delete_image(self.glance, created_image)
self.assertIsNone(glance_utils.get_image(
- self.glance, self.image_creator.image_settings.name))
+ self.glance, image_settings=self.image_creator.image_settings))
# Must not throw an exception when attempting to cleanup non-existent
# image
self.image_settings)
image1 = self.image_creator.create()
- retrieved_image = glance_utils.get_image(self.glance,
- self.image_settings.name)
+ retrieved_image = glance_utils.get_image(
+ self.glance, image_settings=self.image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(self.image_creator.get_image().size,
retrieved_image.size)
self.image_settings)
image1 = self.image_creator.create()
- retrieved_image = glance_utils.get_image(self.glance,
- self.image_settings.name)
+ retrieved_image = glance_utils.get_image(
+ self.glance, image_settings=self.image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(self.image_creator.get_image().size,
retrieved_image.size)
img_format=os_image_settings.format,
url="http://foo.bar"))
- with self.assertRaises(URLError):
+ try:
+ self.image_creator.create()
+ except HTTPBadRequest:
+ pass
+ except URLError:
+ pass
+ except Exception as e:
+ self.fail('Invalid Exception ' + str(e))
+
+ def test_bad_image_image_type(self):
+ """
+ Expect an ImageCreationError when the image type bad
+ """
+ os_image_settings = openstack_tests.cirros_image_settings(
+ name=self.image_name)
+ self.image_creator = create_image.OpenStackImage(
+ self.os_creds,
+ create_image.ImageSettings(name=os_image_settings.name,
+ image_user=os_image_settings.image_user,
+ img_format='foo',
+ url=os_image_settings.url))
+
+ with self.assertRaises(Exception):
self.image_creator.create()
def test_bad_image_file(self):
image_creator.create()
main_image = glance_utils.get_image(self.glance,
- image_settings.name)
+ image_settings=image_settings)
self.assertIsNotNone(main_image)
self.assertIsNotNone(image_creator.get_image())
self.assertEqual(image_creator.get_image().id, main_image.id)
kernel_image = glance_utils.get_image(
- self.glance, image_settings.kernel_image_settings.name)
+ self.glance,
+ image_settings=image_settings.kernel_image_settings)
self.assertIsNotNone(kernel_image)
self.assertIsNotNone(image_creator.get_kernel_image())
self.assertEqual(kernel_image.id,
image_creator.get_kernel_image().id)
ramdisk_image = glance_utils.get_image(
- self.glance, image_settings.ramdisk_image_settings.name)
+ self.glance,
+ image_settings=image_settings.ramdisk_image_settings)
self.assertIsNotNone(ramdisk_image)
self.assertIsNotNone(image_creator.get_ramdisk_image())
self.assertEqual(ramdisk_image.id,
"""
Tests the creation of a 3-part OpenStack image from files.
"""
+ file_only = False
+
# Set properties
properties = {}
if self.glance_test_meta:
if 'extra_properties' in self.glance_test_meta:
properties = self.glance_test_meta['extra_properties']
+ if 'disk_file' in self.glance_test_meta:
+ file_only = True
# Create the kernel image
kernel_file_name = None
else:
kernel_url = openstack_tests.CIRROS_DEFAULT_KERNEL_IMAGE_URL
- if not kernel_file_name:
+ if not kernel_file_name and not file_only:
kernel_file_name = file_utils.download(kernel_url,
self.tmp_dir).name
+ else:
+ logger.warn('Will not download the kernel image.'
+ ' Cannot execute test')
+ return
kernel_file_image_settings = openstack_tests.file_image_test_settings(
name=self.image_name + '_kernel', file_path=kernel_file_name)
elif 'ramdisk_url' in self.glance_test_meta:
ramdisk_url = self.glance_test_meta['ramdisk_url']
- if not ramdisk_file_name:
+ if not ramdisk_file_name and not file_only:
ramdisk_file_name = file_utils.download(ramdisk_url,
self.tmp_dir).name
+ else:
+ logger.warn('Will not download the ramdisk image.'
+ ' Cannot execute test')
+ return
ramdisk_file_image_settings = openstack_tests.file_image_test_settings(
name=self.image_name + '_ramdisk', file_path=ramdisk_file_name)
elif 'disk_url' in self.glance_test_meta:
disk_url = self.glance_test_meta['disk_url']
- if not disk_file_name:
+ if not disk_file_name and not file_only:
disk_file_name = file_utils.download(disk_url, self.tmp_dir).name
+ else:
+ logger.warn('Will not download the disk file image.'
+ ' Cannot execute test')
+ return
file_image_settings = openstack_tests.file_image_test_settings(
name=self.image_name, file_path=disk_file_name)
self.assertIsNotNone(created_image)
self.assertEqual(self.image_name, created_image.name)
- retrieved_image = glance_utils.get_image(self.glance,
- file_image_settings.name)
+ retrieved_image = glance_utils.get_image(
+ self.glance, image_settings=file_image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(self.image_creators[-1].get_image().size,
retrieved_image.size)
self.assertIsNotNone(created_image)
self.assertEqual(self.image_name, created_image.name)
- retrieved_image = glance_utils.get_image(self.glance,
- os_image_settings.name)
+ retrieved_image = glance_utils.get_image(
+ self.glance, image_settings=os_image_settings)
self.assertIsNotNone(retrieved_image)
self.assertEqual(self.image_creators[-1].get_image().size,