Esempio n. 1
0
def destroy_machine(request):
    """Destroys a machine on a certain backend.

    After destroying a machine it also deletes all key associations. However,
    it doesn't undeploy the keypair. There is no need to do it because the
    machine will be destroyed.

    """
    try:
        conn = connect(request)
    except:
        return Response("Backend not found", 404)

    machine_id = request.matchdict["machine"]
    machine = Node(machine_id, name=machine_id, state=0, public_ips=[], private_ips=[], driver=conn)

    machine.destroy()

    backend_id = request.matchdict["backend"]
    pair = [backend_id, machine_id]

    try:
        keypairs = request.environ["beaker.session"]["keypairs"]
    except:
        keypairs = request.registry.settings.get("keypairs", {})

    for key in keypairs:
        machines = keypairs[key].get("machines", None)
        if pair in machines:
            disassociate_key(request, key, backend_id, machine_id, undeploy=False)

    return Response("Success", 200)
Esempio n. 2
0
 def test_destroy_node_response_INPROGRESS(self):
     OpsourceMockHttp.type = "INPROGRESS"
     node = Node(id="11", name=None, state=None, public_ips=None, private_ips=None, driver=self.driver)
     try:
         node.destroy()
         self.assertTrue(False)  # above command should have thrown OpsourceAPIException
     except OpsourceAPIException:
         self.assertTrue(True)
Esempio n. 3
0
 def test_destroy_node_response_INPROGRESS(self):
     OpsourceMockHttp.type = 'INPROGRESS'
     node = Node(id='11', name=None, state=None,
                 public_ips=None, private_ips=None, driver=self.driver)
     try:
         node.destroy()
         self.assertTrue(False) # above command should have thrown OpsourceAPIException
     except OpsourceAPIException:
         self.assertTrue(True)
Esempio n. 4
0
 def test_destroy_node_response_INPROGRESS(self):
     DimensionDataMockHttp.type = 'INPROGRESS'
     node = Node(id='11', name=None, state=None,
                 public_ips=None, private_ips=None, driver=self.driver)
     try:
         node.destroy()
         self.assertTrue(
             False)  # above command should have thrown DimensionDataAPIException
     except DimensionDataAPIException:
         pass
Esempio n. 5
0
 def test_destroy_node_response_RESOURCE_BUSY(self):
     DimensionDataMockHttp.type = 'INPROGRESS'
     node = Node(id='11', name=None, state=None,
                 public_ips=None, private_ips=None, driver=self.driver)
     try:
         node.destroy()
         self.assertTrue(
             False)  # above command should have thrown DimensionDataAPIException
     except DimensionDataAPIException:
         pass
Esempio n. 6
0
    def test_destroy_node(self):
        VoxelMockHttp.type = 'DESTROY_NODE'
        node = Node(
            id=72258, name=None, state=None, public_ips=None, private_ips=None,
            driver=self.driver)

        self.assertTrue(node.destroy())
Esempio n. 7
0
 def test_destroy_node(self):
     node = Node(id=72258,
                 name=None,
                 state=None,
                 public_ips=None,
                 private_ips=None,
                 driver=self.driver)
     ret = node.destroy()
     self.assertTrue(ret is True)
    def test_destroy_node(self):
        node = Node(id=1, name=None, state=None, public_ips=None, private_ips=None,
                    driver=self.driver)

        ret = node.destroy()
        self.assertTrue(ret is True)

        ret = self.driver.destroy_node(node)
        self.assertTrue(ret is True)
Esempio n. 9
0
def destroy_machine(request):
    """Destroys a machine on a certain backend."""
    try:
        conn = connect(request)
    except:
        return Response('Backend not found', 404)

    machine_id = request.matchdict['machine']
    machine = Node(machine_id,
                   name=machine_id,
                   state=0,
                   public_ips=[],
                   private_ips=[],
                   driver=conn)

    machine.destroy()

    return Response('Success', 200)
Esempio n. 10
0
def destroy_machine(request):
    """Destroys a machine on a certain backend."""
    try:
        conn = connect(request)
    except:
        return Response('Backend not found', 404)

    machine_id = request.matchdict['machine']
    machine = Node(machine_id,
                   name=machine_id,
                   state=0,
                   public_ips=[],
                   private_ips=[],
                   driver=conn)

    machine.destroy()

    return Response('Success', 200)
Esempio n. 11
0
 def test_destroy_node_response(self):
     node = Node(id='11', name=None, state=None,
                 public_ip=None, private_ip=None, driver=self.driver)
     ret = node.destroy()
     self.assertTrue(ret is True)