From 52b899742d6f352954180d528b090c8485e6106b Mon Sep 17 00:00:00 2001 From: Mark Reynolds Date: Jul 23 2018 21:40:15 +0000 Subject: Ticket 49867 - Fix CLI tools' double output Description: This is a regression from a previous fix. Do not call logging.basicConfig() in cli tools https://pagure.io/389-ds-base/issue/49867 Reviewed by: spichugi(Thanks!) --- diff --git a/src/lib389/cli/dsconf b/src/lib389/cli/dsconf index a3c56fe..aefc014 100755 --- a/src/lib389/cli/dsconf +++ b/src/lib389/cli/dsconf @@ -15,10 +15,6 @@ import logging import ldap import sys import signal - -# This has to happen before we import DirSrv else it tramples our config ... :( -logging.basicConfig(format='%(message)s') - from lib389 import DirSrv from lib389._constants import DN_CONFIG, DN_DM from lib389.cli_conf import config as cli_config @@ -34,13 +30,11 @@ from lib389.cli_conf.plugins import rootdn_ac as cli_rootdn_ac from lib389.cli_conf.plugins import whoami as cli_whoami from lib389.cli_conf.plugins import referint as cli_referint from lib389.cli_conf.plugins import automember as cli_automember - from lib389.cli_base import disconnect_instance, connect_instance - from lib389.cli_base.dsrc import dsrc_to_ldap, dsrc_arg_concat - from lib389.cli_base import setup_script_logger + parser = argparse.ArgumentParser(allow_abbrev=True) parser.add_argument('instance', help="The instance name OR the LDAP url to connect to, IE localhost, ldap://mai.example.com:389", @@ -81,6 +75,7 @@ cli_whoami.create_parser(subparsers) cli_referint.create_parser(subparsers) cli_automember.create_parser(subparsers) cli_sasl.create_parser(subparsers) + argcomplete.autocomplete(parser) # handle a control-c gracefully diff --git a/src/lib389/cli/dscreate b/src/lib389/cli/dscreate index dca37c0..a482478 100755 --- a/src/lib389/cli/dscreate +++ b/src/lib389/cli/dscreate @@ -14,7 +14,6 @@ import argparse, argcomplete import logging import sys import signal - from lib389 import DirSrv from lib389.cli_ctl import instance as cli_instance from lib389.cli_base import setup_script_logger @@ -39,6 +38,7 @@ interactive_parser.set_defaults(func=cli_instance.instance_create_interactive) template_parser = subparsers.add_parser('create-template', help="Display an example inf answer file, or provide a file name to write it to disk.") template_parser.add_argument('template_file', nargs="?", default=None, help="Write example template to this file") template_parser.set_defaults(func=cli_instance.instance_example) + argcomplete.autocomplete(parser) # handle a control-c gracefully diff --git a/src/lib389/cli/dsctl b/src/lib389/cli/dsctl index 69a028e..1148565 100755 --- a/src/lib389/cli/dsctl +++ b/src/lib389/cli/dsctl @@ -14,10 +14,6 @@ import argparse, argcomplete import logging import sys import signal - -# This has to happen before we import DirSrv else it tramples our config ... :( -logging.basicConfig(format='%(message)s') - from lib389.cli_base import _get_arg from lib389 import DirSrv from lib389.cli_ctl import instance as cli_instance @@ -37,11 +33,10 @@ parser.add_argument('-j', '--json', default=False, action='store_true' ) subparsers = parser.add_subparsers(help="action") -argcomplete.autocomplete(parser) -# We stack our needed options in via submodules. cli_instance.create_parser(subparsers) cli_dbtasks.create_parser(subparsers) +argcomplete.autocomplete(parser) # handle a control-c gracefully def signal_handler(signal, frame): diff --git a/src/lib389/cli/dsidm b/src/lib389/cli/dsidm index c65f6a8..ab13916 100755 --- a/src/lib389/cli/dsidm +++ b/src/lib389/cli/dsidm @@ -15,10 +15,6 @@ import argparse, argcomplete import logging import sys import signal - -# This has to happen before we import DirSrv else it tramples our config ... :( -logging.basicConfig(format='%(message)s') - from lib389._constants import DN_DM from lib389.cli_idm import account as cli_account from lib389.cli_idm import initialise as cli_init @@ -26,11 +22,10 @@ from lib389.cli_idm import organizationalunit as cli_ou from lib389.cli_idm import group as cli_group from lib389.cli_idm import posixgroup as cli_posixgroup from lib389.cli_idm import user as cli_user - from lib389.cli_base import connect_instance, disconnect_instance, setup_script_logger - from lib389.cli_base.dsrc import dsrc_to_ldap, dsrc_arg_concat + parser = argparse.ArgumentParser(allow_abbrev=True) # First, add the LDAP options parser.add_argument('instance', @@ -64,6 +59,7 @@ cli_init.create_parser(subparsers) cli_ou.create_parser(subparsers) cli_posixgroup.create_parser(subparsers) cli_user.create_parser(subparsers) + argcomplete.autocomplete(parser) # handle a control-c gracefully