Description of problem: When restarting the openstack-ironic-conductor service after modifying the `enabled_drivers` section of the ironic.conf file it failed silently. Adding a duplicate entry, pxe_ssh in this case, resulted in no drivers being enabled after the service restarted. Nothing was reported to stderr but was obvious after checking `ironic driver-list` and noting that there were no drivers enabled Version-Release number of selected component (if applicable): How reproducible: Easily Steps to Reproduce: 1. from an existing OSPd-7 deployment add a duplicate entry to `enabled_drivers` within /etc/ironic/ironic.conf 2. sudo systemctl restart openstack-ironic-conductor 3. ironic driver-list Actual results: +---------------------+----------------+ | Supported driver(s) | Active host(s) | +---------------------+----------------+ +---------------------+----------------+ Expected results: Either something informative is pushed out to stderr when the malformed config is parsed indicating that is the case or, modify the config parser to handle and disregard duplicate entries. Additional info: ### /var/log/ironic/ironic-conductor.log ### 2016-03-21 11:38:48.822 774 DEBUG ironic.cmd.conductor [-] Configuration: main /usr/lib/python2.7/site-packages/ironic/cmd/conductor.py:43 2016-03-21 11:38:48.823 774 DEBUG ironic.cmd.conductor [-] ******************************************************************************** log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2216 2016-03-21 11:38:48.823 774 DEBUG ironic.cmd.conductor [-] Configuration options gathered from: log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2217 2016-03-21 11:38:48.823 774 DEBUG ironic.cmd.conductor [-] command line args: [] log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2218 2016-03-21 11:38:48.824 774 DEBUG ironic.cmd.conductor [-] config files: ['/usr/share/ironic/ironic-dist.conf', '/etc/ironic/ironic.conf'] log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2219 2016-03-21 11:38:48.824 774 DEBUG ironic.cmd.conductor [-] ================================================================================ log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2220 2016-03-21 11:38:48.824 774 DEBUG ironic.cmd.conductor [-] bindir = /usr/lib/python2.7/site-packages/ironic/bin log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2229 2016-03-21 11:38:48.824 774 DEBUG ironic.cmd.conductor [-] config_dir = None log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2229 2016-03-21 11:38:48.825 774 DEBUG ironic.cmd.conductor [-] config_file = ['/usr/share/ironic/ironic-dist.conf', '/etc/ironic/ironic.conf'] log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2229 2016-03-21 11:38:48.825 774 DEBUG ironic.cmd.conductor [-] control_exchange = openstack log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2229 2016-03-21 11:38:48.825 774 DEBUG ironic.cmd.conductor [-] debug = True log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2229 2016-03-21 11:38:48.825 774 DEBUG ironic.cmd.conductor [-] default_log_levels = ['amqp=WARN', 'amqplib=WARN', 'qpid.messaging=INFO', 'oslo.messaging=INFO', 'sqlalchemy=WARN', 'keystoneclient=INFO', 'stevedore=INFO', 'eventlet.wsgi.server=WARN', 'iso8601=WARN', 'paramiko=WARN', 'requests=WARN', 'neutronclient=WARN', 'glanceclient=WARN', 'ironic.openstack.common=WARN', 'urllib3.connectionpool=WARN'] log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2229 2016-03-21 11:38:48.826 774 DEBUG ironic.cmd.conductor [-] enabled_drivers = ['pxe_ipmitool', 'pxe_ssh', 'pxe_drac', 'pxe_ilo', 'pxe_wol', 'pxe_ssh'] log_opt_values /usr/lib/python2.7/site-packages/oslo_config/cfg.py:2229
Thanks for filling this out, I've opened a bug upstream and submitted a fix for it. I can backport it once it's merged there. (added links to the external trackers)
Merged in OSP 10 and I've proposed a backport to OSP 9.
This bug is verified. New bug was open with some more enabled_driver formatting problem causing conductor to fail without error message https://bugzilla.redhat.com/show_bug.cgi?id=1377103
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHEA-2016-2948.html