devstack/lib/neutron_thirdparty
Gabriel Assis Bezerra a688bc6510 Fix the way Apache site configuration files are used, to improve OS portability
On Ubuntu 14.04, the site configuration file must have a .conf suffix for a2ensite and a2dissite to
recognise it. a2ensite and a2dissite ignore the .conf suffix used as parameter. The default sites'
files are 000-default.conf and default-ssl.conf.

On Ubuntu 12.04, the site configuration file may have any format, as long as it is in
/etc/apache2/sites-available/. a2ensite and a2dissite need the entire file name to work. The default
sites' files are default and default-ssl.

On Fedora, any file in /etc/httpd/conf.d/ whose name ends with .conf is enabled.

On RHEL and CentOS, things should hopefully work as in Fedora.

This change puts all distribution-related site configuration file name differences in lib/apache and
the other services gets the file name for its sites using the new exported function
apache_site_config_for <sitename>.

It also makes Fedora disabled sites use the .conf.disabled suffix instead of removing the .conf from
the file name.

The table below summarizes what should happen on each distribution:
+----------------------+--------------------+--------------------------+--------------------------+
| Distribution         | File name          | Site enabling command    | Site disabling command   |
+----------------------+--------------------+--------------------------+--------------------------+
| Ubuntu 12.04         | site               | a2ensite site            | a2dissite site           |
| Ubuntu 14.04         | site.conf          | a2ensite site            | a2dissite site           |
| Fedora, RHEL, CentOS | site.conf.disabled | mv site.conf{.disabled,} | mv site.conf{,.disabled} |
+----------------------+--------------------+--------------------------+--------------------------+

Change-Id: Ia2ba3cb7caccb6e9b65380f9d51d9d21180b894e
Closes-bug: #1313765
2014-05-30 12:07:24 +00:00
..
bigswitch_floodlight Fix Neutron plugin XTRACE handling 2014-03-28 12:40:59 -05:00
midonet Fix Neutron plugin XTRACE handling 2014-03-28 12:40:59 -05:00
README.md Add sanity check framework to verify neutron server/backend integration 2014-01-14 08:14:25 -08:00
ryu Fix Neutron plugin XTRACE handling 2014-03-28 12:40:59 -05:00
trema Fix the way Apache site configuration files are used, to improve OS portability 2014-05-30 12:07:24 +00:00
vmware_nsx Fix Neutron plugin XTRACE handling 2014-03-28 12:40:59 -05:00

Neutron third party specific files

Some Neutron plugins require third party programs to function. The files under the directory, lib/neutron_thirdparty/, will be used when their service are enabled. Third party program specific configuration variables should be in this file.

  • filename: <third_party>
    • The corresponding file name should be same to service name, <third_party>.

functions

lib/neutron calls the following functions when the <third_party> is enabled

functions to be implemented

  • configure_<third_party>: set config files, create data dirs, etc e.g. sudo python setup.py deploy iniset $XXXX_CONF...

  • init_<third_party>: initialize databases, etc

  • install_<third_party>: collect source and prepare e.g. git clone xxx

  • start_<third_party>: start running processes, including screen e.g. screen_it XXXX "cd $XXXXY_DIR && $XXXX_DIR/bin/XXXX-bin"

  • stop_<third_party>: stop running processes (non-screen)

  • check_<third_party>: verify that the integration between neutron server and third-party components is sane