)]}'
{".gitignore":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"574eba69ca71038626cce4ab6b4224b449b390e8","unresolved":false,"context_lines":[{"line_number":28,"context_line":"src"},{"line_number":29,"context_line":"stack-screenrc"},{"line_number":30,"context_line":"userrc_early"},{"line_number":31,"context_line":"AUTHORS"},{"line_number":32,"context_line":"ChangeLog"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"3afc51ec_adffdf65","line":32,"range":{"start_line":31,"start_character":0,"end_line":32,"end_character":9},"updated":"2016-03-14 19:47:41.000000000","message":"unrelated changes","commit_id":"9f44479f6a29fd63d8628ecda1eacbe75ec357f0"}],"/COMMIT_MSG":[{"author":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"change_message_id":"63e9389ada61a74442d41061f06dc15b1073eeea","unresolved":false,"context_lines":[{"line_number":14,"context_line":"independently of other servers. You can use pdb on keystone easily"},{"line_number":15,"context_line":"since it\u0027s a separate process."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"To deploy this way, set KEYSTONE_DEPLOY\u003duwsgi_proxy"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: Ia1f789392b7147439123d9839e611a24a8bd50af"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3afc51ec_5567c724","line":17,"updated":"2016-03-14 17:42:42.000000000","message":"Please document this in the docs. This would probably be useful to developers.","commit_id":"80ce7917c9ca1f72d4a678e9ba8e122491e3c1da"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"f21b3956434aa5e135f9681ade6f66ffd0970cfa","unresolved":false,"context_lines":[{"line_number":14,"context_line":"independently of other servers. You can use pdb on keystone easily"},{"line_number":15,"context_line":"since it\u0027s a separate process."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"To deploy this way, set KEYSTONE_DEPLOY\u003duwsgi_proxy"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: Ia1f789392b7147439123d9839e611a24a8bd50af"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3afc51ec_ea96ed4a","line":17,"in_reply_to":"3afc51ec_5567c724","updated":"2016-03-14 19:39:14.000000000","message":"I thought the code was the docs. Done.","commit_id":"80ce7917c9ca1f72d4a678e9ba8e122491e3c1da"}],"doc/source/configuration.rst":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"574eba69ca71038626cce4ab6b4224b449b390e8","unresolved":false,"context_lines":[{"line_number":621,"context_line":"`KEYSTONE_USE_MOD_WSGI` is used (if true, uses mod_wsgi, if false uses"},{"line_number":622,"context_line":"eventlet)."},{"line_number":623,"context_line":""},{"line_number":624,"context_line":"``eventlet``: This is the default. It\u0027s also **deprecated** and will be going"},{"line_number":625,"context_line":"away in the Newton release. Keystone runs under `keystone-all` which is an"},{"line_number":626,"context_line":"executable that starts up the admin and public services running under an"},{"line_number":627,"context_line":"eventlet-based server."}],"source_content_type":"text/x-rst","patch_set":3,"id":"3afc51ec_4d645b48","line":624,"range":{"start_line":624,"start_character":14,"end_line":624,"end_character":59},"updated":"2016-03-14 19:47:41.000000000","message":"just a side note, we should probably change this, having a default be a deprecated option is just bad","commit_id":"9f44479f6a29fd63d8628ecda1eacbe75ec357f0"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"b200c503dd21030fd5c8ca8bba3f5c80fd280f73","unresolved":false,"context_lines":[{"line_number":619,"context_line":"The deployment that keystone uses is selected using the `KEYSTONE_DEPLOY`"},{"line_number":620,"context_line":"value in `local.conf`. If `KEYSTONE_DEPLOY` isn\u0027t set then the setting for"},{"line_number":621,"context_line":"`KEYSTONE_USE_MOD_WSGI` is used (if true, uses mod_wsgi, if false uses"},{"line_number":622,"context_line":"eventlet)."},{"line_number":623,"context_line":""},{"line_number":624,"context_line":"``eventlet``: This is the default. It\u0027s also **deprecated** and will be going"},{"line_number":625,"context_line":"away in the Newton release. Keystone runs under `keystone-all` which is an"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1af94dfe_88783bc6","line":622,"updated":"2016-03-24 14:18:17.000000000","message":"Can we deprecate KEYSTONE_USE_MOD_WSGI too?  Or at least discourage its use here?","commit_id":"eb15c1c6a6e7cc2794bedf3e130871fa1732ccd3"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"010c0b11e5d600a0cfd34c23efe48337fbee98b0","unresolved":false,"context_lines":[{"line_number":619,"context_line":"The deployment that keystone uses is selected using the `KEYSTONE_DEPLOY`"},{"line_number":620,"context_line":"value in `local.conf`. If `KEYSTONE_DEPLOY` isn\u0027t set then the setting for"},{"line_number":621,"context_line":"`KEYSTONE_USE_MOD_WSGI` is used (if true, uses mod_wsgi, if false uses"},{"line_number":622,"context_line":"eventlet)."},{"line_number":623,"context_line":""},{"line_number":624,"context_line":"``eventlet``: This is the default. It\u0027s also **deprecated** and will be going"},{"line_number":625,"context_line":"away in the Newton release. Keystone runs under `keystone-all` which is an"}],"source_content_type":"text/x-rst","patch_set":5,"id":"da0c15f0_cd5d69ee","line":622,"in_reply_to":"1af94dfe_88783bc6","updated":"2016-03-24 18:21:29.000000000","message":"Done. I should also explain where I see this going:\n\nWe\u0027ve deprecated eventlet and it\u0027s going away. So this is going away.\n\nWe\u0027d like to be testing with 2 different wsgi containers. One in the main gate and one in keystone.\n\nI\u0027d prefer the main gate test to be uwsgi_proxy. Currently it\u0027s mod_wsgi.\n\nOnce we get a uwsgi_proxy gate I\u0027ll get rid of the uwsgi gate and we can also get rid of the uwsgi deploy option. Maybe switch it to be the same as uwsgi_proxy?\n\nSo once this is done for keystone, we\u0027ll have 2 jobs -- one with mod_wsgi, the other using mod_uwsgi_proxy.\n\nIf this works well for us I think all the services should run this way.\n\nFurther work involves changing keystone to only accept on paths (/identity \u0026 /identity_admin) and not listen on the ports.","commit_id":"eb15c1c6a6e7cc2794bedf3e130871fa1732ccd3"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"448233329dc19ae505c3da9475c8a752fecdbcff","unresolved":false,"context_lines":[{"line_number":621,"context_line":"`KEYSTONE_USE_MOD_WSGI` is used (if true, uses mod_wsgi, if false uses"},{"line_number":622,"context_line":"eventlet). `KEYSTONE_USE_MOD_WSGI` is deprecated so should not be used."},{"line_number":623,"context_line":""},{"line_number":624,"context_line":"``eventlet``: This is **deprecated** and will be going away in the Newton"},{"line_number":625,"context_line":"release. Keystone runs under `keystone-all` which is an executable that starts"},{"line_number":626,"context_line":"up the admin and public services running under an eventlet-based server."},{"line_number":627,"context_line":""},{"line_number":628,"context_line":"``mod_wsgi``: This is the default. In this case Apache is configured to serve"},{"line_number":629,"context_line":"keystone using the mod_wsgi Apache module. Apache listens on :5000 and :35357,"}],"source_content_type":"text/x-rst","patch_set":6,"id":"da0c15f0_1cd663c5","line":626,"range":{"start_line":624,"start_character":0,"end_line":626,"end_character":72},"updated":"2016-03-25 04:14:32.000000000","message":"with https://review.openstack.org/#/c/297324/1 ready to merge, documenting this seems unnecessary","commit_id":"694170a6774732d43157fa38de2a3f7536f0befe"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"6de4971ee6fdc2d01632cc85f7a7b4afbe00ee25","unresolved":false,"context_lines":[{"line_number":621,"context_line":"`KEYSTONE_USE_MOD_WSGI` is used (if true, uses mod_wsgi, if false uses"},{"line_number":622,"context_line":"eventlet). `KEYSTONE_USE_MOD_WSGI` is deprecated so should not be used."},{"line_number":623,"context_line":""},{"line_number":624,"context_line":"``eventlet``: This is **deprecated** and will be going away in the Newton"},{"line_number":625,"context_line":"release. Keystone runs under `keystone-all` which is an executable that starts"},{"line_number":626,"context_line":"up the admin and public services running under an eventlet-based server."},{"line_number":627,"context_line":""},{"line_number":628,"context_line":"``mod_wsgi``: This is the default. In this case Apache is configured to serve"},{"line_number":629,"context_line":"keystone using the mod_wsgi Apache module. Apache listens on :5000 and :35357,"}],"source_content_type":"text/x-rst","patch_set":6,"id":"da0c15f0_01f269d2","line":626,"range":{"start_line":624,"start_character":0,"end_line":626,"end_character":72},"in_reply_to":"da0c15f0_1cd663c5","updated":"2016-03-25 13:39:08.000000000","message":"I\u0027ll remove it when I resolve the merge conflict.","commit_id":"694170a6774732d43157fa38de2a3f7536f0befe"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"448233329dc19ae505c3da9475c8a752fecdbcff","unresolved":false,"context_lines":[{"line_number":633,"context_line":"``uwsgi``: In this case keystone runs under the uwsgi project server where"},{"line_number":634,"context_line":"uwsgi supports http, so clients talk to the keystone server directly."},{"line_number":635,"context_line":""},{"line_number":636,"context_line":"``uwsgi_proxy``: In this case keystone runs under the uwsgi project server and"},{"line_number":637,"context_line":"accepts uwsgi-protocol requests on an internal port. Apache listens on :5000"},{"line_number":638,"context_line":"and :35357, and it also proxies requests to :80/identity and :80/identity_admin"},{"line_number":639,"context_line":"to the respective keystone service, using the mod_uwsgi_proxy module."},{"line_number":640,"context_line":""},{"line_number":641,"context_line":""},{"line_number":642,"context_line":"Multi-Region Setup"}],"source_content_type":"text/x-rst","patch_set":6,"id":"da0c15f0_3cb6c78a","line":639,"range":{"start_line":636,"start_character":0,"end_line":639,"end_character":69},"updated":"2016-03-25 04:14:32.000000000","message":"you may want to add the benefit this provides -- we should no longer require apache to be reset (which could host horizon and many other apps), just uwsgi","commit_id":"694170a6774732d43157fa38de2a3f7536f0befe"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"6de4971ee6fdc2d01632cc85f7a7b4afbe00ee25","unresolved":false,"context_lines":[{"line_number":633,"context_line":"``uwsgi``: In this case keystone runs under the uwsgi project server where"},{"line_number":634,"context_line":"uwsgi supports http, so clients talk to the keystone server directly."},{"line_number":635,"context_line":""},{"line_number":636,"context_line":"``uwsgi_proxy``: In this case keystone runs under the uwsgi project server and"},{"line_number":637,"context_line":"accepts uwsgi-protocol requests on an internal port. Apache listens on :5000"},{"line_number":638,"context_line":"and :35357, and it also proxies requests to :80/identity and :80/identity_admin"},{"line_number":639,"context_line":"to the respective keystone service, using the mod_uwsgi_proxy module."},{"line_number":640,"context_line":""},{"line_number":641,"context_line":""},{"line_number":642,"context_line":"Multi-Region Setup"}],"source_content_type":"text/x-rst","patch_set":6,"id":"da0c15f0_61e24505","line":639,"range":{"start_line":636,"start_character":0,"end_line":639,"end_character":69},"in_reply_to":"da0c15f0_3cb6c78a","updated":"2016-03-25 13:39:08.000000000","message":"Done","commit_id":"694170a6774732d43157fa38de2a3f7536f0befe"}],"files/apache-keystone-uwsgi-proxy.template":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"3b419f4be5a4be114dbc0387d0eb0d2ba229ddb2","unresolved":false,"context_lines":[{"line_number":3,"context_line":"LogFormat \"%h %l %u %t \\\"%r\\\" %\u003es %b \\\"%{Referer}i\\\" \\\"%{User-agent}i\\\" %D(us)\" keystone_combined"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"\u003cVirtualHost *:%PUBLICPORT%\u003e"},{"line_number":6,"context_line":"    ProxyPass / uwsgi://127.0.0.1:%INTERNAL_PUBLICPORT%/"},{"line_number":7,"context_line":"    ErrorLogFormat \"%M\""},{"line_number":8,"context_line":"    ErrorLog /var/log/%APACHE_NAME%/keystone.log"},{"line_number":9,"context_line":"    CustomLog /var/log/%APACHE_NAME%/keystone_access.log keystone_combined"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"3afc51ec_ddd4f548","line":6,"updated":"2016-03-11 17:12:14.000000000","message":"Add a comment here to use a unix named socket when we\u0027ve got a newer mod_proxy_uwsgi.","commit_id":"6aa886a188a5d14035c34fbc3d82d675edf1333a"}],"lib/apache":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"0a6cee95eb97ee2f6b7b68c9f5cb4c73e28aa5ba","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    # Apache installation, because we mark it NOPRIME"},{"line_number":48,"context_line":"    if is_ubuntu; then"},{"line_number":49,"context_line":"        # Install apache2, which is NOPRIME\u0027d"},{"line_number":50,"context_line":"        install_package apache2 libapache2-mod-wsgi libapache2-mod-proxy-html  libapache2-mod-proxy-uwsgi"},{"line_number":51,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"},{"line_number":52,"context_line":"        sudo a2enmod wsgi"},{"line_number":53,"context_line":"        sudo a2enmod proxy"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"3afc51ec_d4c58b8e","line":50,"updated":"2016-03-14 23:19:09.000000000","message":"i guess this is ok globally, but what about the other platforms?","commit_id":"597bff6475494bef8ad2130b3db3125c08c7d7eb"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"9a4c7e41a4d19c7eff3a6e482d6bdf6b1bec7e8b","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    # Apache installation, because we mark it NOPRIME"},{"line_number":48,"context_line":"    if is_ubuntu; then"},{"line_number":49,"context_line":"        # Install apache2, which is NOPRIME\u0027d"},{"line_number":50,"context_line":"        install_package apache2 libapache2-mod-wsgi libapache2-mod-proxy-html  libapache2-mod-proxy-uwsgi"},{"line_number":51,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"},{"line_number":52,"context_line":"        sudo a2enmod wsgi"},{"line_number":53,"context_line":"        sudo a2enmod proxy"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"1af94dfe_987e04ad","line":50,"in_reply_to":"3afc51ec_d4c58b8e","updated":"2016-03-15 14:54:41.000000000","message":"added fedora... should be able to get this working on suse too.","commit_id":"597bff6475494bef8ad2130b3db3125c08c7d7eb"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"20d05d14f9c3135652a7925d9e839a9945fab2f9","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    elif is_fedora; then"},{"line_number":55,"context_line":"        sudo rm -f /etc/httpd/conf.d/000-*"},{"line_number":56,"context_line":"        install_package httpd mod_wsgi mod_proxy_uwsgi"},{"line_number":57,"context_line":"        sudo bash -c \u0027echo \"LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so\" \u003e /etc/httpd/conf.modules.d/11-proxy_uwsgi.conf\u0027"},{"line_number":58,"context_line":"    elif is_suse; then"},{"line_number":59,"context_line":"        install_package apache2 apache2-mod_wsgi"},{"line_number":60,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"1af94dfe_99738fb1","line":57,"updated":"2016-03-15 21:48:40.000000000","message":"we usually use a \"tee\" for this\n\nit seems that uwsgi \u0026 mod-proxy are probably useful enough generically they belong in here, although it is part of never ending mission creep...","commit_id":"eb15c1c6a6e7cc2794bedf3e130871fa1732ccd3"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"9059f7f4e15e94abd336811c55c2a4c1061d476c","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    elif is_suse; then"},{"line_number":59,"context_line":"        install_package apache2 apache2-mod_wsgi"},{"line_number":60,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"},{"line_number":61,"context_line":"        sudo a2enmod wsgi"},{"line_number":62,"context_line":"    else"},{"line_number":63,"context_line":"        exit_distro_not_supported \"apache installation\""},{"line_number":64,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"1af94dfe_6d9377a4","line":61,"updated":"2016-03-15 15:34:10.000000000","message":"As far as I can tell devstack doesn\u0027t work with suse. I got opensuse and devstack says\n\n+ ./stack.sh::L188:   [[ ! sle42 \u003d~ (trusty|vivid|wily|7.0|wheezy|sid|testing|jessie|f22|f23|rhel7|kvmibm1) ]]\n+ ./stack.sh::L189:   echo \u0027WARNING: this script has not been tested on sle42\u0027\nWARNING: this script has not been tested on sle42\n+ ./stack.sh::L190:   [[ \u0027\u0027 !\u003d \\y\\e\\s ]]\n+ ./stack.sh::L191:   die 191 \u0027If you wish to run this script anyway run with FORCE\u003dyes\u0027","commit_id":"eb15c1c6a6e7cc2794bedf3e130871fa1732ccd3"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"b200c503dd21030fd5c8ca8bba3f5c80fd280f73","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    elif is_suse; then"},{"line_number":59,"context_line":"        install_package apache2 apache2-mod_wsgi"},{"line_number":60,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"},{"line_number":61,"context_line":"        sudo a2enmod wsgi"},{"line_number":62,"context_line":"    else"},{"line_number":63,"context_line":"        exit_distro_not_supported \"apache installation\""},{"line_number":64,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"1af94dfe_48d2b3d3","line":61,"in_reply_to":"1af94dfe_6d9377a4","updated":"2016-03-24 14:18:17.000000000","message":"SuSE is a never-ending battle of someone making it work, getting it added to the list then disappearing; rinse; repeat.  So whatever is in the list is _very_ specific.  I wish we would stop pretending to support it...","commit_id":"eb15c1c6a6e7cc2794bedf3e130871fa1732ccd3"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"4e217555b06b2dc85153fb5c6c7194a17fd2a14f","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        install_package apache2 libapache2-mod-wsgi libapache2-mod-proxy-html  libapache2-mod-proxy-uwsgi"},{"line_number":51,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"},{"line_number":52,"context_line":"        sudo a2enmod wsgi"},{"line_number":53,"context_line":"        sudo a2enmod proxy"},{"line_number":54,"context_line":"    elif is_fedora; then"},{"line_number":55,"context_line":"        sudo rm -f /etc/httpd/conf.d/000-*"},{"line_number":56,"context_line":"        install_package httpd mod_wsgi mod_proxy_uwsgi"}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"da0c15f0_49de1b6e","line":53,"updated":"2016-03-27 22:25:31.000000000","message":"a2enmode can take a list of modules to load:\n  sudo a2enmod wsgi proxy\n\nLess function calls, less logs duplication (\"e.g To activate the new configuration, you need to run: service apache2 restart\")","commit_id":"5b25d11ee8ed1e2a13ff7cff38b4e0156abb0915"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"0b4dbdf0059e7cf2bb0f8d015d13a710eefad8c6","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        install_package apache2 libapache2-mod-wsgi libapache2-mod-proxy-html  libapache2-mod-proxy-uwsgi"},{"line_number":51,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"},{"line_number":52,"context_line":"        sudo a2enmod wsgi"},{"line_number":53,"context_line":"        sudo a2enmod proxy"},{"line_number":54,"context_line":"    elif is_fedora; then"},{"line_number":55,"context_line":"        sudo rm -f /etc/httpd/conf.d/000-*"},{"line_number":56,"context_line":"        install_package httpd mod_wsgi mod_proxy_uwsgi"}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"da0c15f0_0b7ebfad","line":53,"in_reply_to":"da0c15f0_49de1b6e","updated":"2016-03-28 14:44:49.000000000","message":"Done","commit_id":"5b25d11ee8ed1e2a13ff7cff38b4e0156abb0915"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"cb66d3ffb935b32f8e29a48a207a658b421ddc28","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    elif is_fedora; then"},{"line_number":54,"context_line":"        sudo rm -f /etc/httpd/conf.d/000-*"},{"line_number":55,"context_line":"        install_package httpd mod_wsgi mod_proxy_uwsgi"},{"line_number":56,"context_line":"        sudo bash -c \u0027echo \"LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so\" \u003e /etc/httpd/conf.modules.d/11-proxy_uwsgi.conf\u0027"},{"line_number":57,"context_line":"    elif is_suse; then"},{"line_number":58,"context_line":"        install_package apache2 apache2-mod_wsgi"},{"line_number":59,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"ba0121b8_87fb5047","line":56,"updated":"2016-04-01 20:52:06.000000000","message":"If you rev this review again, it would be a bit cleaner to use tee to handle the sudo:\n\n  echo \u0027text...text\u0027 | sudo tee -a \u003eoutput.txt","commit_id":"4e83573b8bb7875d5eff7a55946007030c1b6235"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"0872de2dfa486b36e545eb0d0601d0910b2792a5","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    elif is_fedora; then"},{"line_number":54,"context_line":"        sudo rm -f /etc/httpd/conf.d/000-*"},{"line_number":55,"context_line":"        install_package httpd mod_wsgi mod_proxy_uwsgi"},{"line_number":56,"context_line":"        sudo bash -c \u0027echo \"LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so\" \u003e /etc/httpd/conf.modules.d/11-proxy_uwsgi.conf\u0027"},{"line_number":57,"context_line":"    elif is_suse; then"},{"line_number":58,"context_line":"        install_package apache2 apache2-mod_wsgi"},{"line_number":59,"context_line":"        # WSGI isn\u0027t enabled by default, enable it"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"ba0121b8_6d5edd13","line":56,"in_reply_to":"ba0121b8_87fb5047","updated":"2016-04-01 21:39:23.000000000","message":"Done","commit_id":"4e83573b8bb7875d5eff7a55946007030c1b6235"}],"lib/keystone":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"3b419f4be5a4be114dbc0387d0eb0d2ba229ddb2","unresolved":false,"context_lines":[{"line_number":207,"context_line":"    sudo sed -e \""},{"line_number":208,"context_line":"        s|%PUBLICPORT%|$keystone_service_port|g;"},{"line_number":209,"context_line":"        s|%ADMINPORT%|$keystone_auth_port|g;"},{"line_number":210,"context_line":"        s|%INTERNAL_PUBLICPORT%|5001|g;"},{"line_number":211,"context_line":"        s|%INTERNAL_ADMINPORT%|35358|g;"},{"line_number":212,"context_line":"        s|%APACHE_NAME%|$APACHE_NAME|g;"},{"line_number":213,"context_line":"        s|%SSLENGINE%|$keystone_ssl|g;"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"3afc51ec_9d46edbd","line":210,"updated":"2016-03-11 17:12:14.000000000","message":"don\u0027t hardcode the port. How does tls-proxy do it?","commit_id":"6aa886a188a5d14035c34fbc3d82d675edf1333a"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"5d67d5890f48217b089c2aba99f0f94937185e66","unresolved":false,"context_lines":[{"line_number":382,"context_line":"        iniset \"$KEYSTONE_ADMIN_UWSGI_FILE\" uwsgi uwsgi-socket 127.0.0.1:$KEYSTONE_AUTH_PORT_INT"},{"line_number":383,"context_line":""},{"line_number":384,"context_line":"        iniset \"$KEYSTONE_PUBLIC_UWSGI_FILE\" uwsgi wsgi-file \"$KEYSTONE_BIN_DIR/keystone-wsgi-public\""},{"line_number":385,"context_line":"        # This is running standalone"},{"line_number":386,"context_line":"        iniset \"$KEYSTONE_PUBLIC_UWSGI_FILE\" uwsgi master true"},{"line_number":387,"context_line":"        # Set die-on-term \u0026 exit-on-reload so that uwsgi shuts down"},{"line_number":388,"context_line":"        iniset \"$KEYSTONE_PUBLIC_UWSGI_FILE\" uwsgi die-on-term true"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"3afc51ec_0c58b531","line":385,"updated":"2016-03-14 11:47:45.000000000","message":"Lot of duplication here. \n\nfor file in $KEYSTONE_PUBLIC_UWSGI_FILE $KEYSTONE_PUBLIC_UWSGI_FILE; do\n  iniset $file ...\ndone\n\nwould be more elegant.","commit_id":"80ce7917c9ca1f72d4a678e9ba8e122491e3c1da"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"f21b3956434aa5e135f9681ade6f66ffd0970cfa","unresolved":false,"context_lines":[{"line_number":382,"context_line":"        iniset \"$KEYSTONE_ADMIN_UWSGI_FILE\" uwsgi uwsgi-socket 127.0.0.1:$KEYSTONE_AUTH_PORT_INT"},{"line_number":383,"context_line":""},{"line_number":384,"context_line":"        iniset \"$KEYSTONE_PUBLIC_UWSGI_FILE\" uwsgi wsgi-file \"$KEYSTONE_BIN_DIR/keystone-wsgi-public\""},{"line_number":385,"context_line":"        # This is running standalone"},{"line_number":386,"context_line":"        iniset \"$KEYSTONE_PUBLIC_UWSGI_FILE\" uwsgi master true"},{"line_number":387,"context_line":"        # Set die-on-term \u0026 exit-on-reload so that uwsgi shuts down"},{"line_number":388,"context_line":"        iniset \"$KEYSTONE_PUBLIC_UWSGI_FILE\" uwsgi die-on-term true"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"3afc51ec_caca116e","line":385,"in_reply_to":"3afc51ec_0c58b531","updated":"2016-03-14 19:39:14.000000000","message":"Done","commit_id":"80ce7917c9ca1f72d4a678e9ba8e122491e3c1da"}]}
