From 675561e11627b3a8c82dca26b9ee262e57f99c1f Mon Sep 17 00:00:00 2001 From: Adrian Likins Date: Tue, 24 May 2016 18:47:56 -0400 Subject: [PATCH] fix vault-keyring.py 'No [vault] section' error vault-keyring.py was using an older version of the ansible.constants.load_config_file() API. The newer version returns a tuple, which caused the config load to fail and a catch all exception to blame it on a missing section. Update to new API, and catch the ConfigParser error specifically. Fixes #15984 --- contrib/vault/vault-keyring.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) mode change 100644 => 100755 contrib/vault/vault-keyring.py diff --git a/contrib/vault/vault-keyring.py b/contrib/vault/vault-keyring.py old mode 100644 new mode 100755 index bc001476c76..c154d56df10 --- a/contrib/vault/vault-keyring.py +++ b/contrib/vault/vault-keyring.py @@ -47,16 +47,17 @@ import sys import getpass import keyring +import ConfigParser + import ansible.constants as C - def main(): - parser = C.load_config_file() + (parser,config_path) = C.load_config_file() try: username = parser.get('vault', 'username') - except: - sys.stderr.write('No [vault] section configured\n') + except ConfigParser.NoSectionError: + sys.stderr.write('No [vault] section configured in config file: %s\n' % config_path) sys.exit(1) if len(sys.argv) == 2 and sys.argv[1] == 'set':