diff options
Diffstat (limited to 'base/deploy/src/pkidestroy')
-rwxr-xr-x | base/deploy/src/pkidestroy | 66 |
1 files changed, 46 insertions, 20 deletions
diff --git a/base/deploy/src/pkidestroy b/base/deploy/src/pkidestroy index edb57e9ac..67ebd6e63 100755 --- a/base/deploy/src/pkidestroy +++ b/base/deploy/src/pkidestroy @@ -1,4 +1,4 @@ -#!/usr/bin/python -t +#!/usr/bin/python -tu # Authors: # Matthew Harmsen <mharmsen@redhat.com> # @@ -52,6 +52,10 @@ error was: def main(argv): "main entry point" + print "PKI Server Removal" + print "------------------" + print + config.pki_deployment_executable = os.path.basename(argv[0]) # Only run this program as "root". @@ -97,14 +101,46 @@ def main(argv): parser.mandatory.add_argument('-i', dest='pki_deployed_instance_name', action='store', - nargs=1, required=True, metavar='<instance>', + nargs=1, metavar='<instance>', help='FORMAT: ${pki_instance_name}') args = parser.process_command_line_arguments(argv) - # -i <instance name> - config.pki_deployed_instance_name =\ - str(args.pki_deployed_instance_name).strip('[\']') + interactive = False + + while True: + + # -s <subsystem> + if args.pki_subsystem is None: + interactive = True + config.pki_subsystem = parser.read_text('Subsystem (CA/KRA/OCSP/TKS)', + options=['CA', 'KRA', 'OCSP', 'TKS'], + default='CA', caseSensitive=False).upper() + else: + config.pki_subsystem = str(args.pki_subsystem).strip('[\']') + + # -i <instance name> + if args.pki_deployed_instance_name is None: + interactive = True + config.pki_deployed_instance_name = parser.read_text('Instance', default='pki-tomcat') + else: + config.pki_deployed_instance_name = str(args.pki_deployed_instance_name).strip('[\']') + + if interactive: + print + + begin = parser.read_text('Begin removal (Yes/No/Quit)', + options=['Yes', 'Y', 'No', 'N', 'Quit', 'Q'], + sign='?', allowEmpty=False, caseSensitive=False).lower() + + print + + if begin == 'q' or begin == 'quit': + print "Removal canceled." + sys.exit(0) + + elif begin == 'y' or begin == 'yes': + break # verify that previously deployed instance exists deployed_pki_instance_path = config.pki_root_prefix +\ @@ -134,7 +170,8 @@ def main(argv): config.pki_subsystem.lower() + "/" +\ config.USER_DEPLOYMENT_CONFIGURATION - parser.validate() + parser.initialize() + parser.initialize_config() # Enable 'pkidestroy' logging. config.pki_log_dir = config.pki_root_prefix +\ @@ -161,20 +198,6 @@ def main(argv): extra=config.PKI_INDENTATION_LEVEL_0) sys.exit(1) - # NEVER print out 'sensitive' name/value pairs!!! - config.pki_log.debug(log.PKI_DICTIONARY_DEFAULT, - extra=config.PKI_INDENTATION_LEVEL_0) - config.pki_log.debug(pkilogging.format(config.pki_default_dict), - extra=config.PKI_INDENTATION_LEVEL_0) - config.pki_log.debug(log.PKI_DICTIONARY_WEB_SERVER, - extra=config.PKI_INDENTATION_LEVEL_0) - config.pki_log.debug(pkilogging.format(config.pki_web_server_dict), - extra=config.PKI_INDENTATION_LEVEL_0) - config.pki_log.debug(log.PKI_DICTIONARY_SUBSYSTEM, - extra=config.PKI_INDENTATION_LEVEL_0) - config.pki_log.debug(pkilogging.format(config.pki_subsystem_dict), - extra=config.PKI_INDENTATION_LEVEL_0) - # Combine the various sectional dictionaries into a PKI master dictionary parser.compose_pki_master_dictionary() config.pki_master_dict['pki_destroy_log'] = config.pki_log_dir + "/" +\ @@ -200,6 +223,9 @@ def main(argv): config.pki_log.debug(pkilogging.format(config.pki_master_dict), extra=config.PKI_INDENTATION_LEVEL_0) + print + print "Removal complete." + # PKI Deployment Entry Point if __name__ == "__main__": |