From 8a4677123f92e8745d014c80f2a2bc43fa97b671 Mon Sep 17 00:00:00 2001 From: Adam Kittel Date: Wed, 31 May 2023 16:07:09 -0500 Subject: [PATCH 1/2] modified: __main__.py modified: main.py modified: mnode-support-util modified: mnode_supportbundle.py modified: program_data.py --- __main__.py | 4 ++-- main.py | 4 ++-- mnode-support-util | Bin 37401 -> 37421 bytes mnode_supportbundle.py | 7 ++++++- program_data.py | 4 ++-- 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/__main__.py b/__main__.py index 1a068da..c7298e3 100644 --- a/__main__.py +++ b/__main__.py @@ -191,7 +191,7 @@ def set_auth_mvip(repo): # mnode support bundle elif args.action == 'supportbundle': logmsg.info("Start support bundle...") - healthcheck_run_all(repo) + #healthcheck_run_all(repo) SupportBundle(repo) #============================================================ @@ -341,4 +341,4 @@ def set_auth_mvip(repo): json_return = Package.list_packages(repo) if json_return: for package in json_return: - logmsg.info("\n{:<20}{}\n\t{}\n\t{}\n\t{}".format(package["name"],package["version"],package['CIFSUrl'],package['HTTPSUrl'],package['NFSUrl'])) \ No newline at end of file + logmsg.info("\n{:<20}{}\n\t{}\n\t{}\n\t{}".format(package["name"],package["version"],package['CIFSUrl'],package['HTTPSUrl'],package['NFSUrl'])) diff --git a/main.py b/main.py index 1a068da..c7298e3 100644 --- a/main.py +++ b/main.py @@ -191,7 +191,7 @@ def set_auth_mvip(repo): # mnode support bundle elif args.action == 'supportbundle': logmsg.info("Start support bundle...") - healthcheck_run_all(repo) + #healthcheck_run_all(repo) SupportBundle(repo) #============================================================ @@ -341,4 +341,4 @@ def set_auth_mvip(repo): json_return = Package.list_packages(repo) if json_return: for package in json_return: - logmsg.info("\n{:<20}{}\n\t{}\n\t{}\n\t{}".format(package["name"],package["version"],package['CIFSUrl'],package['HTTPSUrl'],package['NFSUrl'])) \ No newline at end of file + logmsg.info("\n{:<20}{}\n\t{}\n\t{}\n\t{}".format(package["name"],package["version"],package['CIFSUrl'],package['HTTPSUrl'],package['NFSUrl'])) diff --git a/mnode-support-util b/mnode-support-util index 52a0e439ecbdc80ee351be0b55064a015e2d0132..8f08934e6f636187d88c816751dcb348c93249c5 100644 GIT binary patch delta 11679 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 delta 11670 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 diff --git a/mnode_supportbundle.py b/mnode_supportbundle.py index 7257054..4e38476 100644 --- a/mnode_supportbundle.py +++ b/mnode_supportbundle.py @@ -46,6 +46,7 @@ def __init__(self, repo): except FileNotFoundError: logmsg.info("Could not open {}".format(filename)) + # ===================================================================== # mnode settings filename = ("{}support-mnode-settings.json".format(repo.SUPPORT_DIR)) @@ -127,6 +128,7 @@ def __init__(self, repo): # ===================================================================== # get clusters + ''' filename = ("{}support-get-clusters.json".format(repo.SUPPORT_DIR)) try: with open(filename, 'w') as outfile: @@ -201,6 +203,7 @@ def __init__(self, repo): outfile.write(text) except FileNotFoundError: logmsg.info("Could not open {}".format(filename)) + ''' # ===================================================================== # get docker ps @@ -315,6 +318,7 @@ def __init__(self, repo): # ===================================================================== #bmc_ports(repo): + ''' filename = ("{}support-portscan".format(repo.SUPPORT_DIR)) with open(filename, "a") as outfile: for bmc in repo.ASSETS[0]['hardware']: @@ -350,6 +354,7 @@ def __init__(self, repo): else: outfile.write("\nPort 443 scan failed for {}".format(bmc['ip'])) outfile.write("\nReturn code {}".format(str(response_139))) + ''' # ===================================================================== #local_files @@ -378,4 +383,4 @@ def __init__(self, repo): bundle.close() logmsg.info("Please send {} to NetApp support".format(tar_file)) except: - logmsg.info("Failed to create tar bundle.") \ No newline at end of file + logmsg.info("Failed to create tar bundle.") diff --git a/program_data.py b/program_data.py index 02bdc6c..2138fea 100644 --- a/program_data.py +++ b/program_data.py @@ -17,7 +17,7 @@ class ProgramData(): def __init__(self, args): - self.UTIL_VERSION = "3.0-SUST-1399" + self.UTIL_VERSION = "3.0-CSD-5601" #============================================================ # Very frequently used values self.ABOUT = [] @@ -232,4 +232,4 @@ def mip_send_post_return_status(repo, url, payload, creds): response_json = json.loads(response.text) return response_json except requests.exceptions.RequestException as exception: - MLog.log_exception(exception) \ No newline at end of file + MLog.log_exception(exception) From d247be0d289fd36036e1ebbec379af0ce603ac4e Mon Sep 17 00:00:00 2001 From: Adam Kittel Date: Wed, 31 May 2023 16:20:31 -0500 Subject: [PATCH 2/2] modified: __main__.py modified: main.py modified: mnode-support-util --- __main__.py | 4 ++++ main.py | 4 ++++ mnode-support-util | Bin 37421 -> 37519 bytes 3 files changed, 8 insertions(+) diff --git a/__main__.py b/__main__.py index c7298e3..a8ef0a7 100644 --- a/__main__.py +++ b/__main__.py @@ -1,6 +1,7 @@ import argparse import getpass import json +import os import textwrap import time from asset_tasks import AssetMgmt @@ -190,6 +191,9 @@ def set_auth_mvip(repo): #============================================================ # mnode support bundle elif args.action == 'supportbundle': + isExist = os.path.exists(repo.SUPPORT_DIR) + if not isExist: + os.makedirs(repo.SUPPORT_DIR) logmsg.info("Start support bundle...") #healthcheck_run_all(repo) SupportBundle(repo) diff --git a/main.py b/main.py index c7298e3..a8ef0a7 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,7 @@ import argparse import getpass import json +import os import textwrap import time from asset_tasks import AssetMgmt @@ -190,6 +191,9 @@ def set_auth_mvip(repo): #============================================================ # mnode support bundle elif args.action == 'supportbundle': + isExist = os.path.exists(repo.SUPPORT_DIR) + if not isExist: + os.makedirs(repo.SUPPORT_DIR) logmsg.info("Start support bundle...") #healthcheck_run_all(repo) SupportBundle(repo) diff --git a/mnode-support-util b/mnode-support-util index 8f08934e6f636187d88c816751dcb348c93249c5..2b70bd47f95b3d5c97a00c6a5d77eb3a58d59abf 100644 GIT binary patch delta 7729 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 YB8QD1iA+y1!wN;7q=@5_Cj5KzKXI+`bN~PV delta 7630 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