Completed
Pull Request — master (#543)
by
unknown
02:30
created

SoftlayerDeleteInstance   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 13
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 13
rs 10
c 0
b 0
f 0
wmc 4
1
from lib.softlayer import SoftlayerBaseAction
2
3
4
class SoftlayerDeleteInstance(SoftlayerBaseAction):
5
    def run(self, name):
6
        driver = self._get_driver()
7
        # go from name to Node Object
8
        try:
9
            node = [n for n in driver.list_nodes() if n.extra['hostname'] == name][0]
10
        except IndexError:
11
            raise Exception("Node with name {} not found in Softlayer".format(name))
12
        # destroy the node
13
        self.logger.info('Destroying node...')
14
        node = driver.destroy_node(node)
15
        self.logger.info('Node successfully destroyed: {}'.format(node))
16
        return
17