Completed
Pull Request — master (#640)
by
unknown
03:00
created

ActionManager   A

Complexity

Total Complexity 9

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Importance

Changes 4
Bugs 0 Features 1
Metric Value
dl 0
loc 24
rs 10
c 4
b 0
f 1
wmc 9

1 Method

Rating   Name   Duplication   Size   Complexity  
D run() 0 22 9
1
from lib import action
2
from lib import util
3
4
5
class ActionManager(action.BaseAction):
6
7
    def run(self, **kwargs):
8
        action = kwargs['action']
9
        del kwargs['action']
10
        module_path = kwargs['module_path']
11
        del kwargs['module_path']
12
        if action == 'run_instances':
13
            kwargs['user_data'] = self.st2_user_data()
14
        if action == 'create_tags':
15
            kwargs['tags'] = self.split_tags(kwargs['tags'])
16
        if action == 'create_load_balancer' or action == 'create_load_balancer_listeners':
17
            if kwargs['listeners'] is not None:
18
                kwargs['listeners'] = util.get_listners(kwargs['listeners'])
19
        if action == 'configure_health_check':
20
            util.populate_elb_health_check(kwargs)
21
        if action in ('add_a', 'update_a'):
22
            kwargs['value'] = kwargs['value'].split(',')
23
        if 'cls' in kwargs.keys():
24
            cls = kwargs['cls']
25
            del kwargs['cls']
26
            return self.do_method(module_path, cls, action, **kwargs)
27
        else:
28
            return self.do_function(module_path, action, **kwargs)
29