Generating configuration files for both Neutron or Nova and Neutron failed miserably with for example:
# Warning: Failed to format sample for default_domain_id
# isinstance() arg 2 must be a class, type, or tuple of classes and types
instead of the normal [neutron]/default_domain_id directive. This was a bug in oslo.config solved with this patch:
https://review.openstack.org/#/c/291857/
however, once this patch was applied, there's now some warnings when generating the config files of Neutron and Nova, which I believe were hidden by this isinstance() bug (see below for the warnings). FYI, this is with keystoneauth version 2.1.0.
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for auth_url (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for default_domain_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for default_domain_name (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for domain_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for domain_name (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for password (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for project_domain_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for project_domain_name (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for project_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for project_name (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for tenant_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for tenant_name (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for trust_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for user_domain_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for user_domain_name (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for user_id (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),
/usr/lib/python2.7/dist-packages/oslo_config/generator.py:210: UserWarning: Incompatible option class for username (<class 'keystoneauth1.loading.opts.Opt'>): 'Opt' object has no attribute 'mutable'
(opt.dest, opt.__class__, err),