Example #1
0
    def test_deploy_fail(self):

        def refresh():
            pass

        self.node.refresh = refresh

        self.mox.StubOutWithMock(pxe, '_create_pxe_config')
        self.mox.StubOutWithMock(pxe, '_cache_images')
        self.mox.StubOutWithMock(pxe, '_get_tftp_image_info')
        pxe._get_tftp_image_info(self.node).AndReturn(None)
        pxe._create_pxe_config(mox.IgnoreArg(), self.node, None).\
            AndReturn(None)
        pxe._cache_images(self.node, None).AndReturn(None)
        self.mox.ReplayAll()

        class handler_deploying(threading.Thread):
            def __init__(self, node):
                threading.Thread.__init__(self)
                self.node = node

            def run(self):
                self.node['provision_state'] = states.DEPLOYING
                time.sleep(2)
                self.node['provision_state'] = states.DEPLOYFAIL

        handler = handler_deploying(self.node)
        handler.start()
        with task_manager.acquire([self.node['uuid']], shared=False) as task:
            self.assertRaises(exception.InstanceDeployFailure,
                              task.resources[0].driver.deploy.deploy,
                              task,
                              self.node)
        self.mox.VerifyAll()
    def test_start_deploy(self):
        self.mox.StubOutWithMock(pxe, '_create_pxe_config')
        self.mox.StubOutWithMock(pxe, '_cache_images')
        self.mox.StubOutWithMock(pxe, '_get_tftp_image_info')
        pxe._get_tftp_image_info(self.node).AndReturn(None)
        pxe._create_pxe_config(mox.IgnoreArg(), self.node, None).\
            AndReturn(None)
        pxe._cache_images(self.node, None).AndReturn(None)
        self.mox.ReplayAll()

        with task_manager.acquire([self.node['uuid']], shared=False) as task:
            state = task.resources[0].driver.deploy.deploy(task, self.node)
        self.assertEqual(state, states.DEPLOYING)
        self.mox.VerifyAll()
Example #3
0
    def test_deploy_timeout_fail(self):

        def refresh():
            pass

        self.node.refresh = refresh

        self.mox.StubOutWithMock(pxe, '_create_pxe_config')
        self.mox.StubOutWithMock(pxe, '_cache_images')
        self.mox.StubOutWithMock(pxe, '_get_tftp_image_info')
        pxe._get_tftp_image_info(self.node).AndReturn(None)
        pxe._create_pxe_config(mox.IgnoreArg(), self.node, None).\
            AndReturn(None)
        pxe._cache_images(self.node, None).AndReturn(None)
        self.mox.ReplayAll()

        CONF.set_default('pxe_deploy_timeout', 2, group='pxe')

        with task_manager.acquire([self.node['uuid']], shared=False) as task:
            self.assertRaises(exception.InstanceDeployFailure,
                              task.resources[0].driver.deploy.deploy,
                              task,
                              self.node)
        self.mox.VerifyAll()