)]}'
{"playbooks/roles/bifrost-ironic-install/README.md":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":198,"context_line":"bifrost_venv_dir: The full path of the virtual environment directory. The"},{"line_number":199,"context_line":"                  default value is /opt/stack/bifrost."},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"bifrost_venv_env: An environment hash that includes the environment variables"},{"line_number":202,"context_line":"                  used to run commands which require the virtual environment."},{"line_number":203,"context_line":"\t\t  The default values are derived from the standard \u0027activate\u0027"},{"line_number":204,"context_line":"\t\t  script which virtualenv installs. It is best not to reset"}],"source_content_type":"text/x-gfm","patch_set":1,"id":"da6ed579_ff0c0344","line":201,"range":{"start_line":201,"start_character":33,"end_line":201,"end_character":37},"updated":"2016-01-12 14:18:47.000000000","message":"I think we should dict or dictionary.  Any particular reason you used hash?","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":198,"context_line":"bifrost_venv_dir: The full path of the virtual environment directory. The"},{"line_number":199,"context_line":"                  default value is /opt/stack/bifrost."},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"bifrost_venv_env: An environment hash that includes the environment variables"},{"line_number":202,"context_line":"                  used to run commands which require the virtual environment."},{"line_number":203,"context_line":"\t\t  The default values are derived from the standard \u0027activate\u0027"},{"line_number":204,"context_line":"\t\t  script which virtualenv installs. It is best not to reset"}],"source_content_type":"text/x-gfm","patch_set":1,"id":"9a68dd71_482009f8","line":201,"range":{"start_line":201,"start_character":33,"end_line":201,"end_character":37},"in_reply_to":"da6ed579_ff0c0344","updated":"2016-01-20 17:58:52.000000000","message":"Done","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":"bifrost_venv_env: An environment hash that includes the environment variables"},{"line_number":202,"context_line":"                  used to run commands which require the virtual environment."},{"line_number":203,"context_line":"\t\t  The default values are derived from the standard \u0027activate\u0027"},{"line_number":204,"context_line":"\t\t  script which virtualenv installs. It is best not to reset"},{"line_number":205,"context_line":"\t\t  this value unless you know you need to."},{"line_number":206,"context_line":""}],"source_content_type":"text/x-gfm","patch_set":1,"id":"da6ed579_dff9ff4e","line":203,"range":{"start_line":203,"start_character":0,"end_line":203,"end_character":4},"updated":"2016-01-12 14:18:47.000000000","message":"I can\u0027t help but wonder if tabs render better.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":"bifrost_venv_env: An environment hash that includes the environment variables"},{"line_number":202,"context_line":"                  used to run commands which require the virtual environment."},{"line_number":203,"context_line":"\t\t  The default values are derived from the standard \u0027activate\u0027"},{"line_number":204,"context_line":"\t\t  script which virtualenv installs. It is best not to reset"},{"line_number":205,"context_line":"\t\t  this value unless you know you need to."},{"line_number":206,"context_line":""}],"source_content_type":"text/x-gfm","patch_set":1,"id":"9a68dd71_0879b1fc","line":203,"range":{"start_line":203,"start_character":0,"end_line":203,"end_character":4},"in_reply_to":"da6ed579_dff9ff4e","updated":"2016-01-20 17:58:52.000000000","message":"Done","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"}],"playbooks/roles/bifrost-ironic-install/tasks/pip_install.yml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":17,"context_line":"  pip: name\u003d\"{{ package }}\""},{"line_number":18,"context_line":"       state\u003d\"{{ state | default(omit) }}\""},{"line_number":19,"context_line":"       version\u003d\"{{ version | default(omit) }}\""},{"line_number":20,"context_line":"       virtualenv\u003d\"{{ bifrost_venv_dir if enable_venv else \u0027undefined\u0027 }}\""},{"line_number":21,"context_line":"  when: source_install is not defined or source_install \u003d\u003d false"},{"line_number":22,"context_line":"# NOTE (cinerama): We should be able to use the pip module here and"},{"line_number":23,"context_line":"# possibly merge these two tasks when"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"da6ed579_7ad34139","line":20,"range":{"start_line":20,"start_character":3,"end_line":20,"end_character":7},"updated":"2016-01-12 14:18:47.000000000","message":"Any reason for the \":\" to \"\u003d\" style change?","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":17,"context_line":"  pip: name\u003d\"{{ package }}\""},{"line_number":18,"context_line":"       state\u003d\"{{ state | default(omit) }}\""},{"line_number":19,"context_line":"       version\u003d\"{{ version | default(omit) }}\""},{"line_number":20,"context_line":"       virtualenv\u003d\"{{ bifrost_venv_dir if enable_venv else \u0027undefined\u0027 }}\""},{"line_number":21,"context_line":"  when: source_install is not defined or source_install \u003d\u003d false"},{"line_number":22,"context_line":"# NOTE (cinerama): We should be able to use the pip module here and"},{"line_number":23,"context_line":"# possibly merge these two tasks when"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9a68dd71_08c77113","line":20,"range":{"start_line":20,"start_character":3,"end_line":20,"end_character":7},"in_reply_to":"da6ed579_7ad34139","updated":"2016-01-20 17:58:52.000000000","message":"Nope, just snuck back in due to rebase weirdness.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"}],"scripts/env-setup.sh":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":18,"context_line":"        sudo -H apt-get -y install wget"},{"line_number":19,"context_line":"    fi"},{"line_number":20,"context_line":"    if [ $VENV ]; then"},{"line_number":21,"context_line":"\tif ! $(virtualenv --version \u0026\u003e/dev/null); then"},{"line_number":22,"context_line":"\t    if $(sudo -H apt-get -y install virtualenv); then"},{"line_number":23,"context_line":"\t\tsudo -H apt-get -y install python-virtualenv"},{"line_number":24,"context_line":"\t    fi"}],"source_content_type":"text/x-sh","patch_set":1,"id":"da6ed579_b92f8ba0","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":1},"updated":"2016-01-12 14:18:47.000000000","message":"nit: The rest of the file is spaces, this is tabs.  I think we should avoid mixing the two.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":18,"context_line":"        sudo -H apt-get -y install wget"},{"line_number":19,"context_line":"    fi"},{"line_number":20,"context_line":"    if [ $VENV ]; then"},{"line_number":21,"context_line":"\tif ! $(virtualenv --version \u0026\u003e/dev/null); then"},{"line_number":22,"context_line":"\t    if $(sudo -H apt-get -y install virtualenv); then"},{"line_number":23,"context_line":"\t\tsudo -H apt-get -y install python-virtualenv"},{"line_number":24,"context_line":"\t    fi"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a68dd71_48aa491b","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":1},"in_reply_to":"da6ed579_b92f8ba0","updated":"2016-01-20 17:58:52.000000000","message":"Done","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        sudo -H yum -y install wget"},{"line_number":39,"context_line":"    fi"},{"line_number":40,"context_line":"    if [ $VENV ]; then"},{"line_number":41,"context_line":"\tif $(virtualenv --version \u0026\u003e/dev/null); then"},{"line_number":42,"context_line":"\t    sudo -H yum -y install python-virtualenv"},{"line_number":43,"context_line":"\tfi"},{"line_number":44,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":1,"id":"da6ed579_f90c2344","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":1},"updated":"2016-01-12 14:18:47.000000000","message":"Same nit as above.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        sudo -H yum -y install wget"},{"line_number":39,"context_line":"    fi"},{"line_number":40,"context_line":"    if [ $VENV ]; then"},{"line_number":41,"context_line":"\tif $(virtualenv --version \u0026\u003e/dev/null); then"},{"line_number":42,"context_line":"\t    sudo -H yum -y install python-virtualenv"},{"line_number":43,"context_line":"\tfi"},{"line_number":44,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a68dd71_68a70d50","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":1},"in_reply_to":"da6ed579_f90c2344","updated":"2016-01-20 17:58:52.000000000","message":"Done","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":65,"context_line":"# If we\u0027re using a venv, we need to work around sudo not"},{"line_number":66,"context_line":"# keeping the path even with -E."},{"line_number":67,"context_line":"PYTHON\u003d$(which python)"},{"line_number":68,"context_line":"PIP\u003d$(which pip)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"sudo -H -E ${PYTHON} /tmp/get-pip.py"},{"line_number":71,"context_line":""}],"source_content_type":"text/x-sh","patch_set":1,"id":"da6ed579_347c0272","line":68,"range":{"start_line":68,"start_character":0,"end_line":68,"end_character":16},"updated":"2016-01-12 14:18:47.000000000","message":"Shouldn\u0027t this be after get-pip.py ?","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":65,"context_line":"# If we\u0027re using a venv, we need to work around sudo not"},{"line_number":66,"context_line":"# keeping the path even with -E."},{"line_number":67,"context_line":"PYTHON\u003d$(which python)"},{"line_number":68,"context_line":"PIP\u003d$(which pip)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"sudo -H -E ${PYTHON} /tmp/get-pip.py"},{"line_number":71,"context_line":""}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a68dd71_c86cf90a","line":68,"range":{"start_line":68,"start_character":0,"end_line":68,"end_character":16},"in_reply_to":"da6ed579_347c0272","updated":"2016-01-20 17:58:52.000000000","message":"Done","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"sudo -H -E ${PYTHON} /tmp/get-pip.py"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"echo `which pip`"},{"line_number":73,"context_line":"sudo -H -E ${PIP} install -r \"$(dirname $0)/../requirements.txt\""},{"line_number":74,"context_line":"u\u003d$(whoami)"},{"line_number":75,"context_line":"g\u003d$(groups | awk \u0027{print $1}\u0027)"}],"source_content_type":"text/x-sh","patch_set":1,"id":"da6ed579_545c1625","line":72,"range":{"start_line":72,"start_character":15,"end_line":72,"end_character":16},"updated":"2016-01-12 14:18:47.000000000","message":"debugging output?","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"sudo -H -E ${PYTHON} /tmp/get-pip.py"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"echo `which pip`"},{"line_number":73,"context_line":"sudo -H -E ${PIP} install -r \"$(dirname $0)/../requirements.txt\""},{"line_number":74,"context_line":"u\u003d$(whoami)"},{"line_number":75,"context_line":"g\u003d$(groups | awk \u0027{print $1}\u0027)"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a68dd71_885e0144","line":72,"range":{"start_line":72,"start_character":15,"end_line":72,"end_character":16},"in_reply_to":"da6ed579_545c1625","updated":"2016-01-20 17:58:52.000000000","message":"Done","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"8a39e13b19ffeee63abdf52ab146d66d13714232","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    sudo -H -E python /tmp/get-pip.py"},{"line_number":80,"context_line":"fi"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"sudo -H -E ${PYTHON} /tmp/get-pip.py"},{"line_number":83,"context_line":"PIP\u003d$(which pip)"},{"line_number":84,"context_line":"sudo -H -E ${PIP} install \"pip\u003e6.0,\u003c8.0\""},{"line_number":85,"context_line":"sudo -H -E ${PIP} install -r \"$(dirname $0)/../requirements.txt\""}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a68dd71_c8230757","line":82,"range":{"start_line":82,"start_character":34,"end_line":82,"end_character":36},"updated":"2016-01-23 02:10:34.000000000","message":"Presently this will only run if line 77 triggers.  Realistically, we can roll that back since 8.0.1 rolled back the change they were trying to implement, but in the long run I kind of think the same behavior is needed unless the user is ready to build into a VENV.  Maybe move this up into the conditional above?","commit_id":"29e963e1adacc0e33a5d11310f58d3a674ef600b"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"09d2bc9c0c4f55c889aad8428f0396b253c49539","unresolved":false,"context_lines":[{"line_number":58,"context_line":"fi"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"if [ -z \"${VENV-}\" ]; then"},{"line_number":61,"context_line":"    if [ ! -f ${VENV}/bin/activate ]; then"},{"line_number":62,"context_line":"        # only create venv if one doesn\u0027t exist"},{"line_number":63,"context_line":"        sudo -H -E virtualenv --no-site-packages ${VENV}"},{"line_number":64,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":6,"id":"7a5de9d1_76500a5f","line":61,"updated":"2016-01-28 17:02:04.000000000","message":"VENV is unbound an var here.","commit_id":"fd377fc43693cda9aaf0866f9eab1a7c72125509"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"09d2bc9c0c4f55c889aad8428f0396b253c49539","unresolved":false,"context_lines":[{"line_number":60,"context_line":"if [ -z \"${VENV-}\" ]; then"},{"line_number":61,"context_line":"    if [ ! -f ${VENV}/bin/activate ]; then"},{"line_number":62,"context_line":"        # only create venv if one doesn\u0027t exist"},{"line_number":63,"context_line":"        sudo -H -E virtualenv --no-site-packages ${VENV}"},{"line_number":64,"context_line":"    fi"},{"line_number":65,"context_line":"    source ${VENV}/bin/activate"},{"line_number":66,"context_line":"    VIRTUAL_ENV\u003d${VENV}"}],"source_content_type":"text/x-sh","patch_set":6,"id":"7a5de9d1_56dceee3","line":63,"range":{"start_line":63,"start_character":50,"end_line":63,"end_character":56},"updated":"2016-01-28 17:02:04.000000000","message":"same as above","commit_id":"fd377fc43693cda9aaf0866f9eab1a7c72125509"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"09d2bc9c0c4f55c889aad8428f0396b253c49539","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        # only create venv if one doesn\u0027t exist"},{"line_number":63,"context_line":"        sudo -H -E virtualenv --no-site-packages ${VENV}"},{"line_number":64,"context_line":"    fi"},{"line_number":65,"context_line":"    source ${VENV}/bin/activate"},{"line_number":66,"context_line":"    VIRTUAL_ENV\u003d${VENV}"},{"line_number":67,"context_line":"fi"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"# If we\u0027re using a venv, we need to work around sudo not"}],"source_content_type":"text/x-sh","patch_set":6,"id":"7a5de9d1_76feca39","line":66,"range":{"start_line":65,"start_character":8,"end_line":66,"end_character":22},"updated":"2016-01-28 17:02:04.000000000","message":"same as above.","commit_id":"fd377fc43693cda9aaf0866f9eab1a7c72125509"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"8c7f870056ea002f75895e28922c865d5a4f0ecb","unresolved":false,"context_lines":[{"line_number":58,"context_line":"fi"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"if [ -n \"${VENV-}\" ]; then"},{"line_number":61,"context_line":"    echo \"Using virtualenv for this installation.\""},{"line_number":62,"context_line":"    if [ ! -f ${VENV}/bin/activate ]; then"},{"line_number":63,"context_line":"        # only create venv if one doesn\u0027t exist"},{"line_number":64,"context_line":"        sudo -H -E virtualenv --no-site-packages ${VENV}"}],"source_content_type":"text/x-sh","patch_set":8,"id":"5a5ae5dd_c4e09c2b","line":61,"updated":"2016-02-08 13:08:35.000000000","message":"Nit:  We should likely prepend the message with something like \"NOTICE:\"","commit_id":"3c3c7811b388b73c48eee7691fca3b199319fc19"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"b70db48c731a13700214abc6667bc0448c51c9f5","unresolved":false,"context_lines":[{"line_number":58,"context_line":"fi"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"if [ -n \"${VENV-}\" ]; then"},{"line_number":61,"context_line":"    echo \"Using virtualenv for this installation.\""},{"line_number":62,"context_line":"    if [ ! -f ${VENV}/bin/activate ]; then"},{"line_number":63,"context_line":"        # only create venv if one doesn\u0027t exist"},{"line_number":64,"context_line":"        sudo -H -E virtualenv --no-site-packages ${VENV}"}],"source_content_type":"text/x-sh","patch_set":8,"id":"5a5ae5dd_cb93a9ff","line":61,"in_reply_to":"5a5ae5dd_c4e09c2b","updated":"2016-02-08 23:15:52.000000000","message":"Done","commit_id":"3c3c7811b388b73c48eee7691fca3b199319fc19"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"8c7f870056ea002f75895e28922c865d5a4f0ecb","unresolved":false,"context_lines":[{"line_number":70,"context_line":"    set -u"},{"line_number":71,"context_line":"    VIRTUAL_ENV\u003d${VENV}"},{"line_number":72,"context_line":"else"},{"line_number":73,"context_line":"    echo \"Not using virtualenv for this installation.\""},{"line_number":74,"context_line":"fi"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"# If we\u0027re using a venv, we need to work around sudo not"}],"source_content_type":"text/x-sh","patch_set":8,"id":"5a5ae5dd_84e62442","line":73,"updated":"2016-02-08 13:08:35.000000000","message":"same as above.","commit_id":"3c3c7811b388b73c48eee7691fca3b199319fc19"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"b70db48c731a13700214abc6667bc0448c51c9f5","unresolved":false,"context_lines":[{"line_number":70,"context_line":"    set -u"},{"line_number":71,"context_line":"    VIRTUAL_ENV\u003d${VENV}"},{"line_number":72,"context_line":"else"},{"line_number":73,"context_line":"    echo \"Not using virtualenv for this installation.\""},{"line_number":74,"context_line":"fi"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"# If we\u0027re using a venv, we need to work around sudo not"}],"source_content_type":"text/x-sh","patch_set":8,"id":"5a5ae5dd_8b9db10c","line":73,"in_reply_to":"5a5ae5dd_84e62442","updated":"2016-02-08 23:15:52.000000000","message":"Done","commit_id":"3c3c7811b388b73c48eee7691fca3b199319fc19"}],"scripts/test-bifrost-venv.sh":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":34,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost test.yaml"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"# Syntax check of dynamic inventory test path"},{"line_number":37,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost -e enable_venv\u003dtrue test-bifrost-create-vm.yaml --syntax-check --list-tasks"},{"line_number":38,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost -e enable_venv\u003dtrue test-bifrost-dynamic.yaml --syntax-check --list-tasks -e testing_user\u003dcirros"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"# Create the test VM"},{"line_number":41,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost -e enable_venv\u003dtrue test-bifrost-create-vm.yaml"}],"source_content_type":"text/x-sh","patch_set":1,"id":"da6ed579_3ff37b0c","line":38,"range":{"start_line":37,"start_character":12,"end_line":38,"end_character":154},"updated":"2016-01-12 14:18:47.000000000","message":"Totally just a nit, but we should likely wrap these at some point.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":34,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost test.yaml"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"# Syntax check of dynamic inventory test path"},{"line_number":37,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost -e enable_venv\u003dtrue test-bifrost-create-vm.yaml --syntax-check --list-tasks"},{"line_number":38,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost -e enable_venv\u003dtrue test-bifrost-dynamic.yaml --syntax-check --list-tasks -e testing_user\u003dcirros"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"# Create the test VM"},{"line_number":41,"context_line":"${VENV}/bin/ansible-playbook -vvvv -i inventory/localhost -e enable_venv\u003dtrue test-bifrost-create-vm.yaml"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a68dd71_2836f503","line":38,"range":{"start_line":37,"start_character":12,"end_line":38,"end_character":154},"in_reply_to":"da6ed579_3ff37b0c","updated":"2016-01-20 17:58:52.000000000","message":"Done","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    -e testing_user\u003dcirros \\"},{"line_number":59,"context_line":"    -e write_interfaces_file\u003dtrue \\"},{"line_number":60,"context_line":"    -e enable_inspector\u003dtrue \\"},{"line_number":61,"context_line":"    -e enable_venv\u003dtrue"},{"line_number":62,"context_line":"EXITCODE\u003d$?"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"if [ $EXITCODE !\u003d 0 ]; then"}],"source_content_type":"text/x-sh","patch_set":1,"id":"da6ed579_7fdd7313","line":61,"range":{"start_line":61,"start_character":4,"end_line":61,"end_character":23},"updated":"2016-01-12 14:18:47.000000000","message":"I\u0027ve not yet looked at the actual playbook changes, but I wonder if we can auto-detect this?  Just a thought.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    -e testing_user\u003dcirros \\"},{"line_number":59,"context_line":"    -e write_interfaces_file\u003dtrue \\"},{"line_number":60,"context_line":"    -e enable_inspector\u003dtrue \\"},{"line_number":61,"context_line":"    -e enable_venv\u003dtrue"},{"line_number":62,"context_line":"EXITCODE\u003d$?"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"if [ $EXITCODE !\u003d 0 ]; then"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a68dd71_b3101650","line":61,"range":{"start_line":61,"start_character":4,"end_line":61,"end_character":23},"in_reply_to":"da6ed579_7fdd7313","updated":"2016-01-20 17:58:52.000000000","message":"Like setting it if we have \"VENV\u003dpath\" in the environment? We could...might want to add that as a follow up though.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ec630226bf477c6051daf18fbdd5c14b459d8f05","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    echo \"****************************\""},{"line_number":66,"context_line":"    echo \"Test failed. See logs folder\""},{"line_number":67,"context_line":"    echo \"****************************\""},{"line_number":68,"context_line":"fi"},{"line_number":69,"context_line":"echo \"Making logs directory and collecting logs.\""},{"line_number":70,"context_line":"mkdir ${LOG_LOCATION}"},{"line_number":71,"context_line":"sudo cp /var/log/libvirt/baremetal_logs/testvm1_console.log ${LOG_LOCATION}"},{"line_number":72,"context_line":"sudo chown $USER ${LOG_LOCATION}/testvm1_console.log"},{"line_number":73,"context_line":"dmesg \u0026\u003e ${LOG_LOCATION}/dmesg.log"},{"line_number":74,"context_line":"sudo netstat -apn \u0026\u003e ${LOG_LOCATION}/netstat.log"},{"line_number":75,"context_line":"sudo iptables -L -n -v \u0026\u003e ${LOG_LOCATION}/iptables.log"},{"line_number":76,"context_line":"sudo cp /var/log/upstart/ironic-api.log ${LOG_LOCATION}/"},{"line_number":77,"context_line":"sudo chown $USER ${LOG_LOCATION}/ironic-api.log"},{"line_number":78,"context_line":"sudo cp /var/log/upstart/ironic-conductor.log ${LOG_LOCATION}/"},{"line_number":79,"context_line":"sudo chown $USER ${LOG_LOCATION}/ironic-conductor.log"},{"line_number":80,"context_line":"exit $EXITCODE"}],"source_content_type":"text/x-sh","patch_set":1,"id":"da6ed579_5f03cf73","line":80,"range":{"start_line":68,"start_character":2,"end_line":80,"end_character":14},"updated":"2016-01-12 14:18:47.000000000","message":"Totally unrelated thought, but as we create more test case scripts, we should likely have a info collection script that is an aside.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":12459,"name":"Stephanie Miller","email":"stephane@alum.mit.edu","username":"cinerama"},"change_message_id":"49573e2194f272d70d715e5aadc573e2901e36aa","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    echo \"****************************\""},{"line_number":66,"context_line":"    echo \"Test failed. See logs folder\""},{"line_number":67,"context_line":"    echo \"****************************\""},{"line_number":68,"context_line":"fi"},{"line_number":69,"context_line":"echo \"Making logs directory and collecting logs.\""},{"line_number":70,"context_line":"mkdir ${LOG_LOCATION}"},{"line_number":71,"context_line":"sudo cp /var/log/libvirt/baremetal_logs/testvm1_console.log ${LOG_LOCATION}"},{"line_number":72,"context_line":"sudo chown $USER ${LOG_LOCATION}/testvm1_console.log"},{"line_number":73,"context_line":"dmesg \u0026\u003e ${LOG_LOCATION}/dmesg.log"},{"line_number":74,"context_line":"sudo netstat -apn \u0026\u003e ${LOG_LOCATION}/netstat.log"},{"line_number":75,"context_line":"sudo iptables -L -n -v \u0026\u003e ${LOG_LOCATION}/iptables.log"},{"line_number":76,"context_line":"sudo cp /var/log/upstart/ironic-api.log ${LOG_LOCATION}/"},{"line_number":77,"context_line":"sudo chown $USER ${LOG_LOCATION}/ironic-api.log"},{"line_number":78,"context_line":"sudo cp /var/log/upstart/ironic-conductor.log ${LOG_LOCATION}/"},{"line_number":79,"context_line":"sudo chown $USER ${LOG_LOCATION}/ironic-conductor.log"},{"line_number":80,"context_line":"exit $EXITCODE"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a68dd71_332bc684","line":80,"range":{"start_line":68,"start_character":2,"end_line":80,"end_character":14},"in_reply_to":"da6ed579_5f03cf73","updated":"2016-01-20 17:58:52.000000000","message":"Agree; think that would be a good follow up too.","commit_id":"e4e352aa5e32bb8a4600619b23624593491431b8"},{"author":{"_account_id":5805,"name":"Chris Krelle","email":"nobodycam@gmail.com","username":"nobodycam"},"change_message_id":"22f567c27967d737e92b4bc633fe8f3617a7e68d","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    echo \"Test failed. See logs folder\""},{"line_number":80,"context_line":"    echo \"****************************\""},{"line_number":81,"context_line":"fi"},{"line_number":82,"context_line":"echo \"Making logs directory and collecting logs.\""},{"line_number":83,"context_line":"mkdir ${LOG_LOCATION}"},{"line_number":84,"context_line":"sudo cp /var/log/libvirt/baremetal_logs/testvm1_console.log ${LOG_LOCATION}"},{"line_number":85,"context_line":"sudo chown $USER ${LOG_LOCATION}/testvm1_console.log"},{"line_number":86,"context_line":"dmesg \u0026\u003e ${LOG_LOCATION}/dmesg.log"},{"line_number":87,"context_line":"sudo netstat -apn \u0026\u003e ${LOG_LOCATION}/netstat.log"},{"line_number":88,"context_line":"sudo iptables -L -n -v \u0026\u003e ${LOG_LOCATION}/iptables.log"},{"line_number":89,"context_line":"sudo cp /var/log/upstart/ironic-api.log ${LOG_LOCATION}/"},{"line_number":90,"context_line":"sudo chown $USER ${LOG_LOCATION}/ironic-api.log"},{"line_number":91,"context_line":"sudo cp /var/log/upstart/ironic-conductor.log ${LOG_LOCATION}/"},{"line_number":92,"context_line":"sudo chown $USER ${LOG_LOCATION}/ironic-conductor.log"},{"line_number":93,"context_line":"exit $EXITCODE"}],"source_content_type":"text/x-sh","patch_set":9,"id":"3a57f1b5_8623dca6","line":93,"range":{"start_line":82,"start_character":0,"end_line":93,"end_character":14},"updated":"2016-02-11 22:27:41.000000000","message":"we should update this to use collect-test-info.sh so we do not duplicate the code.","commit_id":"b055d6affcf2cd76d97a05e974b2012a7a9143fe"}]}
