Hello community,

here is the log from the commit of package sca-server-report for 
openSUSE:Factory checked in at 2020-12-15 14:51:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sca-server-report (Old)
 and      /work/SRC/openSUSE:Factory/.sca-server-report.new.2328 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "sca-server-report"

Tue Dec 15 14:51:33 2020 rev:4 rq:855956 version:1.0.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/sca-server-report/sca-server-report.changes      
2018-01-23 13:53:22.276543801 +0100
+++ 
/work/SRC/openSUSE:Factory/.sca-server-report.new.2328/sca-server-report.changes
    2020-12-15 14:51:34.406752244 +0100
@@ -1,0 +2,34 @@
+Thu Nov 12 15:29:10 UTC 2020 - [email protected]
+
+- Additional to version 1.0.1
+  + Updated the man pages with -r
+  + -k is retained for compatibility, but keeping the archive is default
+  + Fixed service pack version when GA
+  + Print actual hostname instead of localhost with -s
+  + scatool trys to run README file (bsc#1178528)
+
+-------------------------------------------------------------------
+Fri Nov  6 17:14:48 UTC 2020 - [email protected]
+
+- Additions to version 1.0.1
+  + Updated man pages for scatool(8) and scatool.conf(5)
+  + Removed CONSOLE_MODE from scatool.conf
+  + should support archive or server argument and not require -a (bsc#1178229)
+  + scatool copies remote scc_* supportconfigs (bsc#1178151)
+  + Exits gracefully when attempting to process damaged files (bsc#1178152)
+  + scatool correctly cleans up and saves archives (bsc#1178094)
+
+-------------------------------------------------------------------
+Sat Oct 24 17:19:11 UTC 2020 - [email protected]
+
+- Additions to version 1.0.1
+  + Arg with / treated as files, not remote servers (bsc#1178099)
+  + Optimized tar ball extraction (bsc#1178093)
+  + Added /etc/os-release support (bsc#1178092)
+  + scatool correctly process -s for local server (bsc#1178088)
+  + Fixed progress bar timing (bsc#1178086)
+  + Fixed scatool fails with no module named readline (bsc#1177249)
+  + If run against path '.' use cwd name (issue#1)
+  + Added support for xz compression (bsc#1155181)
+
+-------------------------------------------------------------------

Old:
----
  sca-server-report-1.0.tar.gz

New:
----
  sca-server-report-1.0.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ sca-server-report.spec ++++++
--- /var/tmp/diff_new_pack.MdyZ2d/_old  2020-12-15 14:51:34.906752797 +0100
+++ /var/tmp/diff_new_pack.MdyZ2d/_new  2020-12-15 14:51:34.910752802 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package sca-server-report
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -12,7 +12,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -22,12 +22,12 @@
 %define sca_python %{libbase}/python
 
 Name:           sca-server-report
-Version:        1.0
+Version:        1.0.1
 Release:        0
 Summary:        Supportconfig Analysis Server Report
-License:        GPL-2.0
+License:        GPL-2.0-only
 Group:          System/Monitoring
-Url:            https://github.com/g23guy/sca-server-report
+URL:            https://github.com/g23guy/sca-server-report
 Source:         %{name}-%{version}.tar.gz
 Requires:       python
 Requires:       sca-patterns-base

++++++ sca-server-report-1.0.tar.gz -> sca-server-report-1.0.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sca-server-report-1.0/bin/scatool 
new/sca-server-report-1.0.1/bin/scatool
--- old/sca-server-report-1.0/bin/scatool       2018-01-02 17:13:41.157429600 
+0100
+++ new/sca-server-report-1.0.1/bin/scatool     2020-10-26 16:49:17.663157021 
+0100
@@ -1,10 +1,10 @@
 #!/bin/bash
 ##############################################################################
 # scatool - Supportconfig Analysis (SCA) Tool Wrapper
-# Copyright (c) 2014-2017 SUSE LLC
+# Copyright (c) 2014-2020 SUSE LLC
 #
 # Description:  Wrapper for /usr/lib/sca/python/scatool.py
-# Modified:     2017 Dec 18
+# Modified:     2020 Oct 26
 
 ##############################################################################
 #
@@ -22,7 +22,7 @@
 #
 #  Authors/Contributors:
 #     David Hamner ([email protected])
-#     Jason Record ([email protected])
+#     Jason Record ([email protected])
 #
 ##############################################################################
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sca-server-report-1.0/bin/scatool.py 
new/sca-server-report-1.0.1/bin/scatool.py
--- old/sca-server-report-1.0/bin/scatool.py    2018-01-22 22:57:43.670668302 
+0100
+++ new/sca-server-report-1.0.1/bin/scatool.py  2020-12-03 18:17:35.112076017 
+0100
@@ -1,12 +1,12 @@
 ##############################################################################
 # scatool.py - Supportconfig Analysis (SCA) Tool
-# Copyright (c) 2014-2018 SUSE LLC
+# Copyright (c) 2014-2020 SUSE LLC
 #
 # Description:  Runs and analyzes local or remote supportconfigs
-# Modified:     2018 Jan 22
+# Modified:     2020 Nov 06
 
 ##############################################################################
-#
+#command
 #  This program is free software; you can redistribute it and/or modify
 #  it under the terms of the GNU General Public License as published by
 #  the Free Software Foundation; version 2 of the License.
@@ -24,16 +24,16 @@
 #     Jason Record ([email protected])
 #
 ##############################################################################
-SVER = '1.0.8-21'
+SVER = '1.0.9-6'
 
 
##########################################################################################
 # Python Imports
 
##########################################################################################
-import readline
 import subprocess
 import os
 import sys
 import glob
+import uuid
 import tarfile
 import shutil
 import datetime
@@ -57,17 +57,18 @@
        print
 
 def usage():
-       print "Usage:"
+       print "Usage: scatool [OPTIONS] [archive_or_server]"
+       print
+       print "OPTIONS"
        print " -h       Displays this screen"
        print " -s       Analyze the local server"
-       print " -a path  Analyze the supportconfig directory or archive"
-       print "          The path may also be an IP address of a server to 
analyze"
+#      print " -a path  Analyze the supportconfig directory or archive"
+#      print "          The path may also be an IP address of a server to 
analyze"
        print " -o path  HTML report output directory (OUTPUT_PATH)"
-       print " -e list  Send HTML report to email address(es) provided. Comma 
separated list."
-       print " -k       Keep archive files (ARCHIVE_MODE)"
+       print " -e list  Send HTML report to email address(es) provided. Comma 
separated list"
+       print " -r       Remove archive files (REMOVE_ARCHIVE) leaving only the 
report html file"
        print " -p       Print a pattern summary"
        print " -v       Verbose output (LOGLEVEL)"
-       print " -c       Enter SCA Tool console (CONSOLE_MODE)"
        print
 
 title()
@@ -94,14 +95,9 @@
        SCA_PATTERN_PATH = "/usr/lib/sca/patterns"
 
 try:
-       ARCHIVE_MODE = int(os.environ["ARCHIVE_MODE"])
-except Exception:
-       ARCHIVE_MODE = 0
-
-try:
-       CONSOLE_MODE = int(os.environ["CONSOLE_MODE"])
+       REMOVE_ARCHIVE = int(os.environ["REMOVE_ARCHIVE"])
 except Exception:
-       CONSOLE_MODE = 0
+       REMOVE_ARCHIVE = 0
 
 try:
        REMOTE_SC_PATH = str(os.environ["REMOTE_SC_PATH"])
@@ -141,7 +137,7 @@
 global outputPath
 global htmlOutputFile
 global emailAddrList
-global KeepArchive
+global removeArchive
 global serverName
 global verboseMode
 global analysisDateTime
@@ -160,10 +156,10 @@
        'Succ': 0
 }
 
-if( ARCHIVE_MODE > 0 ):
-       KeepArchive = True
+if( REMOVE_ARCHIVE > 0 ):
+       removeArchive = True
 else:
-       KeepArchive = False
+       removeArchive = False
 
 if( LOGLEVEL == LOGLEVEL_VERBOSE ):
        verboseMode = True
@@ -185,13 +181,6 @@
 
 #order dependent list of pattern output elements
 RESULT_ELEMENT = ["META_CLASS", "META_CATEGORY", "META_COMPONENT", 
"PATTERN_ID", "PRIMARY_LINK", "OVERALL", "OVERALL_INFO", "META_LINK_"]
-#commands MUST have a function with the same name.
-COMMANDS = ["analyze", "exit", "view", "help"]
-#help pages: 
-#<command name>: <what it does>\n example: <command example>\n <other info>
-COMMANDS_HELP = ["analyze: analyze a supportconfig\nexample: analyze 
/path/to/supportconfig\nIf no supportconfig is given this will run a 
supportconfig then analyze the newly created supportconfig",
-                "view: view report files\nexample: view 
/path/to/report.html\nIf no path given it will try to open newly created 
report."]
-command = ""
 
 
##########################################################################################
 # HTML REPORT FUNCTIONS
@@ -213,6 +202,7 @@
        OES = ""
        INFO = ""
        VER = ""
+       osArch = ""
        OSVersion = ""
        patchLevel = ""
        kernelVersion = ""
@@ -241,7 +231,8 @@
        #read basic-environment line by line to pull out data.
        IN_DATE = False
        IN_UNAME = False
-       IN_RELEASE = False
+       IN_OS_RELEASE = False
+       IN_SUSE_RELEASE = False
        IN_OES_RELEASE = False
        IN_FILR = False
        for line in BASIC_ENV:
@@ -257,8 +248,10 @@
                        IN_DATE = True
                elif "/bin/uname -a" in line:
                        IN_UNAME = True
+               elif "/etc/os-release" in line:
+                       IN_OS_RELEASE = True
                elif "/etc/SuSE-release" in line:
-                       IN_RELEASE = True
+                       IN_SUSE_RELEASE = True
                elif "/etc/novell-release" in line:
                        IN_OES_RELEASE = True
                elif "/etc/Novell-VA-release" in line:
@@ -306,18 +299,33 @@
                                if( len(tmp) >= 3 ):
                                        kernelVersion = tmp[2].strip()
                                        serverName = tmp[1].strip()
+                                       osArch = tmp[-2].strip()
                                        IN_UNAME = False
-               elif( IN_RELEASE ):
+               elif( IN_OS_RELEASE ):
                        if "#==[" in line:
-                               IN_RELEASE = False
+                               IN_OS_RELEASE = False
+                               PRODUCTS[DISTRO][1] = str(OSVersion) + " (" + 
osArch + ")"
+                               PRODUCTS[DISTRO][3] = str(patchLevel)
+                       else:
+                               if line.lower().startswith("pretty_name"):
+                                       OSVersion = 
line.split('=')[-1].replace('"', '').strip()
+                               elif line.lower().startswith("version_id"):
+                                       VERSION_ID_INFO = line.replace('"', 
"").strip().split('=')[1].split('.')
+                                       if( len(VERSION_ID_INFO) > 1 ):
+                                               patchLevel = 
str(VERSION_ID_INFO[1])
+                                       else:
+                                               patchLevel = "0"
+               elif( IN_SUSE_RELEASE ):
+                       if "#==[" in line:
+                               IN_SUSE_RELEASE = False
                                PRODUCTS[DISTRO][1] = str(OS)
                                PRODUCTS[DISTRO][3] = str(patchLevel)
                        else:
                                if( len(OS) > 0 ):
                                        if line.lower().startswith("version"):
-                                               OSVersion = 
line.split('=')[-1].strip()
+                                               OSVersion = 
line.split('=')[-1].replace('"', '').strip()
                                        elif 
line.lower().startswith("patchlevel"):
-                                               patchLevel = 
line.split('=')[-1].strip()
+                                               patchLevel = 
line.split('=')[-1].replace('"', '').strip()
                                else:
                                        OS = line.strip()
                elif( IN_OES_RELEASE):
@@ -883,6 +891,10 @@
                FILES_FOUND = len(files)
                if( FILES_FOUND > 1 ):
                        DIRECTORY[root] = FILES_FOUND
+                       for onefile in files:
+                               if( onefile == "README" ):
+                                       TOTAL_COUNT -= 1
+                                       break
                elif( FILES_FOUND > 0 ):
                        if( files[0] == "README" ):
                                # Readme files don't count
@@ -1111,9 +1123,10 @@
        progressCount = 0
        patternCount = 0
        patternStats['Total'] = len(validPatterns)
-       patternInterval = int(patternStats['Total'] / progressBarWidth)
-       if( patternInterval < progressBarWidth ):
+       patternInterval = ( int(patternStats['Total']) / int(progressBarWidth) )
+       if( patternStats['Total'] < progressBarWidth ):
                patternInterval = 1
+       patternSkipped = False
 
        print "Total Patterns to Apply:      " + str(patternStats['Total'])
        if verboseMode:
@@ -1122,22 +1135,32 @@
                sys.stdout.write("Analyzing Supportconfig:      [%s]" % (" " * 
progressBarWidth))
                sys.stdout.flush()
                sys.stdout.write("\b" * (progressBarWidth+1)) # return to start 
of line, after '['
+#              sys.stdout.write("\n")
 
        for patternFile in validPatterns:
                patternCount += 1
                try:
-                       p = subprocess.Popen([patternFile, '-p', 
extractedSupportconfig], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-                       out, error = p.communicate()
-                       patternValidated = parseOutput(out, error, patternFile)
+                       if patternFile.endswith("README"):
+                               patternSkipped = True
+                       else:
+                               p = subprocess.Popen([patternFile, '-p', 
extractedSupportconfig], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+                               out, error = p.communicate()
+                               patternValidated = parseOutput(out, error, 
patternFile)
 
                        #call parseOutput to see if output was expected
                        if verboseMode:
-                               if patternValidated:
-                                       print " Done:  " + str(patternCount) + 
" of " + str(patternStats['Total']) + ": " + patternFile
+                               if patternSkipped:
+                                       print " Skip:  " + str(patternCount) + 
" of " + str(patternStats['Total']) + ": " + patternFile
+                                       patternSkipped = False
                                else:
-                                       print " ERROR: " + str(patternCount) + 
" of " + str(patternStats['Total']) + ": " + patternErrorList[-1]
+                                       if patternValidated:
+                                               print " Done:  " + 
str(patternCount) + " of " + str(patternStats['Total']) + ": " + patternFile
+                                       else:
+                                               print " ERROR: " + 
str(patternCount) + " of " + str(patternStats['Total']) + ": " + 
patternErrorList[-1]
                        else:
                                #advance the progress bar if it's not full yet
+#                              sys.stdout.write("Count = " + str(patternCount) 
+ ", Total = " + str(patternStats['Total']) + ", Progress = " + 
str(progressCount) + ", Width = " + str(progressBarWidth) + ", Interval = " + 
str(patternInterval) + "\n")
+#                              sys.stdout.flush()
                                if( progressCount < progressBarWidth ):
                                        #advance the progress bar in equal 
intervals
                                        if( patternCount % patternInterval == 0 
):
@@ -1194,8 +1217,28 @@
                return False
 
 
##########################################################################################
-# Console and Core fuctions
+# extractFile(archive, options)
+##########################################################################################
+# extractFile extracts the archive with tar
+# Input: archive - path to the supportconfig decompressed tarball
+#        options - tar extraction args
+def extractFile(archive, options):
+       print "Extracting File:              " + archive
+       process = subprocess.Popen(["/usr/bin/tar", options, archive], 
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+       stdout, stderr = process.communicate()
+       rc = process.returncode
+       if( rc > 0 ):
+               print >> sys.stderr, "  Error: Cannot extract tar file"
+               print >> sys.stderr, stderr
+               print >> sys.stderr
+               sys.exit(7)
+       else:
+               return True
+
 
##########################################################################################
+# Core fuctions
+##########################################################################################
+
 
##########################################################################################
 # analyze
 
##########################################################################################
@@ -1204,25 +1247,23 @@
        global outputPath
        global htmlOutputFile
        global emailAddrList
-       global KeepArchive
+       global removeArchive
        global verboseMode
        global analysisDateTime
        #reset stuff
-       dateStamp = analysisDateTime.strftime("%d%m%y")
-       timeStamp = str(analysisDateTime.hour).zfill(2) + 
str(analysisDateTime.minute).zfill(2)
+       dateStamp = analysisDateTime.strftime("%y%m%d")
+       timeStamp = str(analysisDateTime.hour).zfill(2) + 
str(analysisDateTime.minute).zfill(2) + str(analysisDateTime.second).zfill(2)
        remoteSupportconfigName = ""
        remoteSupportconfigPath = ""
        extractedSupportconfig = ""
        supportconfigPath = ""
        extractedPath = ""
-       deleteArchive = False
        isIP = False
        host = "None"
        isRemoteServer = False
-       cleanUp = True
+       removeSupportconfigDir = True
        alloutput = ""
        lineNum = 0
-       supportconfigPath = ""
        progressBarWidth = 48
        remoteProgressBarSetup = False
        progressCount = 0
@@ -1232,22 +1273,28 @@
 
        #if we want to run and analyze a supportconfig
        if len(arg) == 0:
-               print "Running Supportconfig On:     localhost"
-               if( os.path.isfile("/etc/supportconfig.conf")):
-                       scOptions = "-b"
-               else:
-                       scOptions = "-bo SAM"
+               localHostname = str(os.uname()[1])
+               print "Running Supportconfig On:     " + localHostname
                #run supportconfig
+
+               localSupportconfigName = localHostname + "_" + str(dateStamp) + 
"_" + str(timeStamp)
+               localSupportconfigPath = "/var/log/"
+               supportconfigPath = localSupportconfigPath + "scc_" + 
localSupportconfigName
+
+#              print "localSupportconfigName = " + localSupportconfigName
+#              print "localSupportconfigPath = " + localSupportconfigPath
+#              print "supportconfigPath      = " + supportconfigPath
+
                try:
-                       p = subprocess.Popen(['/sbin/supportconfig', 
scOptions], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-                       #remove archive
-                       deleteArchive = True
+                       p = subprocess.Popen(['/sbin/supportconfig', "-bB" + 
localSupportconfigName, "-t " + localSupportconfigPath], 
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
                #if we cannot run supportconfig
                except Exception:
-                       print >> sys.stderr, "Error: Cannot run supportconfig. 
Please see 
http://www.novell.com/communities/node/2332/supportconfig-linux#install";
+                       print >> sys.stderr, "Error: Cannot run supportconfig."
                        print >> sys.stderr
                        return
                condition = True
+               if not removeArchive:
+                       removeSupportconfigDir = False
 
                if verboseMode:
                        print "Gathering Supportconfig:      In Progress"
@@ -1283,11 +1330,6 @@
                #--WHILE--
                        condition = not bool(out == "" and p.poll() != None)
                        
-               #find tar ball
-               for line in alloutput.split("\n"):
-                       if "Log file tar ball:" in line:
-                               supportconfigPath = line.split(":")[1].strip()
-
                if not verboseMode:
                        while( progressCount < progressBarWidth ):
                                progressCount += 1
@@ -1297,19 +1339,31 @@
 
        #if a path was given. analyze given file/folder
        elif len(arg) == 1:
-               #validate the file/folder/ip given by the end user
+               #validate the file/directory/ip given by the end user
                givenSupportconfigPath = arg[0]
 
+               if( givenSupportconfigPath == "." ):
+                       givenSupportconfigPath = os.getcwd()
+               elif( re.search("/", givenSupportconfigPath) ):
+                       if not os.path.exists(givenSupportconfigPath):
+                               print "Supportconfig File:           %s" % 
givenSupportconfigPath
+                               print >> sys.stderr, "  Error: File/Directory 
not found"
+                               print >> sys.stderr
+                               usage()
+                               return
+
                if os.path.isfile(givenSupportconfigPath):
                        print "Supportconfig File:           %s" % 
givenSupportconfigPath
                elif os.path.isdir(givenSupportconfigPath):
                        print "Supportconfig Directory:      %s" % 
givenSupportconfigPath
+                       if not removeArchive:
+                               removeSupportconfigDir = False
                else:
                        print "Supportconfig Remote Server:  %s" % 
givenSupportconfigPath
-                       ping_server = subprocess.Popen(["/bin/ping", "-c1", 
givenSupportconfigPath], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-                       streamdata = ping_server.communicate()[0]
+                       ping_server = subprocess.Popen(["/bin/ping", "-c1 -w1", 
givenSupportconfigPath], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+                       stdout, stderr = ping_server.communicate()
                        if ping_server.returncode != 0:
-                               print >> sys.stderr, "  Error: Cannot 
communicate with server"
+                               print >> sys.stderr, "  Error: Cannot ping 
remote server"
                                print >> sys.stderr
                                usage()
                                return
@@ -1336,7 +1390,7 @@
                        else:
                                #we have an IP
                                print "Running Supportconfig On:     " + 
givenSupportconfigPath
-                               sys.stdout.write("  Waiting... ")
+                               sys.stdout.write("  Waiting          ")
                                sys.stdout.flush()
                                remoteSupportconfigName = 
str(givenSupportconfigPath) + "_" + str(dateStamp) + "_" + str(timeStamp)
                                remoteSupportconfigPath = REMOTE_SC_PATH
@@ -1347,11 +1401,24 @@
                                                outputPath = 
remoteSupportconfigPath
                                        #run ssh root@host "supportconfig -R 
REMOTE_SC_PATH -B <timeStamp>; echo -n \~; cat <path to new supportconfig
                                        #aka: run supportconfig then send the 
output back.
-                                       p = subprocess.Popen(['ssh', "root@" + 
host, 'supportconfig -bR ' + remoteSupportconfigPath + ' -B ' + 
str(remoteSupportconfigName) + ";echo -n \\~; cat " + remoteSupportconfigPath + 
"/nts_" + str(remoteSupportconfigName) + ".tbz" + "; rm " + 
remoteSupportconfigPath + "/nts_" + str(remoteSupportconfigName) + ".tbz*"], 
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+                                       supportconfigPrefix = "/scc_"
+                                       supportconfigCompression = ".txz"
+                                       localSupportconfigFullPath = outputPath 
+ supportconfigPrefix + remoteSupportconfigName + supportconfigCompression
+                                       remoteSupportconfigFullPath = 
remoteSupportconfigPath + supportconfigPrefix + remoteSupportconfigName + 
supportconfigCompression
+
+#                                      print
+#                                      print "host                         = " 
+ host
+#                                      print "remoteSupportconfigName      = " 
+ remoteSupportconfigName
+#                                      print "remoteSupportconfigPath      = " 
+ remoteSupportconfigPath
+#                                      print "supportconfigPrefix          = " 
+ supportconfigPrefix
+#                                      print "supportconfigCompression     = " 
+ supportconfigCompression
+#                                      print "localSupportconfigFullPath   = " 
+ localSupportconfigFullPath
+#                                      print "remoteSupportconfigFullPath  = " 
+ remoteSupportconfigFullPath
+#                                      print
+
+                                       p = subprocess.Popen(['ssh', "root@" + 
host, '/sbin/supportconfig -bB ' + remoteSupportconfigName + ' -R ' + 
remoteSupportconfigPath + ";echo -n \\~; cat " + remoteSupportconfigFullPath + 
"; rm " + remoteSupportconfigFullPath + "*"], stdout=subprocess.PIPE, 
stderr=subprocess.PIPE)
                                        #create a local verson of the 
supportconfig output
-                                       localSupportconfig = open(outputPath + 
"/nts_" + str(remoteSupportconfigName) + ".tbz", 'w')
-                                       #remove local archive
-                                       deleteArchive = True
+                                       localSupportconfig = 
open(localSupportconfigFullPath, 'w')
                                        condition = True
                                        endOfSupportconfig = False
 
@@ -1406,7 +1473,7 @@
                                                        sys.stdout.write("=")
                                                        sys.stdout.flush()
 
-                                       supportconfigPath = outputPath + 
"/nts_" + str(remoteSupportconfigName) + ".tbz"
+                                       supportconfigPath = 
localSupportconfigFullPath
                                        fileInfo = os.stat(supportconfigPath)
                                        if( fileInfo.st_size > 0 ):
                                                print
@@ -1415,9 +1482,9 @@
                                                print >> sys.stderr
                                                print >> sys.stderr, "Error: 
Failed to copy supportconfig from remote server"
                                                print >> sys.stderr, "       
Verify you can ssh as root into the remote server"
-                                               print >> sys.stderr, "       
and manually run supportconfig."
+                                               print >> sys.stderr, "       
and manually copy the supportconfig to this server."
                                                print >> sys.stderr
-                                               os.remove(supportconfigPath)
+                                               #os.remove(supportconfigPath)
                                                return
                                except Exception:
                                        print >> sys.stderr
@@ -1425,9 +1492,6 @@
                                        return
                else:
                        supportconfigPath = givenSupportconfigPath
-       else:
-               #too many arguments
-               print >> sys.stderr, "Please run: \"help analyze\""
 
        OS_PATH = os.environ["PWD"]
        if( len(OS_PATH) > 0 ):
@@ -1438,45 +1502,71 @@
                supportconfigPath = re.sub("^./", OS_PATH, supportconfigPath)
        elif not supportconfigPath.startswith("/"):
                supportconfigPath = OS_PATH + supportconfigPath
+       base = os.path.splitext(supportconfigPath)[0]
+       if base.endswith('.tar'):
+               extractedSupportconfig = os.path.splitext(base)[0]
+       else:
+               extractedSupportconfig = base
 
-       #if supportconfig not extract. Extract supportconfig
+#      print
+#      print " + Base =                   " + base
+#      print " + extractedSupportconfig = " + extractedSupportconfig
+#      print
+       htmlOutputFile = extractedSupportconfig + "_report.html"
+
+       #if given a supportconfig archive
        if os.path.isfile(supportconfigPath):
+#              print "Evaluating File:              " + supportconfigPath
                #extract file
-               #find the extracting path
-               tmp = supportconfigPath.split('/')
-               del tmp[-1]
-               extractedPath = '/'.join(tmp) 
                #set TarFile and find the path of the soon to be extracted 
supportconfig
-               try:
-                       fileInfo = os.stat(supportconfigPath)
-                       if( fileInfo.st_size > 0 ):
-                               print "Extracting Supportconfig:     " + 
supportconfigPath
-                               TarFile = tarfile.open(supportconfigPath, "r:*")
-                               BaseElements = TarFile.getnames()[0].split("/")
-                               if( len(BaseElements) > 1 ):
-                                       extractedSupportconfig = extractedPath 
+ "/" + BaseElements[-2] + "/"
-                                       if( len(outputPath) > 0 ):
-                                               htmlOutputFile = outputPath + 
"/" + BaseElements[-2] + "_report.html"
-                                       else:
-                                               htmlOutputFile = extractedPath 
+ "/" + BaseElements[-2] + "_report.html"
-                                       TarFile.extractall(path=extractedPath, 
members=None)
-                                       print "Supportconfig Directory:      " 
+ extractedSupportconfig 
+               fileInfo = os.stat(supportconfigPath)
+               if( fileInfo.st_size > 0 ):
+                       process = subprocess.Popen(["/usr/bin/file", "--brief", 
"--mime-type", supportconfigPath], stdout=subprocess.PIPE, 
stderr=subprocess.PIPE)
+                       stdout, stderr = process.communicate()
+#                      print "Detected File Type:           " + stdout
+                       if re.search("/x-xz", stdout):
+                               if supportconfigPath.endswith('.txz'):
+                                       extractFile(supportconfigPath, "-Jxf")
+                               elif supportconfigPath.endswith('.tar.xz'):
+                                       extractFile(supportconfigPath, "-Jxf")
+                               else:
+                                       print >> sys.stderr, "Error: Unknown xz 
extension"
+                                       print >> sys.stderr
+                                       return
+                       elif re.search("/x-bzip2", stdout):
+                               if supportconfigPath.endswith('.tbz'):
+                                       extractFile(supportconfigPath, "-jxf")
+                               elif supportconfigPath.endswith('.tar.bz'):
+                                       extractFile(supportconfigPath, "-jxf")
+                               elif supportconfigPath.endswith('.tbz2'):
+                                       extractFile(supportconfigPath, "-jxf")
+                               elif supportconfigPath.endswith('.tar.bz2'):
+                                       extractFile(supportconfigPath, "-jxf")
+                               else:
+                                       print >> sys.stderr, "Error: Unknown 
bzip2 extension"
+                                       print >> sys.stderr
+                                       return
+                       elif re.search("/x-gzip", stdout):
+                               if supportconfigPath.endswith('.tgz'):
+                                       extractFile(supportconfigPath, "-zxf")
+                               elif supportconfigPath.endswith('.tar.gz'):
+                                       extractFile(supportconfigPath, "-zxf")
                                else:
-                                       print >> sys.stderr, "Error:     
Invalid tarball content file structure paths"
-                                       print >> sys.stderr, "Expecting: 
['nts_supportconfig_name', 'some_filename.txt']"
-                                       print >> sys.stderr, "Found:     " + 
str(BaseElements)
+                                       print >> sys.stderr, "Error: Unknown 
gzip extension"
                                        print >> sys.stderr
                                        return
+                       elif re.search("/x-tar", stdout):
+                               extractFile(supportconfigPath, "-xf")
                        else:
-                               print >> sys.stderr, "Error: Zero byte file: " 
+ supportconfigPath
+                               print >> sys.stderr, "  Warning: Unknown 
supportconfig tar file format"
                                print >> sys.stderr
                                return
-               except tarfile.ReadError:
-                       #cannot open the tar file
-                       print >> sys.stderr, "Error: Invalid supportconfig 
archive"
+               else:
+                       print >> sys.stderr, "  Error: Zero byte file: " + 
supportconfigPath
                        print >> sys.stderr
                        return
-       #if given an extracted supportconfig
+
+       #if given an extracted supportconfig directory
        elif os.path.isdir(supportconfigPath):
                extractedSupportconfig = supportconfigPath
                if( len(outputPath) > 0 ):
@@ -1488,23 +1578,29 @@
                        tmp = htmlOutputFile.split("/")
                        del tmp[-1]
                        htmlOutputFile = "/".join(tmp) + "/" + 
extractedSupportconfig.strip("/").split("/")[-1] + "_report.html"
-               #we don't want to delete something we did not create.
-               cleanUp = False
+
+       extractedSupportconfig = extractedSupportconfig + "/"
+
+       print "Processing Directory:         " + extractedSupportconfig
+
+       if not os.path.isdir(extractedSupportconfig):
+               #not a supportconfig directory or mismatched name
+               print >> sys.stderr, "  Error: Extracted directory does not 
match supportconfig filename"
+               print >> sys.stderr
+               return
 
        #check for required supportconfig files...
-       testFile = "/basic-environment.txt"
+       testFile = "basic-environment.txt"
        if not os.path.isfile(extractedSupportconfig + testFile):
                #not a supportconfig. quit out
-               print >> sys.stderr, "Error:   Invalid supportconfig archive"
-               print >> sys.stderr, "Missing: " + supportconfigPath + testFile
+               print >> sys.stderr, "  Error: Invalid supportconfig archive - 
missing " + testFile
                print >> sys.stderr
                return
 
-       testFile = "/rpm.txt"
+       testFile = "rpm.txt"
        if not os.path.isfile(extractedSupportconfig + testFile):
                #not a supportconfig. quit out
-               print >> sys.stderr, "Error:   Invalid supportconfig archive"
-               print >> sys.stderr, "Missing: " + supportconfigPath + testFile
+               print >> sys.stderr, "  Error: Invalid supportconfig archive - 
missing " + testFile
                print >> sys.stderr
                return
        
@@ -1514,135 +1610,35 @@
        getHtml(htmlOutputFile, extractedSupportconfig, 
supportconfigPath.split("/")[-1])
        print ("SCA Report File:              %s" % htmlOutputFile)
 
-       #if command was run via console run view
-       if command != "exit":
-               print
-               print "Run \"view\" or open " + htmlOutputFile + " to see 
results"
-               view()
-
        emailSCAReport(supportconfigPath)
 
        #clean up
-       if cleanUp:
+#      print " + supportconfigPath = " + supportconfigPath
+#      print "removeSupportconfigDir = " + str(removeSupportconfigDir)
+#      print "REMOVE_ARCHIVE =         " + str(REMOVE_ARCHIVE)
+#      print "removeArchive =          " + str(removeArchive)
+       if removeSupportconfigDir:
                shutil.rmtree(extractedSupportconfig)
-       if deleteArchive and not KeepArchive:
-               os.remove(supportconfigPath)
+       if removeArchive:
+               if os.path.isfile(supportconfigPath):
+                       os.remove(supportconfigPath)
                if os.path.isfile(supportconfigPath + ".md5"):
                        os.remove(supportconfigPath + ".md5")
        print
                        
 
##########################################################################################
-# help
-##########################################################################################
-def help(*arg):
-       #help run without any command name given. print available commands (if 
a help page is available for a command print first line of help page)
-       if len(arg) == 0:
-               printed = False
-               print "Available Commands:\n"
-               for i in range(0, len(COMMANDS)):
-                       printed = False
-                       for e in COMMANDS_HELP:
-                               if e.startswith(COMMANDS[i]):
-                                       print e.split("\n")[0]
-                                       printed = True
-                                       break
-                       if not printed:
-                               print COMMANDS[i]
-               print "\nRun \"help <command name>\" for more help\n"
-               
-       #help was run with a command given
-       if len(arg) == 1:
-               #if valid command was given
-               if arg[0] in COMMANDS:
-                       #find the help page
-                       for i in COMMANDS_HELP:
-                               if i.split(":")[0] == arg[0]:
-                                       #print i (without the command name)
-                                       print "\n" + i[len(arg[0])+2:] + "\n"
-                                       return
-                       print >> sys.stderr, "Error: No help page for command 
\"" + arg[0] + "\""
-               else:
-                       print >> sys.stderr, "Error: " + arg[0] + " is not a 
command"
-
-##########################################################################################
-# view
-##########################################################################################
-#take a look at the html
-#once analyze is run you can use "view" to look at the data
-#use: "view" or "view <path to html>"
-def view(*arg):
-       global htmlOutputFile
-       #if no path given. try to view the global html output file.
-       if len(arg) == 0:
-               try:
-                       
-                       #check path and see if output file is set
-                       if htmlOutputFile == "":
-                               print >> sys.stderr, "Error: Cannot open output 
file. Have you run analyze yet?"
-                               return
-                       if os.path.isfile(htmlOutputFile):
-                               #check that this is html
-                               if htmlOutputFile.endswith(".htm") or 
htmlOutputFile.endswith(".html"):
-                                       os.system("w3m " + htmlOutputFile)
-                               else:
-                                       print >> sys.stderr, htmlOutputFile + " 
is not a html file"
-                       else:
-                               print >> sys.stderr, htmlOutputFile + " is not 
a file."
-               except Exception:
-                       print >> sys.stderr, "Error: Cannot open output file. 
Have you run analyze yet?"
-                       
-       #A path was given
-       elif len(arg) == 1:
-               try:
-                       #check the path
-                       if os.path.isfile(arg[0]):
-                               #check that this is html
-                               if arg[0].endswith(".htm") or 
arg[0].endswith(".html"):
-                                       os.system("w3m " + arg[0])
-                               else:
-                                       print >> sys.stderr, arg[0] + " is not 
a html file"
-                       else:
-                               print >> sys.stderr, arg[0] + " is not a file."
-               except Exception:
-                       pass
-               
-       #....More then two arguments given. Nice :)
-       else:
-               print >> sys.stderr, "Please run \"help view\""
-
-##########################################################################################
-# tabSystem
-##########################################################################################
-def tabSystem(text, size):
-       commandBuffer = readline.get_line_buffer()
-       compleateCommands = []
-       for i in COMMANDS:
-               #auto complete to command name
-               if i == commandBuffer.split(" ")[0]:
-                       #if the command has an argument auto complete to path 
names (unless the command is help)
-                       if len(commandBuffer.split(" ")) > 0 and 
commandBuffer.split(" ")[0] != "help":
-                               if 
os.path.isdir((glob.glob(commandBuffer.split(" ")[1]+'*'))[size]):
-                                       return (glob.glob(commandBuffer.split(" 
")[1]+'*'))[size] + "/"
-                               return (glob.glob(commandBuffer.split(" 
")[1]+'*'))[size]
-               if i.startswith(text):
-                       compleateCommands.append(i)
-       if size < len(compleateCommands):
-                       return compleateCommands[size]
-       else:
-                       return None
-
-##########################################################################################
 # main
 
##########################################################################################
 #read in arguments
 analyzeServer = False
+analyzeLocalServer = False
 analyzeFile = ""
-#Do not enter console unless given a -c
 
 # Process command line arguments
 if( len(sys.argv[1:]) > 0 ):
        try:
-               opts, args = getopt.getopt(sys.argv[1:], "ha:so:kcvpe:")
+               opts, args = getopt.getopt(sys.argv[1:], "ha:so:rkcvpe:")
+#              print "opts = " + str(len(opts)) + ", args = " + str(len(args)) 
+ ":" + str(args) + ", sys.argv = " + str(len(sys.argv)) + ", last = " + 
str(sys.argv[-1])
        except getopt.GetoptError as err:
                # print help information and exit:
                print "Error: " + str(err) # will print something like "option 
-b not recognized"
@@ -1650,10 +1646,10 @@
                usage()
                sys.exit(2)
 
-       autoExit = True
-       analyzeServer = False
-       analyzeFile = ""
+#      print
+#      print "Options"
        for startUpOption, startUpOptionValue in opts:
+#              print "opts = " + str(len(opts)) + ", args = " + str(len(args)) 
+ ", sys.argv = " + str(len(sys.argv)) + ", startUpOption = " + startUpOption + 
", startUpOptionValue = " + startUpOptionValue
                if startUpOption == "-h":
                        usage()
                        sys.exit()
@@ -1661,9 +1657,10 @@
                        patternLibraryList()
                        sys.exit()
                elif startUpOption in ("-k"):
-                       KeepArchive = True
-               elif startUpOption in ("-c"):
-                       autoExit = False
+                       # This is the default behavior, but -k remains for 
compatibility.
+                       removeArchive = False
+               elif startUpOption in ("-r"):
+                       removeArchive = True
                elif startUpOption in ("-e"):
                        emailAddrList = startUpOptionValue
                elif startUpOption in ("-s"):
@@ -1671,23 +1668,24 @@
                elif startUpOption in ("-v"):
                        verboseMode = True
                elif startUpOption in ("-a"):
-                       analyzeServer = True
                        analyzeFile = startUpOptionValue
+                       analyzeServer = True
                elif startUpOption in ("-o"):
                        outputPath = startUpOptionValue
                else:
                        assert False, "Invalid option"
-elif( CONSOLE_MODE > 0 ):
-       autoExit = False
 else:
        usage()
        sys.exit()
 
-if( len(opts) == 0 and len(args) > 0 ):
+# an archive was given, but the -a takes priority
+if( len(args) > 0 ):
        analyzeServer = True
-       analyzeFile = args[0]
-elif not analyzeServer and autoExit:
-       print "Error: No server to analyze, use -s or -a."
+       if( analyzeFile == "" ):
+               analyzeFile = args[0]
+
+if not analyzeServer:
+       print "Error: No server to analyze, use -s or specify a supportconfig 
to analyze or a server to connect."
        print
        usage()
        sys.exit()
@@ -1706,33 +1704,8 @@
                usage()
                sys.exit(2)
 
-#auto exit.. or not:
-#if autoExit and analyzeServer:
-if autoExit:
-       command = "exit"
 if analyzeServer == True and analyzeFile != "":
        analyze(analyzeFile)
 elif analyzeServer == True and analyzeFile == "":
        analyze()
 
-#get user input:
-readline.set_completer_delims(' \t\n;')
-readline.parse_and_bind("tab: complete")
-#tell readline to use tab complete stuff
-readline.set_completer(tabSystem)
-#main command line input loop
-while command != "exit":
-       #get command (this will use the auto-complete I created.)
-       command = raw_input("^^~ ")
-       #run the command: <argument1>(<argument2>): example "analyze 
/home/support/nts_123456.tbz" will call "analyze(/home/support/nts_123456.tbz)"
-       if len(command.split(" ")) > 1:
-               if command.split(" ")[0] in COMMANDS:
-                       eval(command.split(" ")[0] + "(\"" + command.split(" 
")[1] + "\")")
-               else:
-                       print >> sys.stderr, command.split(" ")[0] + " command 
not found, please run \"help\""
-       else:
-               if command in COMMANDS:
-                       eval(command + "()")
-               else:
-                       print >> sys.stderr, command + " command not found, 
please run \"help\""
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sca-server-report-1.0/config/scatool.conf 
new/sca-server-report-1.0.1/config/scatool.conf
--- old/sca-server-report-1.0/config/scatool.conf       2017-07-07 
18:14:19.345755780 +0200
+++ new/sca-server-report-1.0.1/config/scatool.conf     2020-11-06 
16:44:28.403422503 +0100
@@ -1,8 +1,7 @@
 # scatool configuration file
 # Refer to scatool.conf(5) for details
 #
-ARCHIVE_MODE=0
-CONSOLE_MODE=0
+REMOVE_ARCHIVE=0
 
 OUTPUT_PATH=""
 OUTPUT_EMAIL_LIST=""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sca-server-report-1.0/man/scatool.8 
new/sca-server-report-1.0.1/man/scatool.8
--- old/sca-server-report-1.0/man/scatool.8     2017-07-07 18:14:19.365755760 
+0200
+++ new/sca-server-report-1.0.1/man/scatool.8   2020-11-12 16:28:00.023307806 
+0100
@@ -1,8 +1,8 @@
-.TH SCATOOL 8 "19 Apr 2017" "sca-server-report" "Supportconfig Analysis Manual"
+.TH SCATOOL 8 "2020 Nov 12" "sca-server-report" "Supportconfig Analysis Manual"
 .SH NAME
 scatool - Supportconfig Analysis (SCA) Tool
 .SH SYNOPSIS
-scatool [OPTIONS]
+scatool [OPTIONS] [archive_or_server]
 .SH DESCRIPTION
 The \fBscatool\fR is used to analyze the local server using supportconfig and 
the Supportconfig Analysis patterns.
 .SH OPTIONS
@@ -11,10 +11,7 @@
 Displays the help screen.
 .TP
 \fB\-s\fR
-Run supportconfig on the local server and analyze it.
-.TP
-\fB\-a\fR \fIpath\fR
-Analyze the tarred compressed tar ball specified with the -a paramenter. The 
path can be the path to a compressed supportconfig tar ball, a supportconfig 
extracted directory, or the IP address/hostname of a remote server to analyze. 
If an IP address is given, supportconfig will be run on the remote server. The 
supportconfig will be copied from the remote server to the local server for 
analysis.
+Run supportconfig on the local server and analyze it. The archive_or_server is 
not required when using -s because the local hostname is assumed.
 .TP
 \fB\-o\fR \fIpath\fR
 The HTML report file will be written to this directory. If -o is not 
specified, the output file will be in the same location as the supportconfig 
file or directory.
@@ -22,32 +19,14 @@
 \fB\-e\fR \fIlist\fR
 Send the HTML report to the email address(es) provided. Comma separated list.
 .TP
-\fB\-k\fR
-Keep the supportconfig tar ball. Normally the supportconfig tar ball is 
deleted after its analysis; this options prevents its deletion.
-.TP
 \fB\-p\fR
 Prints a pattern summary of installed patterns. The summary includes the 
pattern directory and the number of patterns it contains.
 .TP
+\fB\-r\fR
+Remove the supportconfig tar ball or directory after analysis. The default 
behavior is to keep it. 
+.TP
 \fB\-v\fR
 Run in verbose mode.
-.TP
-\fB\-c\fR
-Start scatool's console mode.
-.PD
-.SH CONSOLE OPERATIONS
-Running scatool without any options or with invalid options will load the 
console. You can press the <tab> key to see a list of commands. The console 
also supports tab completion when selecting commands to run. The following 
commands are available:
-.TP
-\fBhelp\fR
-Shows the list of commands and their usage. Use the help followed by the 
command to get detailed help about that specific command. 
-.TP
-\fBanalyze\fR [\fI/path/to/supportconfig/archive\fR]
-Without any options, scatool will run a supportconfig on the server, analyze 
it using the available SCA patterns, and display the results as an HTML report. 
If you specify a supportconfig archive, scatool will decompress and analyze it 
before displaying the results.
-.TP
-\fBview\fR [\fI/path/to/report.html\fR]
-Opens the w3m text browser to view HTML reports. If no path given, it will try 
to open the most current report.
-.TP
-\fBexit\fR
-Exits the console
 .PD
 .SH FILES
 .I /etc/sca/scatool.conf
@@ -61,24 +40,21 @@
 \fBscatool -s\fR
 Runs supportconfig on the local host and analyzes its output. It saves the 
HTML report file to the same location at the supportconfig with the same name, 
but ending in .html.
 .TP
-\fBscatool -a /var/log/nts_localhost_131107_1315.tbz\fR
-Analyzes the supportconfig archive file specified. The path can be a tarred 
compressed supportconfig archive or a suportconfig extracted directory, either 
will work. The HTML report file is saved in the save location as the 
supportconfig archive or directory.
+\fBscatool /var/log/scc_localhost_131107_1315.txz\fR
+Analyzes the supportconfig archive file specified. The path can be a tarred 
compressed supportconfig archive or a supportconfig extracted directory, either 
will work. The HTML report file is saved in the save location as the 
supportconfig archive or directory.
 .TP
-\fBscatool /var/log/nts_localhost_131107_1315\fR
-Analyzes the supportconfig archive extracted directory. If no other startup 
options are needed, you do not need the -a to analyze, just specify the 
supportconfig tarball, supportconfig directory, or server to analyze. The -a is 
required if other startup options are needed.
+\fBscatool /var/log/scc_localhost_131107_1315\fR
+Analyzes the supportconfig archive extracted directory.
 .TP
-\fBscatool -sk -o /opt/sca/reports/\fR
-Runs supportconfig on the local host. It saves the HTML report file in the 
output path specified instead of the default path of the supportconfig tarball. 
Keeps the supportconfig tar ball for future reference. The -k is the same as 
ARCHIVE_MODE=1 in /etc/sca/scatool.conf.
+\fBscatool -sr -o /opt/sca/reports/\fR
+Runs supportconfig on the local host. It saves the HTML report file in the 
output path specified instead of the default path of the supportconfig tarball. 
Once the analysis is complete, delete the supportconfig archive file and 
directory. The -r is the same as REMOVE_ARCHIVE=1 in /etc/sca/scatool.conf.
 .TP
-\fBscatool -a sles_server.company.com\fR
+\fBscatool sles_server.company.com\fR
 Establishes an ssh connection to sles_server.company.com to run a 
supportconfig on the server. The supportconfig is then copied back to the local 
host to be analyzed. The HTML report file is saved to the default /var/log 
directory.
-.TP
-\fBscatool -c\fR
-Start the scatool console (see CONSOLE OPERATIONS above).
 .PD
 .SH AUTHOR
 .RS
-Jason Record <[email protected]>
+Jason Record <[email protected]>
 .RE
 .RS
 David Hamner <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sca-server-report-1.0/man/scatool.conf.5 
new/sca-server-report-1.0.1/man/scatool.conf.5
--- old/sca-server-report-1.0/man/scatool.conf.5        2017-07-07 
18:14:19.349755776 +0200
+++ new/sca-server-report-1.0.1/man/scatool.conf.5      2020-11-06 
18:12:52.559827711 +0100
@@ -1,30 +1,21 @@
-.TH SCATOOL.CONF 5 "04 Jun 2014" "sca-server-report" "Supportconfig Analysis 
Manual"
+.TH SCATOOL.CONF 5 "2020 Nov 06" "sca-server-report" "Supportconfig Analysis 
Manual"
 .SH NAME
 scatool.conf - Supportconfig Analysis Tool Configuration File
 .SH DESCRIPTION
 The \fBscatool.conf\fR file has default values for \fBscatool\fR.
 .SH GLOBAL VARIABLES
 .TP
-ARCHIVE_MODE
-Once the \fBscatool\fR processes the supportconfig archive, it usually deletes 
it.
+REMOVE_ARCHIVE
+Once the \fBscatool\fR processes the supportconfig archive, delete the 
archive, its .md5 file and extracted directory leaving only the html report 
file. REMOVE_ARCHIVE is disabled by default leaving the original archive in 
place.
 .RS
-Valid options: 0 = Disable archive mode, 1 = Enable archive mode
-.RE
-.RS
-Default: 0
-.RE
-.TP
-CONSOLE_MODE
-Start \fBscatool\fR in console mode.
-.RS
-Valid options: 0 = Disable console mode, 1 = Enable console mode
+Valid options: 0 = Disable remove archive mode, 1 = Enable remove archive mode
 .RE
 .RS
 Default: 0
 .RE
 .TP
 OUTPUT_PATH
-The directory where HTML report and supportconfig archive files are saved. If 
ARCHIVE_MODE is enabled, supportconfig archives are saved here as well. If 
defined, all HTML report and supportconfig files will be saved in this 
directory, regardless of the supportconfig archive or directory location. If 
left undefined or empty, HTML report files are saved in the same directory as 
the supportconfig archive or directory.
+The directory where HTML report and supportconfig archive files are saved.
 .RS
 Default: (Empty)
 .RE
@@ -80,7 +71,7 @@
 Default: LOGLEVEL_NORMAL
 .RE
 .SH AUTHOR
-Jason Record <[email protected]>
+Jason Record <[email protected]>
 .SH COPYRIGHT
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sca-server-report-1.0/spec/sca-server-report.changes 
new/sca-server-report-1.0.1/spec/sca-server-report.changes
--- old/sca-server-report-1.0/spec/sca-server-report.changes    2018-01-22 
22:58:46.696881310 +0100
+++ new/sca-server-report-1.0.1/spec/sca-server-report.changes  2020-11-12 
16:30:23.479948745 +0100
@@ -1,4 +1,38 @@
 -------------------------------------------------------------------
+Thu Nov 12 15:29:10 UTC 2020 - [email protected]
+
+- Additional to version 1.0.1
+  + Updated the man pages with -r
+  + -k is retained for compatibility, but keeping the archive is default
+  + Fixed service pack version when GA
+  + Print actual hostname instead of localhost with -s
+  + scatool trys to run README file (bsc#1178528)
+
+-------------------------------------------------------------------
+Fri Nov  6 17:14:48 UTC 2020 - [email protected]
+
+- Additions to version 1.0.1
+  + Updated man pages for scatool(8) and scatool.conf(5)
+  + Removed CONSOLE_MODE from scatool.conf
+  + should support archive or server argument and not require -a (bsc#1178229)
+  + scatool copies remote scc_* supportconfigs (bsc#1178151)
+  + Exits gracefully when attempting to process damaged files (bsc#1178152)
+  + scatool correctly cleans up and saves archives (bsc#1178094)
+
+-------------------------------------------------------------------
+Sat Oct 24 17:19:11 UTC 2020 - [email protected]
+
+- Additions to version 1.0.1
+  + Arg with / treated as files, not remote servers (bsc#1178099)
+  + Optimized tar ball extraction (bsc#1178093)
+  + Added /etc/os-release support (bsc#1178092)
+  + scatool correctly process -s for local server (bsc#1178088)
+  + Fixed progress bar timing (bsc#1178086)
+  + Fixed scatool fails with no module named readline (bsc#1177249)
+  + If run against path '.' use cwd name (issue#1)
+  + Added support for xz compression (bsc#1155181)
+
+-------------------------------------------------------------------
 Mon Jan 22 21:58:14 UTC 2018 - [email protected]
 
 - Fixed pattern runtime error divide by zero (bsc#1077110)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sca-server-report-1.0/spec/sca-server-report.spec 
new/sca-server-report-1.0.1/spec/sca-server-report.spec
--- old/sca-server-report-1.0/spec/sca-server-report.spec       2018-01-02 
20:20:18.609442991 +0100
+++ new/sca-server-report-1.0.1/spec/sca-server-report.spec     2020-11-12 
16:30:25.567909424 +0100
@@ -1,6 +1,6 @@
 # spec file for package sca-server-report
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017-2020 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 %define sca_python %{libbase}/python
 
 Name:         sca-server-report
-Version:      1.0
+Version:      1.0.1
 Release:      0
 Summary:      Supportconfig Analysis Server Report
 License:      GPL-2.0
_______________________________________________
openSUSE Commits mailing list -- [email protected]
To unsubscribe, email [email protected]
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives: 
https://lists.opensuse.org/archives/list/[email protected]

Reply via email to