The openstack-config command changes a symbolic link to a regular file. For example, according to the Installation Reference, /etc/neutron/plugin.ini is a symbolic link to /etc/neutron/plugins/ml2/ml2_conf.ini # ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini # ll /etc/neutron/plugin.ini lrwxrwxrwx. 1 root root 37 Jun 13 14:38 /etc/neutron/plugin.ini -> /etc/neutron/plugins/ml2/ml2_conf.ini Then, configure the plugin file with the openstack-config command. # openstack-config --set /etc/neutron/plugin.ini ml2 tenant_network_types vlan # ll /etc/neutron/plugin.ini -rw-r-----. 1 root neutron 3959 Jun 13 14:39 /etc/neutron/plugin.ini The symbolic link file is changed to a regular file and its content is different from the original file. This is fixed by crudini 0.9
crudini-0.9-2.el7 built in CBS and published to common-testing