diff options
Diffstat (limited to 'devstack/lib/wsgi')
-rw-r--r-- | devstack/lib/wsgi | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/devstack/lib/wsgi b/devstack/lib/wsgi new file mode 100644 index 00000000..37633c3e --- /dev/null +++ b/devstack/lib/wsgi @@ -0,0 +1,36 @@ +function designate_configure_uwsgi { + write_uwsgi_config "$DESIGNATE_UWSGI_CONF" "$DESIGNATE_UWSGI" "/dns" + + # We are using the http transport to work around an issue with + # broken connections when using the uwsgi protocol of a local socket + # See bug: https://github.com/unbit/uwsgi/issues/2368 + wsgi_conf=$(apache_site_config_for designate-api-wsgi) + echo 'ProxyPass "/dns" "http://127.0.0.1:60053" retry=0' | sudo tee $wsgi_conf + + iniset $DESIGNATE_UWSGI_CONF uwsgi http-socket 127.0.0.1:60053 +} + +function designate_configure_mod_wsgi { + local designate_api_apache_conf + local venv_path="" + local designate_bin_dir="" + designate_bin_dir=$(get_python_exec_prefix) + designate_api_apache_conf=$(apache_site_config_for designate-api) + + if [[ ${USE_VENV} = True ]]; then + venv_path="python-path=${PROJECT_VENV["designate"]}/lib/$(python_version)/site-packages" + designate_bin_dir=${PROJECT_VENV["designate"]}/bin + fi + + sudo cp $DESIGNATE_DIR/devstack/files/apache-designate-api.template $designate_api_apache_conf + sudo sed -e " + s|%APACHE_NAME%|$APACHE_NAME|g; + s|%DESIGNATE_BIN_DIR%|$designate_bin_dir|g; + s|%SSLENGINE%|$designate_ssl|g; + s|%SSLCERTFILE%|$designate_certfile|g; + s|%SSLKEYFILE%|$designate_keyfile|g; + s|%USER%|$STACK_USER|g; + s|%VIRTUALENV%|$venv_path|g; + s|%APIWORKERS%|$API_WORKERS|g; + " -i $designate_api_apache_conf +} |