14a0c09001
After patch [1] new RBAC policies changed in the way that SYSTEM_ADMIN user isn't anymore allowed to e.g. create resources in behalf of some projects. Now PROJECT_ADMIN needs to create such resources instead. So this patch basically reverts most of the changes which were done in [2] some time ago. It also introduces new entry in the clouds.yaml file - "devstack-admin-demo" which is "admin" user in the "demo" project as it's needed to create some resouces in the demo project now. Additionally, because of bug [3] this patch changes way how IPv6 external gateway IP is found using Neutron API. This change may be reverted in the future when bug [3] will be fixed. [1] https://review.opendev.org/c/openstack/neutron/+/821208 [2] https://review.opendev.org/c/openstack/devstack/+/797450 [3] https://bugs.launchpad.net/neutron/+bug/1959332 Depends-On: https://review.opendev.org/c/openstack/neutron/+/826828 Closes-Bug: #1959196 Change-Id: I32a6e8b9b59269a8699644b563657363425f7174
Neutron plugin specific files
Neutron plugins require plugin specific behavior.
The files under the directory, lib/neutron_plugins/
, will be used
when their service is enabled.
Each plugin has lib/neutron_plugins/$Q_PLUGIN
and define the following
functions.
Plugin specific configuration variables should be in this file.
- filename:
$Q_PLUGIN
- The corresponding file name MUST be the same to plugin name
$Q_PLUGIN
. Plugin specific configuration variables should be in this file.
- The corresponding file name MUST be the same to plugin name
functions
lib/neutron-legacy
calls the following functions when the $Q_PLUGIN
is enabled
neutron_plugin_create_nova_conf
: optionally set options in nova_confneutron_plugin_install_agent_packages
: install packages that is specific to plugin agent e.g. install_package bridge-utilsneutron_plugin_configure_common
: set plugin-specific variables,Q_PLUGIN_CONF_PATH
,Q_PLUGIN_CONF_FILENAME
,Q_PLUGIN_CLASS
neutron_plugin_configure_dhcp_agent
neutron_plugin_configure_l3_agent
neutron_plugin_configure_plugin_agent
neutron_plugin_configure_service
neutron_plugin_setup_interface_driver
has_neutron_plugin_security_group
: return 0 if the plugin support neutron security group otherwise return 1neutron_plugin_check_adv_test_requirements
: return 0 if requirements are satisfied otherwise return 1