From df6bf0126e28ea20c09b8a6aab406b8a83017cc9 Mon Sep 17 00:00:00 2001 From: Matthew Stidham Date: Wed, 22 Dec 2021 12:19:38 -0800 Subject: [PATCH] auto-install-gui: Fix whitespace Signed-off-by: Matthew Stidham --- auto-install-gui.py | 141 +++++++++++++++++++++++--------------------- 1 file changed, 73 insertions(+), 68 deletions(-) diff --git a/auto-install-gui.py b/auto-install-gui.py index ca07cba2..1597c63c 100755 --- a/auto-install-gui.py +++ b/auto-install-gui.py @@ -11,25 +11,24 @@ import glob import sys import subprocess - -#===========ARGUMENT PARSING============== +# ===========ARGUMENT PARSING============== parser = argparse.ArgumentParser() parser.add_argument("--versionNumber", type=str, help="Specify version number to search for") args = parser.parse_args() if args.versionNumber != None: - ver = args.versionNumber + ver = args.versionNumber else: - parser.print_help() - parser.exit() + parser.print_help() + parser.exit() -#=============HTML PARSING================ +# =============HTML PARSING================ url = "http://jed-centos7/pld/" with urllib.request.urlopen(url) as response: - html = response.read() + html = response.read() webpage = html.decode('utf-8') -#print(webpage) +# print(webpage) searchPattern = '(LANforgeGUI_(\d+\.\d+\.\d+)_Linux64.tar.bz2)<\/a><\/td>(\d+\-\d+\-\d+\ \d+\:\d+)' searchResults = re.findall(searchPattern, webpage) @@ -37,83 +36,90 @@ searchResults = re.findall(searchPattern, webpage) webFiles = [] for file in searchResults: - if ver == file[1]: - webFiles.append({'filename':file[0], 'timestamp': datetime.datetime.strptime(file[2], "%Y-%m-%d %H:%M")}) + if ver == file[1]: + webFiles.append({'filename': file[0], 'timestamp': datetime.datetime.strptime(file[2], "%Y-%m-%d %H:%M")}) if len(webFiles) == 0: - print("Failed to find webfile with version number %s" % (ver)) - sys.exit(1) + print("Failed to find webfile with version number %s" % (ver)) + sys.exit(1) - -#=========CHECK DIR FOR FILES============= +# =========CHECK DIR FOR FILES============= filePath = "/home/lanforge/Downloads/" dir = glob.glob(filePath + "LANforgeGUI_%s*" % ver) dirFiles = [] for file in dir: - if ver in file: - fileTime = datetime.datetime.strptime(time.ctime(os.stat(file).st_ctime), "%a %b %d %H:%M:%S %Y") # Fri May 8 08:31:43 2020 - dirFiles.append({'filename':file[25:], 'timestamp':fileTime}) + if ver in file: + fileTime = datetime.datetime.strptime(time.ctime(os.stat(file).st_ctime), + "%a %b %d %H:%M:%S %Y") # Fri May 8 08:31:43 2020 + dirFiles.append({'filename': file[25:], 'timestamp': fileTime}) if len(dirFiles) == 0: - print("Unable to find file in {filePath} with version %s" % ver) - #sys.exit(1) + print("Unable to find file in {filePath} with version %s" % ver) -#============FIND NEWEST FILES============ + +# sys.exit(1) + + +# ============FIND NEWEST FILES============ def findNewestVersion(filesArray): - newest = filesArray[0] - if len(filesArray) > 0: - for file in filesArray: - if file['timestamp'] > newest['timestamp']: - newest = file + newest = filesArray[0] + if len(filesArray) > 0: + for file in filesArray: + if file['timestamp'] > newest['timestamp']: + newest = file + + return newest - return newest newestWebFile = findNewestVersion(webFiles) if len(dirFiles) != 0: - newestDirFile = findNewestVersion(dirFiles) + newestDirFile = findNewestVersion(dirFiles) else: - newestDirFile = {'filename':'placeholder', 'timestamp': datetime.datetime.strptime("0", "%H")} + newestDirFile = {'filename': 'placeholder', 'timestamp': datetime.datetime.strptime("0", "%H")} - -#=======COMPARE WEB AND DIR FILES========= +# =======COMPARE WEB AND DIR FILES========= if newestWebFile['timestamp'] > newestDirFile['timestamp']: - try: - if newestDirFile['filename'] != 'placeholder': - subprocess.call(["rm", "%s%s" % (filePath, newestDirFile['filename'])]) - print("No file found") - print("Downloading newest %s from %s" % (newestWebFile['filename'], url)) - else: - print("Found newer version of GUI") - print("Downloading %s from %s" % (newestWebFile['filename'], url)) -#=====ATTEMPT DOWNLOAD AND INSTALL========= - subprocess.call(["curl", "-o", "%s%s" % (filePath, newestWebFile['filename']), "%s%s" % (url, newestWebFile['filename'])]) - time.sleep(5) - except Exception as e: - print("%s Download failed. Please try again." % e) - sys.exit(1) - try: - print("Attempting to extract files") - subprocess.call(["tar", "-xf", "%s%s" % (filePath, newestWebFile['filename']), "-C", "/home/lanforge/"]) - except Exception as e: - print("%s\nExtraction failed. Please try again" % e) - sys.exit(1) + try: + if newestDirFile['filename'] != 'placeholder': + subprocess.call(["rm", "%s%s" % (filePath, newestDirFile['filename'])]) + print("No file found") + print("Downloading newest %s from %s" % (newestWebFile['filename'], url)) + else: + print("Found newer version of GUI") + print("Downloading %s from %s" % (newestWebFile['filename'], url)) + # =====ATTEMPT DOWNLOAD AND INSTALL========= + subprocess.call( + ["curl", "-o", "%s%s" % (filePath, newestWebFile['filename']), "%s%s" % (url, newestWebFile['filename'])]) + time.sleep(5) + except Exception as e: + print("%s Download failed. Please try again." % e) + sys.exit(1) + try: + print("Attempting to extract files") + subprocess.call(["tar", "-xf", "%s%s" % (filePath, newestWebFile['filename']), "-C", "/home/lanforge/"]) + except Exception as e: + print("%s\nExtraction failed. Please try again" % e) + sys.exit(1) - #time.sleep(90) - try: - if "/home/lanforge/.config/autostart/LANforge-auto.desktop" not in glob.glob("/home/lanforge/.config/autostart/*"): - print("Copying LANforge-auto.desktop to /home/lanforge/.config/autostart/") - subprocess.call(["cp", "/home/lanforge/%s/LANforge-auto.desktop" % (newestWebFile['filename'][:len(newestWebFile)-18]), "/home/lanforge/.config/autostart/"]) - except Exception as e: - print("%s\nCopy failed. Please try again" % e) - sys.exit(1) + # time.sleep(90) + try: + if "/home/lanforge/.config/autostart/LANforge-auto.desktop" not in glob.glob( + "/home/lanforge/.config/autostart/*"): + print("Copying LANforge-auto.desktop to /home/lanforge/.config/autostart/") + subprocess.call(["cp", "/home/lanforge/%s/LANforge-auto.desktop" % ( + newestWebFile['filename'][:len(newestWebFile) - 18]), "/home/lanforge/.config/autostart/"]) + except Exception as e: + print("%s\nCopy failed. Please try again" % e) + sys.exit(1) - try: - print("Attempting to install %s at /home/lanforge" % newestWebFile['filename']) - os.system("cd /home/lanforge/%s; sudo bash lfgui_install.bash" % (newestWebFile['filename'][:len(newestWebFile)-18])) - except Exception as e: - print("%s\nInstallation failed. Please Try again." % e) - sys.exit(1) -#=========ATTEMPT TO RESTART GUI========== + try: + print("Attempting to install %s at /home/lanforge" % newestWebFile['filename']) + os.system("cd /home/lanforge/%s; sudo bash lfgui_install.bash" % ( + newestWebFile['filename'][:len(newestWebFile) - 18])) + except Exception as e: + print("%s\nInstallation failed. Please Try again." % e) + sys.exit(1) +# =========ATTEMPT TO RESTART GUI========== # try: # print("Killing current GUI process") # os.system("if pgrep java; then pgrep java | xargs kill -9 ;fi") @@ -122,6 +128,5 @@ if newestWebFile['timestamp'] > newestDirFile['timestamp']: # sys.exit(1) else: - print("Current GUI version up to date") - sys.exit(0) - + print("Current GUI version up to date") + sys.exit(0)