Esempio n. 1
0
    def test_create_delete_server(self):
        """Verify that a server is created and that it is deleted."""

        # Setup
        server_name = self.randName()
        new_server = self.os.servers.create(name=server_name,
                                            image=FLAGS.image,
                                            flavor=FLAGS.flavor)

        # Legal states...
        states = utils.StatusTracker('active', 'build', 'active')

        # Wait for server to transition to next state and make sure it
        # went to the correct one
        adaptor.assert_true(states.waitForState(self.os.servers.get,
                                                'status', new_server))

        # Verify the server was created correctly
        created_server = self.os.servers.get(new_server.id)
        adaptor.assert_equal(server_name, created_server.name)

        # Delete the server and verify it is removed
        new_server.delete()

        # Legal states...I don't believe it'll ever go to 'deleted',
        # though...
        states = utils.StatusTracker('active', 'build', 'deleted')
        try:
            states.waitForState(self.os.servers.get, 'status', new_server.id)
        except novaclient.NotFound:
            return
Esempio n. 2
0
    def test_reboot_server(self):
        """Verify that a server can be rebooted."""

        # Verify the server goes through the correct states
        # when rebooting
        states = utils.StatusTracker("active", "build", "active")
        self.server.reboot()
        adaptor.assert_true(states.waitForState(self.os.servers.get, "status", self.server))
Esempio n. 3
0
    def test_create_server_image(self):
        """Verify a backup image for a server can be created."""

        # Set legal states
        states = utils.StatusTracker('active', 'queued', 'preparing',
                                     'saving', 'active')

        # Make a backup image for the server
        backup_image = self.os.images.create("backup", self.server)
        adaptor.assert_true(states.waitForState(self.os.images.get,
                                                'status', backup_image))

        adaptor.assert_equal(backup_image.name, "backup")
Esempio n. 4
0
    def test_list(self):
        """Test that images can be listed."""

        # See if we can retrieve the list of images
        images = self.os.images.list()

        # Do we have a list?
        adaptor.assert_not_equal(len(images), 0)

        # Let's see if our test image is in the list
        foundimg = False
        for img in images:
            if img.id == self._image_id:
                adaptor.assert_equal(img.name, self._image_name)
                adaptor.assert_equal(img.status, 'ACTIVE')
                foundimg = True

        # Did we actually find the image we were looking for?
        adaptor.assert_true(foundimg)
Esempio n. 5
0
    def test_resize_server_revert(self):
        """Verify that a re-sized server can be reverted."""

        # Resize the server and wait for it to finish
        new_flavor = self.os.flavors.get(2)
        self.server.resize(new_flavor)

        # Create list of states
        states = utils.StatusTracker("active", "resize-confirm")

        # Wait for server to transition to next state and make sure it
        # went to the correct one
        adaptor.assert_true(states.waitForState(self.os.servers.get, "status", self.server))

        # Revert the resize
        self.server.revert_resize()

        # Check that the was reverted to its original flavor
        self.server = self.os.servers.get(self.server)
        adaptor.assert_equal(new_flavor.id, self.server.flavorId)
Esempio n. 6
0
    def test_resize_server_confirm(self):
        """Verify that the flavor of a server can be changed."""

        # Resize the server and wait for it to finish
        new_flavor = self.os.flavors.get(2)
        self.server.resize(new_flavor)

        # Legal states...
        states = utils.StatusTracker("active", "resize-confirm")

        # Wait for server to transition to next state and make sure it
        # went to the correct one
        adaptor.assert_true(states.waitForState(self.os.servers.get, "status", self.server))

        # Confirm the resize
        self.server.confirm_resize()

        # Check that server's flavor has changed
        self.server = self.os.servers.get(self.server)
        adaptor.assert_equal(new_flavor.id, self.server.flavorId)
Esempio n. 7
0
    def setUpClass(cls):
        """Set up an instance for use by the enclosed tests."""

        # Need an OpenStack instance so we can create the server
        os = cls.getOpenStack()

        # Select a random key and value for metadata; used by the
        # metadata tests
        cls.meta_key = cls.randName(length=10)
        cls.meta_data = cls.randName(length=50)

        # Set up the server
        cls.flavor = FLAGS.flavor
        cls.image = FLAGS.image
        cls.server_name = cls.randName()
        cls.server = os.servers.create(name=cls.server_name,
                                       image=cls.image, flavor=cls.flavor,
                                       meta={cls.meta_key: cls.meta_data})

        # Wait for the server to transition to the appropriate state
        states = utils.StatusTracker('active', 'build', 'active')
        adaptor.assert_true(states.waitForState(os.servers.get, 'status',
                                                cls.server))
Esempio n. 8
0
    def test_snap_and_restore(self):
        """Verify that a server is snapped and rebuilt from that snap"""

        states = utils.StatusTracker('active', 'queued', 'preparing',
                                     'saving', 'active')

        # Make a backup image for the server

        backup_image = self.os.images.create("backup", self.server)
        adaptor.assert_true(states.waitForState(self.os.images.get,
                                                'status', backup_image))

        adaptor.assert_equal(backup_image.name, "backup")
         

        # Finally, rebuild from the image
        states = utils.StatusTracker('active', 'build', 'active')
        self.os.servers.rebuild(self.server.id, backup_image.id)
        adaptor.assert_true(states.waitForState(self.os.servers.get,
                                                'status', self.server))

        created_server = self.os.servers.get(self.server.id)

        adaptor.assert_equal(backup_image.id, created_server.imageId)