)]}'
{"functions-common":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"a11930d32971f9616ec31d3d4c1be0f90c4e32e8","unresolved":false,"context_lines":[{"line_number":1729,"context_line":"            # catches units that don\u0027t really exist for cases like"},{"line_number":1730,"context_line":"            # keystone without a failure."},{"line_number":1731,"context_line":"            $SYSTEMCTL stop devstack@$service.service \u0026\u0026 \\"},{"line_number":1732,"context_line":"            $SYSTEMCTL disable devstack@$service.service || /bin/true"},{"line_number":1733,"context_line":"        fi"},{"line_number":1734,"context_line":""},{"line_number":1735,"context_line":"        if [[ -r $SERVICE_DIR/$SCREEN_NAME/$service.pid ]]; then"}],"source_content_type":"application/x-shellscript","patch_set":12,"id":"5ff73747_33f74562","line":1732,"updated":"2017-04-27 15:18:53.000000000","message":"I don\u0027t really want to do this, there is an alternative change I\u0027ve got around the USE_SCREEN drop.","commit_id":"612c449aa6e2b7e4a67c8a39846f04b8369aa3ec"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"51d2a5b75c74ba0f14e1b5c98c2064a43f39ba80","unresolved":false,"context_lines":[{"line_number":1729,"context_line":"            # catches units that don\u0027t really exist for cases like"},{"line_number":1730,"context_line":"            # keystone without a failure."},{"line_number":1731,"context_line":"            $SYSTEMCTL stop devstack@$service.service \u0026\u0026 \\"},{"line_number":1732,"context_line":"            $SYSTEMCTL disable devstack@$service.service || /bin/true"},{"line_number":1733,"context_line":"        fi"},{"line_number":1734,"context_line":""},{"line_number":1735,"context_line":"        if [[ -r $SERVICE_DIR/$SCREEN_NAME/$service.pid ]]; then"}],"source_content_type":"application/x-shellscript","patch_set":12,"id":"5ff73747_6e172047","line":1732,"in_reply_to":"5ff73747_33f74562","updated":"2017-04-27 15:25:03.000000000","message":"Yeah, this was just to get me through the testing period where it could die. I\u0027ll wipe it out and either base on the USE_SCREEN change, or master if it merges soon.","commit_id":"612c449aa6e2b7e4a67c8a39846f04b8369aa3ec"}],"lib/apache":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"738ca15a373761cae228842c4e3b657288dfe700","unresolved":false,"context_lines":[{"line_number":258,"context_line":"    else"},{"line_number":259,"context_line":"        local apache_conf\u003d\"\""},{"line_number":260,"context_line":"        apache_conf\u003d$(apache_site_config_for $name)"},{"line_number":261,"context_line":"        iniset \"$file\" uwsgi socket \"$socket\""},{"line_number":262,"context_line":"        iniset \"$file\" uwsgi chmod-socket 666"},{"line_number":263,"context_line":"        echo \"ProxyPass \\\"${url}\\\" \\\"unix:${socket}|uwsgi://uwsgi-uds-${name}/\\\" retry\u003d0 \" | sudo tee $apache_conf"},{"line_number":264,"context_line":"        enable_apache_site $name"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_df81b3c5","line":261,"updated":"2017-05-26 14:28:25.000000000","message":"Is there a reason to move these to the top?","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"0d7b32f827770585849ee20ecbac1e8c7794a88b","unresolved":false,"context_lines":[{"line_number":258,"context_line":"    else"},{"line_number":259,"context_line":"        local apache_conf\u003d\"\""},{"line_number":260,"context_line":"        apache_conf\u003d$(apache_site_config_for $name)"},{"line_number":261,"context_line":"        iniset \"$file\" uwsgi socket \"$socket\""},{"line_number":262,"context_line":"        iniset \"$file\" uwsgi chmod-socket 666"},{"line_number":263,"context_line":"        echo \"ProxyPass \\\"${url}\\\" \\\"unix:${socket}|uwsgi://uwsgi-uds-${name}/\\\" retry\u003d0 \" | sudo tee $apache_conf"},{"line_number":264,"context_line":"        enable_apache_site $name"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_bd0cc494","line":261,"in_reply_to":"ff0f0b1f_df81b3c5","updated":"2017-05-26 16:59:38.000000000","message":"Are you asking why they were moved from where they were before?\n\nIf so, the reason is because they are not required when uwsgi is running using http mode, as in line 259/257. They are only required when mod_proxy_uwsgi is being used.\n\nMake the change in this patch was simply a case of taken advantage of the fact that there was stuff in progress. I can split the patches if that\u0027s preferred.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"57054b7267967b2e13b7e2b0cd86f63e29abbc52","unresolved":false,"context_lines":[{"line_number":276,"context_line":"        echo \"SetEnv proxy-sendcl 1\" | sudo tee $apache_conf"},{"line_number":277,"context_line":"        iniset \"$file\" uwsgi socket \"$socket\""},{"line_number":278,"context_line":"        iniset \"$file\" uwsgi chmod-socket 666"},{"line_number":279,"context_line":"        echo \"ProxyPass \\\"${url}\\\" \\\"unix:${socket}|uwsgi://uwsgi-uds-${name}/\\\" retry\u003d0 \" | sudo tee $apache_conf"},{"line_number":280,"context_line":"        enable_apache_site $name"},{"line_number":281,"context_line":"        restart_apache_server"},{"line_number":282,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":20,"id":"5f201791_a52dfcfe","line":279,"updated":"2017-06-28 14:25:48.000000000","message":"Doesn\u0027t dropping the -a here drop the proxy-sendcl from above? If we do that shouldn\u0027t we just drop the sendcl? (which I added as a sanity thing just in case any request was sent with a chunked encoding it didn\u0027t fail with an opaque content length required error)","commit_id":"116a6f4de10e80fbe301d4b61eb82150fce0ebcf"}],"lib/nova":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"cb7495d5d52b0b5c1ae90169cc52528446697651","unresolved":false,"context_lines":[{"line_number":400,"context_line":"        create_service_user \"nova\" \"admin\""},{"line_number":401,"context_line":""},{"line_number":402,"context_line":"        local nova_api_url"},{"line_number":403,"context_line":"        if [[ \"$NOVA_USE_MOD_WSGI\" \u003d\u003d \"False\" ]]; then"},{"line_number":404,"context_line":"            nova_api_url\u003d\"$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_HOST:$NOVA_SERVICE_PORT\""},{"line_number":405,"context_line":"        else"},{"line_number":406,"context_line":"            nova_api_url\u003d\"$NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_HOST/compute\""}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"5ff73747_585fc00d","side":"PARENT","line":403,"updated":"2017-04-26 10:53:10.000000000","message":"for the transition period we need to keep this.\n\nThe steps for transition, add all the logic here to do wsgi or eventlet. \n\nHave grenade pin NOVA_USE_MOD_WSGI\u003dFalse.\n\nUpdate devstack to do this true by default. \n\nWe honestly probably also need to do the systemd cut over before this to simplify the world.","commit_id":"d4df865c0789fd7412772c48588356ef9f082244"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"8186ce95f5d051e4bc9d7815c850cbc769a8986e","unresolved":false,"context_lines":[{"line_number":437,"context_line":"        iniset $NOVA_CONF DEFAULT enabled_apis \"$NOVA_ENABLED_APIS\""},{"line_number":438,"context_line":"        if is_service_enabled tls-proxy; then"},{"line_number":439,"context_line":"            # Set the service port for a proxy to take the original"},{"line_number":440,"context_line":"            iniset $NOVA_CONF DEFAULT osapi_compute_listen_port $NOVA_SERVICE_PORT_INT"},{"line_number":441,"context_line":"            iniset $NOVA_CONF DEFAULT osapi_compute_link_prefix $NOVA_SERVICE_PROTOCOL://$NOVA_SERVICE_HOST:$NOVA_SERVICE_PORT"},{"line_number":442,"context_line":"        fi"},{"line_number":443,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":10,"id":"5ff73747_5cce7982","line":440,"updated":"2017-04-26 23:39:12.000000000","message":"Two things need to change near here.\n\n* I should put the quotes back so this line doesn\u0027t actually change\n* the enclosing if block should check for NOVA_USE_MOD_WSGI \u003d\u003d False so this line is only set when using eventlet api server","commit_id":"163956f4d1a054cb2c3e175db0c98e1e4b419744"},{"author":{"_account_id":16150,"name":"Lei Zhang","email":"lei.a.zhang@intel.com","username":"leizhang"},"change_message_id":"a0e4d3a01cbf5de3593ef895c4f338e22fab006a","unresolved":false,"context_lines":[{"line_number":813,"context_line":"    fi"},{"line_number":814,"context_line":""},{"line_number":815,"context_line":"    # Start proxies if enabled"},{"line_number":816,"context_line":"    if is_service_enabled tls-proxy; then"},{"line_number":817,"context_line":"        start_tls_proxy nova \u0027*\u0027 $NOVA_SERVICE_PORT $NOVA_SERVICE_HOST $NOVA_SERVICE_PORT_INT"},{"line_number":818,"context_line":"    fi"},{"line_number":819,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":14,"id":"1f013ff3_d3c5fd3d","side":"PARENT","line":816,"updated":"2017-05-17 08:18:19.000000000","message":"Why removing starting tls proxy here, it seems even tls-proxy is enalbed, it won\u0027t get started in the patch.","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"3f808a596ca84a26058f33449a35313f27dd3b4c","unresolved":false,"context_lines":[{"line_number":813,"context_line":"    fi"},{"line_number":814,"context_line":""},{"line_number":815,"context_line":"    # Start proxies if enabled"},{"line_number":816,"context_line":"    if is_service_enabled tls-proxy; then"},{"line_number":817,"context_line":"        start_tls_proxy nova \u0027*\u0027 $NOVA_SERVICE_PORT $NOVA_SERVICE_HOST $NOVA_SERVICE_PORT_INT"},{"line_number":818,"context_line":"    fi"},{"line_number":819,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":14,"id":"ff0f0b1f_804c1a77","side":"PARENT","line":816,"in_reply_to":"1f013ff3_d3c5fd3d","updated":"2017-05-17 12:00:16.000000000","message":"When running under uwsgi and mod_proxy_wsgi the use of tls is entirely based on the configuration of apache2, there is no need to have a proxy to a separate nova service process.\n\nHowever, it may be that when NOVA_USE_MOD_WSGI is false and tls-proxy is enabled this still needs to happen. I\u0027ll need to check with Sean and others about that.","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"f977d9387fd335520963e05385292e418f4f2307","unresolved":false,"context_lines":[{"line_number":813,"context_line":"    fi"},{"line_number":814,"context_line":""},{"line_number":815,"context_line":"    # Start proxies if enabled"},{"line_number":816,"context_line":"    if is_service_enabled tls-proxy; then"},{"line_number":817,"context_line":"        start_tls_proxy nova \u0027*\u0027 $NOVA_SERVICE_PORT $NOVA_SERVICE_HOST $NOVA_SERVICE_PORT_INT"},{"line_number":818,"context_line":"    fi"},{"line_number":819,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":14,"id":"ff0f0b1f_35cfc780","side":"PARENT","line":816,"in_reply_to":"ff0f0b1f_804c1a77","updated":"2017-05-17 16:23:12.000000000","message":"Done","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":16150,"name":"Lei Zhang","email":"lei.a.zhang@intel.com","username":"leizhang"},"change_message_id":"c1b16b05a6d6735e705411ca453fa797e17bf893","unresolved":false,"context_lines":[{"line_number":813,"context_line":"    fi"},{"line_number":814,"context_line":""},{"line_number":815,"context_line":"    # Start proxies if enabled"},{"line_number":816,"context_line":"    if is_service_enabled tls-proxy; then"},{"line_number":817,"context_line":"        start_tls_proxy nova \u0027*\u0027 $NOVA_SERVICE_PORT $NOVA_SERVICE_HOST $NOVA_SERVICE_PORT_INT"},{"line_number":818,"context_line":"    fi"},{"line_number":819,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":14,"id":"ff0f0b1f_225bd654","side":"PARENT","line":816,"in_reply_to":"ff0f0b1f_804c1a77","updated":"2017-05-19 01:43:36.000000000","message":"Sorry, not quite get the point here, do you mean if uwsgi is used and tls_proxy is enabled in local.conf the script won\u0027t setup tls proxy, users should modify apache2 configuration to set tls themselves.","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":295,"context_line":"        s|%VIRTUALENV%|$venv_path|g"},{"line_number":296,"context_line":"        s|%APIWORKERS%|$API_WORKERS|g"},{"line_number":297,"context_line":"    \" -i $nova_metadata_apache_conf"},{"line_number":298,"context_line":"}"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"# configure_nova() - Set config files, create data dirs, etc"},{"line_number":301,"context_line":"function configure_nova {"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_13a71f52","side":"PARENT","line":298,"updated":"2017-05-26 17:52:11.000000000","message":"+1","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":922,"context_line":"    if [ \"$NOVA_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":923,"context_line":"        disable_apache_site nova-api"},{"line_number":924,"context_line":"        disable_apache_site nova-metadata"},{"line_number":925,"context_line":"        restart_apache_server"},{"line_number":926,"context_line":"    else"},{"line_number":927,"context_line":"        stop_process n-api"},{"line_number":928,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_b33993f3","side":"PARENT","line":925,"updated":"2017-05-26 17:52:11.000000000","message":"keep all this disable code, even with || true, to get rid of cruft there during the transition for folks. That could be deleted after pike is released.","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"2b7fcb6a81f08c90a9253e946bb7d4ef0f9aefd6","unresolved":false,"context_lines":[{"line_number":922,"context_line":"    if [ \"$NOVA_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":923,"context_line":"        disable_apache_site nova-api"},{"line_number":924,"context_line":"        disable_apache_site nova-metadata"},{"line_number":925,"context_line":"        restart_apache_server"},{"line_number":926,"context_line":"    else"},{"line_number":927,"context_line":"        stop_process n-api"},{"line_number":928,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_f62c994b","side":"PARENT","line":925,"in_reply_to":"ff0f0b1f_b33993f3","updated":"2017-05-26 18:09:20.000000000","message":"Which cruft?","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"d3f2dc29dc2e2e8ab3525425fb5021e4b3289978","unresolved":false,"context_lines":[{"line_number":922,"context_line":"    if [ \"$NOVA_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":923,"context_line":"        disable_apache_site nova-api"},{"line_number":924,"context_line":"        disable_apache_site nova-metadata"},{"line_number":925,"context_line":"        restart_apache_server"},{"line_number":926,"context_line":"    else"},{"line_number":927,"context_line":"        stop_process n-api"},{"line_number":928,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"df140735_b0599bff","side":"PARENT","line":925,"in_reply_to":"ff0f0b1f_f62c994b","updated":"2017-05-29 12:52:10.000000000","message":"This is still the same too.","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":929,"context_line":"    # Kill the nova screen windows"},{"line_number":930,"context_line":"    # Some services are listed here twice since more than one instance"},{"line_number":931,"context_line":"    # of a service may be running in certain configs."},{"line_number":932,"context_line":"    for serv in n-api n-crt n-net n-sch n-novnc n-xvnc n-cauth n-spice n-cond n-cell n-cell n-api-meta n-sproxy; do"},{"line_number":933,"context_line":"        stop_process $serv"},{"line_number":934,"context_line":"    done"},{"line_number":935,"context_line":"}"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_7323fbbf","side":"PARENT","line":932,"range":{"start_line":932,"start_character":22,"end_line":932,"end_character":27},"updated":"2017-05-26 17:52:11.000000000","message":"there will be a merge conflict here, as I approved the delete n-crt from another patch","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"d3f2dc29dc2e2e8ab3525425fb5021e4b3289978","unresolved":false,"context_lines":[{"line_number":929,"context_line":"    # Kill the nova screen windows"},{"line_number":930,"context_line":"    # Some services are listed here twice since more than one instance"},{"line_number":931,"context_line":"    # of a service may be running in certain configs."},{"line_number":932,"context_line":"    for serv in n-api n-crt n-net n-sch n-novnc n-xvnc n-cauth n-spice n-cond n-cell n-cell n-api-meta n-sproxy; do"},{"line_number":933,"context_line":"        stop_process $serv"},{"line_number":934,"context_line":"    done"},{"line_number":935,"context_line":"}"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"df140735_306d8b98","side":"PARENT","line":932,"in_reply_to":"ff0f0b1f_7323fbbf","updated":"2017-05-29 12:52:10.000000000","message":"Fixed and moved the two api statements into the loop because why not?","commit_id":"803acffcf9254e328426ad67380a99f4f5b164ec"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"738ca15a373761cae228842c4e3b657288dfe700","unresolved":false,"context_lines":[{"line_number":30,"context_line":"# NOTE(cdent): Hack to always cause metadata to run. Need this to"},{"line_number":31,"context_line":"# ensure that n-api-meta runs as a separate process."},{"line_number":32,"context_line":"if ! is_service_enabled n-api-meta; then"},{"line_number":33,"context_line":"    enable_service n-api-meta"},{"line_number":34,"context_line":"fi"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_8aaad7cf","line":33,"updated":"2017-05-26 14:28:25.000000000","message":"Doesn\u0027t this mean there is no way to disable the metadata service? I\u0027m not sure this is ideal, because there are situations where you don\u0027t want to run it.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"2b7fcb6a81f08c90a9253e946bb7d4ef0f9aefd6","unresolved":false,"context_lines":[{"line_number":30,"context_line":"# NOTE(cdent): Hack to always cause metadata to run. Need this to"},{"line_number":31,"context_line":"# ensure that n-api-meta runs as a separate process."},{"line_number":32,"context_line":"if ! is_service_enabled n-api-meta; then"},{"line_number":33,"context_line":"    enable_service n-api-meta"},{"line_number":34,"context_line":"fi"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_b6a3c100","line":33,"in_reply_to":"ff0f0b1f_1344bfb6","updated":"2017-05-26 18:09:20.000000000","message":"It\u0027s been long enough since I started this that I guess that updating gate stuff was probably my original plan and I forgot. Can you point me a bit more specifically","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"0d7b32f827770585849ee20ecbac1e8c7794a88b","unresolved":false,"context_lines":[{"line_number":30,"context_line":"# NOTE(cdent): Hack to always cause metadata to run. Need this to"},{"line_number":31,"context_line":"# ensure that n-api-meta runs as a separate process."},{"line_number":32,"context_line":"if ! is_service_enabled n-api-meta; then"},{"line_number":33,"context_line":"    enable_service n-api-meta"},{"line_number":34,"context_line":"fi"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_bd128461","line":33,"in_reply_to":"ff0f0b1f_8aaad7cf","updated":"2017-05-26 16:59:38.000000000","message":"From what I could tell in my analysis of the code, then if n-api was enabled and n-api-meta was not, then n-api would also run the metadata service (on its own port). And if mod_wsgi was being used then then the metadata service would always get configured.\n\nSo what probably needs to happen here is for the conditional to be:\n\n    if is_service_enabled n-api \u0026\u0026 ! is_service_enabled n-api-meta; then\n        enabled_service n-api-meta\n    fi\n\nThen we get something closer to the original behavior?\n\nDoes that seem right to you? I found this part quite weird to tease out and had been hoping some tests would show where things go wrong, but from looking at the results I guess there are not tests that expect to not find a metadata server.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"d3f2dc29dc2e2e8ab3525425fb5021e4b3289978","unresolved":false,"context_lines":[{"line_number":30,"context_line":"# NOTE(cdent): Hack to always cause metadata to run. Need this to"},{"line_number":31,"context_line":"# ensure that n-api-meta runs as a separate process."},{"line_number":32,"context_line":"if ! is_service_enabled n-api-meta; then"},{"line_number":33,"context_line":"    enable_service n-api-meta"},{"line_number":34,"context_line":"fi"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"df140735_b0407b09","line":33,"in_reply_to":"ff0f0b1f_b6a3c100","updated":"2017-05-29 12:52:10.000000000","message":"I\u0027ve removed this in the next version to see what blows up.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":30,"context_line":"# NOTE(cdent): Hack to always cause metadata to run. Need this to"},{"line_number":31,"context_line":"# ensure that n-api-meta runs as a separate process."},{"line_number":32,"context_line":"if ! is_service_enabled n-api-meta; then"},{"line_number":33,"context_line":"    enable_service n-api-meta"},{"line_number":34,"context_line":"fi"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_1344bfb6","line":33,"in_reply_to":"ff0f0b1f_bd128461","updated":"2017-05-26 17:52:11.000000000","message":"We shouldn\u0027t do this. Instead, add this to the default enabled services in stackrc, and then update gate (which overrides that) to do the same.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"738ca15a373761cae228842c4e3b657288dfe700","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"# Toggle for deploying Nova-API under a wsgi server. We default to"},{"line_number":72,"context_line":"# true to use UWSGI, but allow False so that fall back to the"},{"line_number":73,"context_line":"# eventlet server can happen for grenade runs."},{"line_number":74,"context_line":"NOVA_USE_MOD_WSGI\u003d${NOVA_USE_MOD_WSGI:-True}"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"if is_service_enabled tls-proxy; then"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_4a739f4e","line":73,"updated":"2017-05-26 14:28:25.000000000","message":"I think maybe a note about removing the eventlet path after the pike release","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"d3f2dc29dc2e2e8ab3525425fb5021e4b3289978","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"# Toggle for deploying Nova-API under a wsgi server. We default to"},{"line_number":72,"context_line":"# true to use UWSGI, but allow False so that fall back to the"},{"line_number":73,"context_line":"# eventlet server can happen for grenade runs."},{"line_number":74,"context_line":"NOVA_USE_MOD_WSGI\u003d${NOVA_USE_MOD_WSGI:-True}"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"if is_service_enabled tls-proxy; then"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"df140735_704ae327","line":73,"in_reply_to":"ff0f0b1f_4a739f4e","updated":"2017-05-29 12:52:10.000000000","message":"Done","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":71,"context_line":"# Toggle for deploying Nova-API under a wsgi server. We default to"},{"line_number":72,"context_line":"# true to use UWSGI, but allow False so that fall back to the"},{"line_number":73,"context_line":"# eventlet server can happen for grenade runs."},{"line_number":74,"context_line":"NOVA_USE_MOD_WSGI\u003d${NOVA_USE_MOD_WSGI:-True}"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"if is_service_enabled tls-proxy; then"},{"line_number":77,"context_line":"    NOVA_SERVICE_PROTOCOL\u003d\"https\""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_33aa2319","line":74,"updated":"2017-05-26 17:52:11.000000000","message":"I\u0027m not thrilled that NOVA_USE_MOD_WSGI actually now means NOVA_USE_UWSGI, because it makes some of the rest hard to reason about.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"2b7fcb6a81f08c90a9253e946bb7d4ef0f9aefd6","unresolved":false,"context_lines":[{"line_number":71,"context_line":"# Toggle for deploying Nova-API under a wsgi server. We default to"},{"line_number":72,"context_line":"# true to use UWSGI, but allow False so that fall back to the"},{"line_number":73,"context_line":"# eventlet server can happen for grenade runs."},{"line_number":74,"context_line":"NOVA_USE_MOD_WSGI\u003d${NOVA_USE_MOD_WSGI:-True}"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"if is_service_enabled tls-proxy; then"},{"line_number":77,"context_line":"    NOVA_SERVICE_PROTOCOL\u003d\"https\""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_d6875561","line":74,"in_reply_to":"ff0f0b1f_33aa2319","updated":"2017-05-26 18:09:20.000000000","message":"This is something we talked about as a stop gap until we had something more useful. Does that thing exist yet?","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"d3f2dc29dc2e2e8ab3525425fb5021e4b3289978","unresolved":false,"context_lines":[{"line_number":71,"context_line":"# Toggle for deploying Nova-API under a wsgi server. We default to"},{"line_number":72,"context_line":"# true to use UWSGI, but allow False so that fall back to the"},{"line_number":73,"context_line":"# eventlet server can happen for grenade runs."},{"line_number":74,"context_line":"NOVA_USE_MOD_WSGI\u003d${NOVA_USE_MOD_WSGI:-True}"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"if is_service_enabled tls-proxy; then"},{"line_number":77,"context_line":"    NOVA_SERVICE_PROTOCOL\u003d\"https\""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"df140735_30546bca","line":74,"in_reply_to":"ff0f0b1f_d6875561","updated":"2017-05-29 12:52:10.000000000","message":"I\u0027ve left NOTE that may help with that.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":243,"context_line":"    stop_process \"n-api\""},{"line_number":244,"context_line":"    stop_process \"n-api-meta\""},{"line_number":245,"context_line":"    remove_uwsgi_config \"$NOVA_UWSGI_CONF\" \"$NOVA_UWSGI\""},{"line_number":246,"context_line":"    remove_uwsgi_config \"$NOVA_METADATA_UWSGI_CONF\" \"$NOVA_METADATA_UWSGI\""},{"line_number":247,"context_line":"}"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"# configure_nova() - Set config files, create data dirs, etc"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_b38193c6","line":246,"updated":"2017-05-26 17:52:11.000000000","message":"the stop process should also have vestigial mod_wsgi cleanup for now, so that if you switch modes, or take a new default config, it cleans up both.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"d3f2dc29dc2e2e8ab3525425fb5021e4b3289978","unresolved":false,"context_lines":[{"line_number":243,"context_line":"    stop_process \"n-api\""},{"line_number":244,"context_line":"    stop_process \"n-api-meta\""},{"line_number":245,"context_line":"    remove_uwsgi_config \"$NOVA_UWSGI_CONF\" \"$NOVA_UWSGI\""},{"line_number":246,"context_line":"    remove_uwsgi_config \"$NOVA_METADATA_UWSGI_CONF\" \"$NOVA_METADATA_UWSGI\""},{"line_number":247,"context_line":"}"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"# configure_nova() - Set config files, create data dirs, etc"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"df140735_f05f13e3","line":246,"in_reply_to":"ff0f0b1f_168dcd7a","updated":"2017-05-29 12:52:10.000000000","message":"I didn\u0027t know what you meant here, so this is still the same in the next version.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"2b7fcb6a81f08c90a9253e946bb7d4ef0f9aefd6","unresolved":false,"context_lines":[{"line_number":243,"context_line":"    stop_process \"n-api\""},{"line_number":244,"context_line":"    stop_process \"n-api-meta\""},{"line_number":245,"context_line":"    remove_uwsgi_config \"$NOVA_UWSGI_CONF\" \"$NOVA_UWSGI\""},{"line_number":246,"context_line":"    remove_uwsgi_config \"$NOVA_METADATA_UWSGI_CONF\" \"$NOVA_METADATA_UWSGI\""},{"line_number":247,"context_line":"}"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"# configure_nova() - Set config files, create data dirs, etc"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_168dcd7a","line":246,"in_reply_to":"ff0f0b1f_b38193c6","updated":"2017-05-26 18:09:20.000000000","message":"So you\u0027re saying these two remote lines can be removed?","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":475,"context_line":"    setup_logging $NOVA_CONF"},{"line_number":476,"context_line":""},{"line_number":477,"context_line":"    write_uwsgi_config \"$NOVA_UWSGI_CONF\" \"$NOVA_UWSGI\" \"/compute\""},{"line_number":478,"context_line":"    write_uwsgi_config \"$NOVA_METADATA_UWSGI_CONF\" \"$NOVA_METADATA_UWSGI\" \"\" \":${METADATA_SERVICE_PORT}\""},{"line_number":479,"context_line":""},{"line_number":480,"context_line":"    if is_service_enabled ceilometer; then"},{"line_number":481,"context_line":"        iniset $NOVA_CONF DEFAULT instance_usage_audit \"True\""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_d3652747","line":478,"updated":"2017-05-26 17:52:11.000000000","message":"+1","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":748,"context_line":"        fi"},{"line_number":749,"context_line":"    else"},{"line_number":750,"context_line":"        run_process \"n-api\" \"$NOVA_BIN_DIR/uwsgi --ini $NOVA_UWSGI_CONF\""},{"line_number":751,"context_line":"        nova_url\u003d$service_protocol://$SERVICE_HOST/compute/v2.1/"},{"line_number":752,"context_line":"    fi"},{"line_number":753,"context_line":""},{"line_number":754,"context_line":"    echo \"Waiting for nova-api to start...\""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_b344f375","line":751,"updated":"2017-05-26 17:52:11.000000000","message":"So, in this case we\u0027re bypassing the tls apache, and just hitting the main one?","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"04da6868f73f4164c6d3d5fd040e86d7ecd4488e","unresolved":false,"context_lines":[{"line_number":748,"context_line":"        fi"},{"line_number":749,"context_line":"    else"},{"line_number":750,"context_line":"        run_process \"n-api\" \"$NOVA_BIN_DIR/uwsgi --ini $NOVA_UWSGI_CONF\""},{"line_number":751,"context_line":"        nova_url\u003d$service_protocol://$SERVICE_HOST/compute/v2.1/"},{"line_number":752,"context_line":"    fi"},{"line_number":753,"context_line":""},{"line_number":754,"context_line":"    echo \"Waiting for nova-api to start...\""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_96867ddb","line":751,"in_reply_to":"ff0f0b1f_7672c97e","updated":"2017-05-26 18:24:08.000000000","message":"Right, in this case apache should just do the tls for us since we\u0027re already running a proxy. We only need to explicitly setup the tls proxy if we\u0027re running it with eventlet and therefore don\u0027t have native tls support.\n\nYou can see this in the tempest logs pretty easily:\n\nhttp://logs.openstack.org/15/457715/15/check/gate-tempest-dsvm-neutron-full-ubuntu-xenial/bcd7da0/logs/tempest.txt.gz#_2017-05-17_16_49_55_771\n\nit\u0027s still using https:// there","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"2b7fcb6a81f08c90a9253e946bb7d4ef0f9aefd6","unresolved":false,"context_lines":[{"line_number":748,"context_line":"        fi"},{"line_number":749,"context_line":"    else"},{"line_number":750,"context_line":"        run_process \"n-api\" \"$NOVA_BIN_DIR/uwsgi --ini $NOVA_UWSGI_CONF\""},{"line_number":751,"context_line":"        nova_url\u003d$service_protocol://$SERVICE_HOST/compute/v2.1/"},{"line_number":752,"context_line":"    fi"},{"line_number":753,"context_line":""},{"line_number":754,"context_line":"    echo \"Waiting for nova-api to start...\""}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_7672c97e","line":751,"in_reply_to":"ff0f0b1f_b344f375","updated":"2017-05-26 18:09:20.000000000","message":"I was (probably incorrectly) assuming that if we are running the services in apache already, then the apache would be doing tls already and we don\u0027t want to be doing a \"tls proxy\" (because that proxies elsewhere).\n\nBut I actually have no idea how the tls stuff is expected to be used, so this could be completely wrong. I tried this to see what it would cause to fail and took a wait and see attitude.","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"57054b7267967b2e13b7e2b0cd86f63e29abbc52","unresolved":false,"context_lines":[{"line_number":741,"context_line":"    if [ \"$NOVA_USE_MOD_WSGI\" \u003d\u003d \"False\" ]; then"},{"line_number":742,"context_line":"        run_process n-api \"$NOVA_BIN_DIR/nova-api\""},{"line_number":743,"context_line":"        nova_url\u003d$service_protocol://$SERVICE_HOST:$service_port"},{"line_number":744,"context_line":"        # Start proxy if tsl enabled"},{"line_number":745,"context_line":"        if is_service_enabled tls-proxy; then"},{"line_number":746,"context_line":"            start_tls_proxy nova \u0027*\u0027 $NOVA_SERVICE_PORT $NOVA_SERVICE_HOST $NOVA_SERVICE_PORT_INT"},{"line_number":747,"context_line":"        fi"}],"source_content_type":"application/x-shellscript","patch_set":20,"id":"5f201791_0525d008","line":744,"updated":"2017-06-28 14:25:48.000000000","message":"nit: s/tsl/tls","commit_id":"116a6f4de10e80fbe301d4b61eb82150fce0ebcf"}],"stackrc":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bbcc3a099b691615a69e025ad59075a455fe012f","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    # Keystone - nothing works without keystone"},{"line_number":54,"context_line":"    ENABLED_SERVICES\u003dkey"},{"line_number":55,"context_line":"    # Nova - services to support libvirt based openstack clouds"},{"line_number":56,"context_line":"    ENABLED_SERVICES+\u003d,n-api,n-cpu,n-cond,n-sch,n-novnc,n-cauth,n-api-meta"},{"line_number":57,"context_line":"    # Placement service needed for Nova"},{"line_number":58,"context_line":"    ENABLED_SERVICES+\u003d,placement-api,placement-client"},{"line_number":59,"context_line":"    # Glance services needed for Nova"}],"source_content_type":"application/x-shellscript","patch_set":15,"id":"ff0f0b1f_b30cf394","line":56,"updated":"2017-05-26 17:52:11.000000000","message":"+1","commit_id":"3a02fac513a7f607d6351705aa80fffedd0e4961"}]}
