Update SDNC to use CCSDK ansible server as base
[sdnc/oam.git] / installation / ansible-server / src / main / scripts / AnsibleModule.py
diff --git a/installation/ansible-server/src/main/scripts/AnsibleModule.py b/installation/ansible-server/src/main/scripts/AnsibleModule.py
deleted file mode 100755 (executable)
index 3458c28..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-'''
-/*-
-* ============LICENSE_START=======================================================
-* ONAP : APPC
-* ================================================================================
-* Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
-* ================================================================================
-* Copyright (C) 2017 Amdocs
-* =============================================================================
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*      http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-* 
-* ECOMP is a trademark and service mark of AT&T Intellectual Property.
-* ============LICENSE_END=========================================================
-*/
-'''
-
-import os, subprocess
-import sys
-from collections import namedtuple
-import json
-
-import uuid
-
-def ansibleSysCall (inventory_path, playbook_path, nodelist, mandatory,
-                    envparameters, localparameters, lcm, timeout):
-
-    print "***> in AnsibleModule.ansibleSysCall"
-    print "   EnvParameters:  ", envparameters
-    print "   LocalParameters:", localparameters
-    print "   Inventory:      ", inventory_path
-    print "   Playbook:       ", playbook_path
-    print "   NodeList:       ", nodelist
-    print "   Mandatory:      ", mandatory
-    print "   Timeout:        ", timeout
-    log = []
-
-    str_parameters = ''
-                
-    if not envparameters == {}:
-        for key in envparameters:
-            if str_parameters == '':
-                str_parameters = '"'  + str(key) + '=\'' + str(envparameters[key])  + '\''
-            else:
-                str_parameters += ' '  + str(key) + '=\'' + str(envparameters[key])  + '\''
-        str_parameters += '"'
-                        
-    if len(str_parameters) > 0:
-        cmd = 'timeout --signal=KILL ' + str(timeout) + \
-              ' ansible-playbook -v --extra-vars ' + str_parameters + ' -i ' + \
-              inventory_path + ' ' + playbook_path
-    else:
-        cmd = 'timeout --signal=KILL ' + str(timeout) + \
-              ' ansible-playbook -v -i ' + inventory_path + ' ' + playbook_path
-
-    print "   CMD:            ", cmd
-
-    print "\n =================ANSIBLE STDOUT BEGIN============================================\n"
-    p = subprocess.Popen(cmd, shell=True,
-                         stdout=subprocess.PIPE,
-                         stderr=subprocess.STDOUT) 
-    # p.wait()
-    (stdout_value, err) = p.communicate()
-    
-    stdout_value_cleanup = ''
-    for line in stdout_value:
-        stdout_value_cleanup += line.replace('  ', ' ')
-    stdout_value = stdout_value_cleanup.splitlines() 
-
-    ParseFlag = False
-    retval = {}
-    returncode = p.returncode
-
-    if returncode == 137:
-        
-        print "   ansible-playbook system call timed out"
-        # ansible-playbook system call timed out
-        for line in stdout_value: # p.stdout.readlines():
-            log.append (line)
-            
-            
-    elif 'ping' in lcm:
-
-        targetnode = envparameters['TargetNode'].split(' ')
-        str_json = None
-        for line in stdout_value: # p.stdout.readlines():
-            print line # line,
-            if "PLAY RECAP" in line:
-                ParseFlag = False
-            if ParseFlag and len(line.strip())>0:
-                str_json += line.strip()
-            if "TASK [debug]" in line:
-                ParseFlag = True
-                str_json = ''
-            log.append (line)
-
-        if str_json:
-            if '=>' in str_json:
-                out_json =eval(str_json.split('=>')[1].replace('true','True').replace('false','False'))
-
-                if 'ping.stdout_lines' in out_json:
-                    for node in targetnode:
-                        ip_address = node
-                        ok_flag = '0'
-                        changed_flag = '0'
-                        unreachable_flag = '0'
-                        failed_flag = '1'
-                        for rec in out_json['ping.stdout_lines']:
-                            if node in rec and "is alive" in rec:
-                                ok_flag = '1'
-                                changed_flag = '1'
-                                unreachable_flag = '0'
-                                failed_flag = '0'
-                        for rec in out_json['ping.stdout_lines']:
-                            if node in rec and "address not found" in rec:
-                                ok_flag = '0'
-                                changed_flag = '0'
-                                unreachable_flag = '1'
-                                failed_flag = '0'
-                        retval[ip_address]=[ok_flag, changed_flag, unreachable_flag,
-                                            failed_flag]
-    else:
-            
-        for line in stdout_value: # p.stdout.readlines():
-            print line # line,
-            if ParseFlag and len(line.strip())>0:
-                ip_address = line.split(':')[0].strip()
-                ok_flag = line.split(':')[1].strip().split('=')[1].split('changed')[0].strip()
-                changed_flag = line.split(':')[1].strip().split('=')[2].split('unreachable')[0].strip()
-                unreachable_flag = line.split(':')[1].strip().split('=')[3].split('failed')[0].strip()
-                failed_flag = line.split(':')[1].strip().split('=')[4].strip()
-                retval[ip_address]=[ok_flag, changed_flag, unreachable_flag, failed_flag]
-            if "PLAY RECAP" in line:
-                ParseFlag = True
-            log.append (line)
-        
-    # retval['p'] = p.wait()
-
-    print " =================ANSIBLE STDOUT END==============================================\n"
-
-    return retval, log, returncode
-
-if __name__ == '__main__':
-
-    from multiprocessing import Process, Value, Array, Manager
-    import time
-
-    nodelist = 'host'
-
-    playbook_file = 'ansible_sleep@0.00.yml'
-
-
-    d = Manager().dict()
-    
-    p = Process(nodelist=ansible_call, args=('ansible_module_config', playbook_file, nodelist,d, ))
-    p.start()
-
-    print "Process running"
-    print d
-    p.join()
-    print d