diff options
Diffstat (limited to 'catalog-be/src/main/resources/scripts')
10 files changed, 237 insertions, 213 deletions
diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importHeatTypes.py b/catalog-be/src/main/resources/scripts/import/tosca/importHeatTypes.py index 74ecf71784..969c2f805f 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importHeatTypes.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importHeatTypes.py @@ -60,13 +60,13 @@ def importHeatTypes(scheme, beHost, bePort, adminUser, fileDir, updateversion): "extContrailCP", "portMirroringByPolicy", "forwardingPath", + "configuration", "VRFObject", "extVirtualMachineInterfaceCP", "VLANNetworkReceptor", "VRFEntry", "subInterfaceV2", "contrailV2VLANSubInterfaceV2", - "configuration", "fabricConfiguration" ] diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importNodeType.py b/catalog-be/src/main/resources/scripts/import/tosca/importNodeType.py index 24218b6a73..1418722dff 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importNodeType.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importNodeType.py @@ -56,7 +56,8 @@ def createUserNormativeType(scheme, beHost, bePort, adminUser, fileDir, ELEMENT_ c.setopt(c.WRITEFUNCTION, buffer.write) if scheme == 'https': - c.setopt(c.SSL_VERIFYPEER, 0) + c.setopt(pycurl.SSL_VERIFYPEER, 0) + c.setopt(pycurl.SSL_VERIFYHOST, 0) res = c.perform() diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeAll.py b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeAll.py index 19ffc1762f..e4f536ff85 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeAll.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeAll.py @@ -4,6 +4,7 @@ from StringIO import StringIO import json import copy import time +# from importNormativeElements import createNormativeElement from importNormativeElements import * from importNormativeTypes import importNormativeTypes from importHeatTypes import importHeatTypes diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeElements.py b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeElements.py index 3d5e9fd13b..47ed633b06 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeElements.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeElements.py @@ -17,11 +17,9 @@ from importCommon import * # python importUsers.py [-f <input file> | --ifile=<input file> ] # # # ################################################################################################################################################################################# -def import_element(scheme, be_host, be_port, admin_user, exit_on_success, file_dir, url_suffix, element_name, - element_form_name, +def import_element(scheme, be_host, be_port, admin_user, exit_on_success, file_dir, url_suffix, element_name, element_form_name, with_metadata=False): - result = createNormativeElement(scheme, be_host, be_port, admin_user, file_dir, url_suffix, element_name, - element_form_name, with_metadata) + result = createNormativeElement(scheme, be_host, be_port, admin_user, file_dir, url_suffix, element_name, element_form_name, with_metadata) print_frame_line() print_name_and_return_code(result[0], result[1]) print_frame_line() @@ -33,6 +31,7 @@ def import_element(scheme, be_host, be_port, admin_user, exit_on_success, file_d error_and_exit(0, None) + def createNormativeElement(scheme, be_host, be_port, admin_user, file_dir, url_suffix, element_name, element_form_name, with_metadata=False): try: @@ -41,37 +40,35 @@ def createNormativeElement(scheme, be_host, be_port, admin_user, file_dir, url_s c = pycurl.Curl() url = scheme + '://' + be_host + ':' + be_port + url_suffix - c.setopt(pycurl.URL, url) - c.setopt(pycurl.POST, 1) + c.setopt(c.URL, url) + c.setopt(c.POST, 1) admin_header = 'USER_ID: ' + admin_user c.setopt(pycurl.HTTPHEADER, [admin_header]) type_file_name = file_dir + "/" + element_name - multi_part_form_data = create_multipart_form_data(element_form_name, type_file_name, with_metadata, - element_name) + multi_part_form_data = create_multipart_form_data(element_form_name, type_file_name, with_metadata, element_name) c.setopt(pycurl.HTTPPOST, multi_part_form_data) - c.setopt(pycurl.WRITEFUNCTION, buffer.write) + c.setopt(c.WRITEFUNCTION, buffer.write) if scheme == 'https': - # security "man in middle" vulnerability c.setopt(pycurl.SSL_VERIFYPEER, 0) c.setopt(pycurl.SSL_VERIFYHOST, 0) c.perform() - http_res = c.getinfo(pycurl.RESPONSE_CODE) + http_res = c.getinfo(c.RESPONSE_CODE) if http_res is not None: debug("http response=", http_res) debug("response buffer", buffer.getvalue()) c.close() - return element_name, http_res, buffer.getvalue() + return (element_name, http_res, buffer.getvalue()) except Exception as inst: print("ERROR=" + str(inst)) - return element_name, None, None + return (element_name, None, None) def create_multipart_form_data(element_form_name, type_file_name, with_metadata, element_name): diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeRelationships.py b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeRelationships.py index a86e520558..7adcf333c7 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeRelationships.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeRelationships.py @@ -5,7 +5,7 @@ import json import copy from importNormativeElements import createNormativeElement from importCommon import * -import importCommon +import importCommon ################################################################################################################################################################################################# # # @@ -22,62 +22,62 @@ import importCommon # # ################################################################################################################################################################################################# - + def usage(): - print sys.argv[0], '[optional -s <scheme> | --scheme=<scheme>, default http] [-i <be host> | --ip=<be host>] [-p <be port> | --port=<be port> ] [-u <user userId> | --user=<user userId> ]' + print sys.argv[0], '[optional -s <scheme> | --scheme=<scheme>, default http] [-i <be host> | --ip=<be host>] [-p <be port> | --port=<be port> ] [-u <user userId> | --user=<user userId> ]' def importNormativeRelationships(scheme, beHost, bePort, adminUser, exitOnSuccess, fileDir): - result = createNormativeElement(scheme, beHost, bePort, adminUser, fileDir, "/sdc2/rest/v1/catalog/uploadType/relationship", "relationshipTypes", "relationshipTypeZip") - - print_frame_line() - print_name_and_return_code(result[0], result[1]) - print_frame_line() + result = createNormativeElement(scheme, beHost, bePort, adminUser, fileDir, "/sdc2/rest/v1/catalog/uploadType/relationship", "relationshipTypes", "relationshipTypeZip") + + print_frame_line() + print_name_and_return_code(result[0], result[1]) + print_frame_line() - if ( result[1] == None or result[1] not in [200, 201, 409] ): - importCommon.error_and_exit(1, None) - else: - if (exitOnSuccess == True): - importCommon.error_and_exit(0, None) + if ( result[1] == None or result[1] not in [200, 201, 409] ): + importCommon.error_and_exit(1, None) + else: + if (exitOnSuccess == True): + importCommon.error_and_exit(0, None) def main(argv): - print 'Number of arguments:', len(sys.argv), 'arguments.' - - beHost = 'localhost' - bePort = '8080' - adminUser = 'jh0003' - scheme = 'http' - - try: - opts, args = getopt.getopt(argv,"i:p:u:h:s:",["ip=","port=","user=","scheme="]) - except getopt.GetoptError: - usage() - importCommon.error_and_exit(2, 'Invalid input') - - for opt, arg in opts: - #print opt, arg - if opt == '-h': - usage() - sys.exit(3) - elif opt in ("-i", "--ip"): - beHost = arg - elif opt in ("-p", "--port"): - bePort = arg - elif opt in ("-u", "--user"): - adminUser = arg - elif opt in ("-s", "--scheme"): - scheme = arg - - print 'scheme =',scheme,', be host =',beHost,', be port =', bePort,', user =', adminUser - - if ( beHost == None ): - usage() - sys.exit(3) - - importNormativeRelationships(scheme, beHost, bePort, adminUser, True, "../../../import/tosca/relationship-types/") + print 'Number of arguments:', len(sys.argv), 'arguments.' + + beHost = 'localhost' + bePort = '8080' + adminUser = 'jh0003' + scheme = 'http' + + try: + opts, args = getopt.getopt(argv,"i:p:u:h:s:",["ip=","port=","user=","scheme="]) + except getopt.GetoptError: + usage() + importCommon.error_and_exit(2, 'Invalid input') + + for opt, arg in opts: + #print opt, arg + if opt == '-h': + usage() + sys.exit(3) + elif opt in ("-i", "--ip"): + beHost = arg + elif opt in ("-p", "--port"): + bePort = arg + elif opt in ("-u", "--user"): + adminUser = arg + elif opt in ("-s", "--scheme"): + scheme = arg + + print 'scheme =',scheme,', be host =',beHost,', be port =', bePort,', user =', adminUser + + if ( beHost == None ): + usage() + sys.exit(3) + + importNormativeRelationships(scheme, beHost, bePort, adminUser, True, "../../../import/tosca/relationship-types/") if __name__ == "__main__": - main(sys.argv[1:]) + main(sys.argv[1:]) diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeTypes.py b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeTypes.py index b74cead75e..6eea374716 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importNormativeTypes.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importNormativeTypes.py @@ -19,158 +19,154 @@ import importCommon ######################################################################################################################################################################################### def createNormativeType(scheme, beHost, bePort, adminUser, fileDir, ELEMENT_NAME, updateversion): - try: - log("in create normative type ", ELEMENT_NAME) - debug("userId", adminUser) - debug("fileDir", fileDir) - - buffer = StringIO() - c = pycurl.Curl() - - url = scheme + '://' + beHost + ':' + bePort + '/sdc2/rest/v1/catalog/upload/multipart' - if updateversion != None: - url += '?createNewVersion=' + updateversion - c.setopt(pycurl.URL, url) - c.setopt(pycurl.POST, 1) - - adminHeader = 'USER_ID: ' + adminUser - # c.setopt(pycurl.HTTPHEADER, ['Content-Type: application/json', 'Accept: application/json', adminHeader]) - c.setopt(pycurl.HTTPHEADER, [adminHeader]) - - yml_path = fileDir + ELEMENT_NAME + "/" + ELEMENT_NAME + ".yml" - path = fileDir + ELEMENT_NAME + "/" + ELEMENT_NAME + ".zip" - - zf = zipfile.ZipFile(path, "w") - zf.write(yml_path, ELEMENT_NAME + '.yml') - zf.close() - - debug(path) - CURRENT_JSON_FILE = fileDir + ELEMENT_NAME + "/" + ELEMENT_NAME + ".json" - # sed -i 's/"userId": ".*",/"userId": "'${USER_ID}'",/' ${CURRENT_JSON_FILE} - - jsonFile = open(CURRENT_JSON_FILE) - - debug("before load json") - json_data = json.load(jsonFile, strict=False) - debug(json_data) - - jsonAsStr = json.dumps(json_data) - - send = [('resourceMetadata', jsonAsStr), ('resourceZip', (pycurl.FORM_FILE, path))] - debug(send) - c.setopt(pycurl.HTTPPOST, send) - - # data = json.dumps(user) - # c.setopt(c.POSTFIELDS, data) - - if scheme == 'https': - # security "man in middle" vulnerability - c.setopt(pycurl.SSL_VERIFYPEER, 0) - c.setopt(pycurl.SSL_VERIFYHOST, 0) - - # c.setopt(c.WRITEFUNCTION, lambda x: None) - c.setopt(pycurl.WRITEFUNCTION, buffer.write) - # print("before perform") - c.perform() - - # print("Before get response code") - httpRes = c.getinfo(pycurl.RESPONSE_CODE) - if (httpRes != None): - debug("http response=", httpRes) - # print('Status: ' + str(responseCode)) - debug(buffer.getvalue()) - c.close() - - return ELEMENT_NAME, httpRes, buffer.getvalue() - - except Exception as inst: - print("ERROR=" + str(inst)) - return ELEMENT_NAME, None, None + + try: + log("in create normative type ", ELEMENT_NAME) + debug("userId", adminUser) + debug("fileDir", fileDir) + + buffer = StringIO() + c = pycurl.Curl() + + url = scheme + '://' + beHost + ':' + bePort + '/sdc2/rest/v1/catalog/upload/multipart' + if updateversion != None: + url += '?createNewVersion=' + updateversion + c.setopt(c.URL, url) + c.setopt(c.POST, 1) + + adminHeader = 'USER_ID: ' + adminUser + #c.setopt(pycurl.HTTPHEADER, ['Content-Type: application/json', 'Accept: application/json', adminHeader]) + c.setopt(pycurl.HTTPHEADER, [adminHeader]) + + yml_path = fileDir + ELEMENT_NAME + "/" + ELEMENT_NAME + ".yml" + path = fileDir + ELEMENT_NAME + "/" + ELEMENT_NAME + ".zip" + + zf = zipfile.ZipFile(path, "w") + zf.write(yml_path, ELEMENT_NAME + '.yml') + zf.close() + + debug(path) + CURRENT_JSON_FILE=fileDir + ELEMENT_NAME + "/" + ELEMENT_NAME + ".json" + #sed -i 's/"userId": ".*",/"userId": "'${USER_ID}'",/' ${CURRENT_JSON_FILE} + + jsonFile = open(CURRENT_JSON_FILE) + + debug("before load json") + json_data = json.load(jsonFile, strict=False) + debug(json_data) + + jsonAsStr = json.dumps(json_data) + + send = [('resourceMetadata', jsonAsStr), ('resourceZip', (pycurl.FORM_FILE, path))] + debug(send) + c.setopt(pycurl.HTTPPOST, send) + + #data = json.dumps(user) + #c.setopt(c.POSTFIELDS, data) + + if scheme == 'https': + c.setopt(pycurl.SSL_VERIFYPEER, 0) + c.setopt(pycurl.SSL_VERIFYHOST, 0) + + #c.setopt(c.WRITEFUNCTION, lambda x: None) + c.setopt(c.WRITEFUNCTION, buffer.write) + #print("before perform") + res = c.perform() + + #print("Before get response code") + httpRes = c.getinfo(c.RESPONSE_CODE) + if (httpRes != None): + debug("http response=", httpRes) + #print('Status: ' + str(responseCode)) + debug(buffer.getvalue()) + c.close() + + return (ELEMENT_NAME, httpRes, buffer.getvalue()) + + except Exception as inst: + print("ERROR=" + str(inst)) + return (ELEMENT_NAME, None, None) def usage(): - print sys.argv[0], \ - '[optional -s <scheme> | --scheme=<scheme>, default http] [-i <be host> | ' \ - '--ip=<be host>] [-p <be port> | --port=<be port> ] [-u <user userId> | --user=<user userId> ] ' \ - '[-v <true|false> | --updateversion=<true|false>]' + print sys.argv[0], '[optional -s <scheme> | --scheme=<scheme>, default http] [-i <be host> | --ip=<be host>] [-p <be port> | --port=<be port> ] [-u <user userId> | --user=<user userId> ] [-v <true|false> | --updateversion=<true|false>]' def importNormativeTypes(scheme, beHost, bePort, adminUser, fileDir, updateversion): - normativeTypes = ["root", "compute", "softwareComponent", "webServer", "webApplication", "DBMS", "database", - "objectStorage", "blockStorage", "containerRuntime", "containerApplication", "loadBalancer", - "port", "network"] - # normativeTypes = [ "root" ] - responseCodes = [200, 201] - - if (updateversion == 'false'): - responseCodes = [200, 201, 409] - - results = [] - for normativeType in normativeTypes: - result = createNormativeType(scheme, beHost, bePort, adminUser, fileDir, normativeType, updateversion) - results.append(result) - if (result[1] == None or result[1] not in responseCodes): - print "Failed creating normative type " + normativeType + ". " + str(result[1]) - return results + + normativeTypes = [ "root", "compute", "softwareComponent", "webServer", "webApplication", "DBMS", "database", "objectStorage", "blockStorage", "containerRuntime", "containerApplication", "loadBalancer", "port", "network"] + #normativeTypes = [ "root" ] + responseCodes = [200, 201] + + if(updateversion == 'false'): + responseCodes = [200, 201, 409] + + results = [] + for normativeType in normativeTypes: + result = createNormativeType(scheme, beHost, bePort, adminUser, fileDir, normativeType, updateversion) + results.append(result) + if ( result[1] == None or result[1] not in responseCodes ): + print "Failed creating normative type " + normativeType + ". " + str(result[1]) + return results def main(argv): - print 'Number of arguments:', len(sys.argv), 'arguments.' - - beHost = 'localhost' - bePort = '8080' - adminUser = 'jh0003' - updateversion = 'true' - scheme = 'http' - - try: - opts, args = getopt.getopt(argv, "i:p:u:v:h:s:", ["ip=", "port=", "user=", "updateversion=", "scheme="]) - except getopt.GetoptError: - usage() - error_and_exit(2, 'Invalid input') - - for opt, arg in opts: - # print opt, arg - if opt == '-h': - usage() - sys.exit(3) - elif opt in ("-i", "--ip"): - beHost = arg - elif opt in ("-p", "--port"): - bePort = arg - elif opt in ("-u", "--user"): - adminUser = arg - elif opt in ("-s", "--scheme"): - scheme = arg - elif opt in ("-v", "--updateversion"): - if (arg.lower() == "false" or arg.lower() == "no"): - updateversion = 'false' - - print 'scheme =', scheme, ', be host =', beHost, ', be port =', bePort, ', user =', adminUser, ', updateversion =', updateversion - - if (beHost == None): - usage() - sys.exit(3) - - results = importNormativeTypes(scheme, beHost, bePort, adminUser, "../../../import/tosca/normative-types/", - updateversion) - - print "-----------------------------" - for result in results: - print "{0:20} | {1:6}".format(result[0], result[1]) - print "-----------------------------" - - responseCodes = [200, 201] - - if (updateversion == 'false'): - responseCodes = [200, 201, 409] - - failedNormatives = filter(lambda x: x[1] == None or x[1] not in responseCodes, results) - if (len(failedNormatives) > 0): - error_and_exit(1, None) - else: - error_and_exit(0, None) + print 'Number of arguments:', len(sys.argv), 'arguments.' + + beHost = 'localhost' + bePort = '8080' + adminUser = 'jh0003' + updateversion = 'true' + scheme = 'http' + + try: + opts, args = getopt.getopt(argv,"i:p:u:v:h:s:",["ip=","port=","user=","updateversion=","scheme="]) + except getopt.GetoptError: + usage() + error_and_exit(2, 'Invalid input') + + for opt, arg in opts: + #print opt, arg + if opt == '-h': + usage() + sys.exit(3) + elif opt in ("-i", "--ip"): + beHost = arg + elif opt in ("-p", "--port"): + bePort = arg + elif opt in ("-u", "--user"): + adminUser = arg + elif opt in ("-s", "--scheme"): + scheme = arg + elif opt in ("-v", "--updateversion"): + if (arg.lower() == "false" or arg.lower() == "no"): + updateversion = 'false' + + print 'scheme =',scheme,', be host =',beHost,', be port =', bePort,', user =', adminUser, ', updateversion =', updateversion + + if ( beHost == None ): + usage() + sys.exit(3) + + results = importNormativeTypes(scheme, beHost, bePort, adminUser, "../../../import/tosca/normative-types/", updateversion) + + print "-----------------------------" + for result in results: + print "{0:20} | {1:6}".format(result[0], result[1]) + print "-----------------------------" + + responseCodes = [200, 201] + + if(updateversion == 'false'): + responseCodes = [200, 201, 409] + + failedNormatives = filter(lambda x: x[1] == None or x[1] not in responseCodes, results) + if (len(failedNormatives) > 0): + error_and_exit(1, None) + else: + error_and_exit(0, None) if __name__ == "__main__": - main(sys.argv[1:]) + main(sys.argv[1:]) + diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importONAPNormativeAll.py b/catalog-be/src/main/resources/scripts/import/tosca/importONAPNormativeAll.py index 3e9103a95f..c573a448a4 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importONAPNormativeAll.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importONAPNormativeAll.py @@ -66,8 +66,8 @@ def main(argv): opts = [] try: - opts, args = getopt.getopt(argv, "i:p:u:d:v:h:s", - ["scheme=", "ip=", "port=", "user=", "debug=", "updateversion="]) + opts, args = getopt.getopt(argv, "i:p:u:d:v:h:s:", + ["ip=", "port=", "user=", "debug=", "updateversion=", "scheme="]) except getopt.GetoptError: usage() error_and_exit(2, 'Invalid input') diff --git a/catalog-be/src/main/resources/scripts/import/tosca/importUsersFromYaml.py b/catalog-be/src/main/resources/scripts/import/tosca/importUsersFromYaml.py index 23e854bcb8..09fe726cec 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/importUsersFromYaml.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/importUsersFromYaml.py @@ -60,7 +60,8 @@ def getUser(scheme, beHost, bePort, user): c.setopt(c.URL, url) if scheme == 'https': - c.setopt(c.SSL_VERIFYPEER, 0) + c.setopt(pycurl.SSL_VERIFYPEER, 0) + c.setopt(pycurl.SSL_VERIFYHOST, 0) #adminHeader = 'USER_ID: ' + adminUser c.setopt(pycurl.HTTPHEADER, ['Content-Type: application/json', 'Accept: application/json']) @@ -106,7 +107,8 @@ def createUser(scheme, beHost, bePort, user, adminUser): c.setopt(c.POSTFIELDS, data) if scheme == 'https': - c.setopt(c.SSL_VERIFYPEER, 0) + c.setopt(pycurl.SSL_VERIFYPEER, 0) + c.setopt(pycurl.SSL_VERIFYHOST, 0) c.setopt(c.WRITEFUNCTION, lambda x: None) #print("before perform") diff --git a/catalog-be/src/main/resources/scripts/import/tosca/typesToUpgrade.json b/catalog-be/src/main/resources/scripts/import/tosca/typesToUpgrade.json index 1ef72856a4..ffda46e042 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/typesToUpgrade.json +++ b/catalog-be/src/main/resources/scripts/import/tosca/typesToUpgrade.json @@ -1,7 +1,35 @@ { "heat": [ - "Generic_PNF" + "AbstractSubstitute", + "cinderVolume", + "contrailAbstractSubstitute", + "contrailCompute", + "contrailNetworkRules", + "contrailPort", + "contrailV2NetworkRules", + "contrailV2VirtualMachineInterface", + "contrailVirtualNetwork", + "contrailV2VLANSubInterface", + "contrailV2VLANSubInterfaceV2", + "contrailVirtualNetwork", + "extContrailCP", + "extCp", + "extNeutronCP", + "extVirtualMachineInterfaceCP", + "extVl", + "forwardingPath", + "Generic_PNF", + "Generic_Service", + "Generic_VF", + "Generic_VFC", + "globalCompute", + "globalPort", + "neutronNet", + "neutronPort", + "novaServer", + "securityRules" ], "normative": [ + "loadBalancer" ] -}
\ No newline at end of file +} diff --git a/catalog-be/src/main/resources/scripts/import/tosca/upgradeONAPNormative.py b/catalog-be/src/main/resources/scripts/import/tosca/upgradeONAPNormative.py index b4447c26d1..222d22d1f1 100644 --- a/catalog-be/src/main/resources/scripts/import/tosca/upgradeONAPNormative.py +++ b/catalog-be/src/main/resources/scripts/import/tosca/upgradeONAPNormative.py @@ -59,7 +59,6 @@ def main(argv): updateOnapVersion = 'false' importCommon.debugFlag = False scheme = 'http' - opts = [] try: opts, args = getopt.getopt(argv, "i:p:u:d:v:h:s", |