diff --git a/.gitignore b/.gitignore index 2fa7ce7..a620789 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ config.ini +venv/ diff --git a/refresh-certificate.py b/refresh-certificate.py index ab9da6a..6c0ca1b 100755 --- a/refresh-certificate.py +++ b/refresh-certificate.py @@ -177,24 +177,24 @@ def main(): parser = argparse.ArgumentParser() parser.add_argument("-d", "--debug", dest='debug', action='store_true', required=False, help="Activate debug.") - parser.add_argument("-c", "--config", dest='configFileName', nargs='?', required=False, default=None, help="Configuration file.") - parser.add_argument("-u", "--user", dest='username', nargs='?', required=False, default='admin', help="Username.") + parser.add_argument("-c", "--config", dest='configFileName', required=False, default=None, help="Configuration file.") + parser.add_argument("-u", "--user", dest='username', required=False, default='admin', help="Username.") parser.add_argument("-p", "--password", dest='password', nargs='?', required=False, default=None, help="Password.") - parser.add_argument("-H", "--host", dest='hostname', nargs='?', required=False, default=None, help="Hostname.") - parser.add_argument("-v", "--verify", dest='verify', nargs='?', type=bool, required=False, default=True, help="Verify certificate validity.") + parser.add_argument("-H", "--host", dest='hostname', required=False, default=None, help="Hostname.") + parser.add_argument("-n", "--no-tls-verification", dest='verify', action='store_true', required=False, help="Verify certificate validity.") subparsers = parser.add_subparsers(dest='command', required=True, help='command help') parserCreateCSR = subparsers.add_parser('csr', help='Create CSR') - parserCreateCSR.add_argument("-C", "--country", dest='country', nargs='?', required=False, default='US', help="Country.") - parserCreateCSR.add_argument("-s", "--state", dest='state', nargs='?', required=False, help="State.") - parserCreateCSR.add_argument("-c", "--city", dest='city', nargs='?', required=False, help="State.") - parserCreateCSR.add_argument("--ou", dest='organizationalUnit', nargs='?', required=False, help="Organizational Unit.") - parserCreateCSR.add_argument("--org", dest='organization', nargs='?', required=False, help="Organization.") - parserCreateCSR.add_argument("-o", "--output", dest='output', nargs='?', required=False, default=None, help="Output file.") + parserCreateCSR.add_argument("-C", "--country", dest='country', required=False, default='US', help="Country.") + parserCreateCSR.add_argument("-s", "--state", dest='state', required=False, help="State.") + parserCreateCSR.add_argument("-c", "--city", dest='city', required=False, help="State.") + parserCreateCSR.add_argument("--ou", dest='organizationalUnit', required=False, help="Organizational Unit.") + parserCreateCSR.add_argument("--org", dest='organization', required=False, help="Organization.") + parserCreateCSR.add_argument("-o", "--output", dest='output', required=False, default=None, help="Output file.") parserInstalleCertificate = subparsers.add_parser('pem', help='Install certificate') - parserInstalleCertificate.add_argument("-i", "--input", dest='input', nargs='?', required=True, default=None, help="Input file.") + parserInstalleCertificate.add_argument("-i", "--input", dest='input', required=True, default=None, help="Input file.") args = parser.parse_args() logger.info("Arguments: %s" % args) @@ -236,15 +236,16 @@ def main(): if 'city' in options: args.city = config.get('CSR','city') - if args.password == None: - logger.error('Password is mandatory') - argparse.usage() if args.username == None: logger.error('Username is mandatory') - argparse.usage() + parser.print_help() + exit(-1) if args.hostname == None: logger.error('Hostname is mandatory') - argparse.usage() + parser.print_help() + exit(-1) + if args.password == None: + args.password = getpass.getpass() if args.debug: logger.info('Setting logging to debug mode') diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..daba4a5 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +requests +coloredlogs