diff --git a/files/apache-nova-ec2-api.template b/files/apache-nova-ec2-api.template index 235d958d1a..6443567740 100644 --- a/files/apache-nova-ec2-api.template +++ b/files/apache-nova-ec2-api.template @@ -14,3 +14,12 @@ Listen %PUBLICPORT% %SSLCERTFILE% %SSLKEYFILE% + +Alias /ec2 %PUBLICWSGI% + + SetHandler wsgi-script + Options +ExecCGI + WSGIProcessGroup nova-ec2-api + WSGIApplicationGroup %{GLOBAL} + WSGIPassAuthorization On + diff --git a/lib/nova b/lib/nova index 6e6075cae6..6c414030ae 100644 --- a/lib/nova +++ b/lib/nova @@ -444,13 +444,18 @@ function create_nova_accounts { # EC2 if [[ "$KEYSTONE_CATALOG_BACKEND" = "sql" ]]; then - + local nova_ec2_api_url + if [[ "$NOVA_USE_MOD_WSGI" == "False" ]]; then + nova_ec2_api_url="$EC2_SERVICE_PROTOCOL://$SERVICE_HOST:$EC2_SERVICE_PORT/" + else + nova_ec2_api_url="$EC2_SERVICE_PROTOCOL://$SERVICE_HOST/ec2" + fi get_or_create_service "ec2" "ec2" "EC2 Compatibility Layer" get_or_create_endpoint "ec2" \ "$REGION_NAME" \ - "$EC2_SERVICE_PROTOCOL://$SERVICE_HOST:8773/" \ - "$EC2_SERVICE_PROTOCOL://$SERVICE_HOST:8773/" \ - "$EC2_SERVICE_PROTOCOL://$SERVICE_HOST:8773/" + "$nova_ec2_api_url" \ + "$nova_ec2_api_url" \ + "$nova_ec2_api_url" fi fi