diff --git a/ironic/conf/default.py b/ironic/conf/default.py index bb5ec39180..b3a6943da1 100644 --- a/ironic/conf/default.py +++ b/ironic/conf/default.py @@ -424,6 +424,28 @@ webserver_opts = [ ] +def list_opts(): + _default_opt_lists = [ + api_opts, + driver_opts, + exc_log_opts, + hash_opts, + image_opts, + img_cache_opts, + netconf_opts, + notification_opts, + path_opts, + portgroup_opts, + service_opts, + utils_opts, + webserver_opts, + ] + full_opt_list = [] + for options in _default_opt_lists: + full_opt_list.extend(options) + return full_opt_list + + def register_opts(conf): conf.register_opts(api_opts) conf.register_opts(driver_opts) diff --git a/ironic/conf/opts.py b/ironic/conf/opts.py index ecd804dd93..97b9c9d447 100644 --- a/ironic/conf/opts.py +++ b/ironic/conf/opts.py @@ -10,30 +10,13 @@ # See the License for the specific language governing permissions and # limitations under the License. -import itertools - from oslo_log import log import ironic.conf -_default_opt_lists = [ - ironic.conf.default.api_opts, - ironic.conf.default.driver_opts, - ironic.conf.default.exc_log_opts, - ironic.conf.default.hash_opts, - ironic.conf.default.image_opts, - ironic.conf.default.img_cache_opts, - ironic.conf.default.netconf_opts, - ironic.conf.default.notification_opts, - ironic.conf.default.path_opts, - ironic.conf.default.portgroup_opts, - ironic.conf.default.service_opts, - ironic.conf.default.utils_opts, - ironic.conf.default.webserver_opts, -] _opts = [ - ('DEFAULT', itertools.chain(*_default_opt_lists)), + ('DEFAULT', ironic.conf.default.list_opts()), ('agent', ironic.conf.agent.opts), ('ansible', ironic.conf.ansible.opts), ('api', ironic.conf.api.opts),