)]}'
{"devstack-vm-gate.sh":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"88d310f126c937f770912b62c4b68e98b4c48f76","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"function setup_multinode_connectivity {"},{"line_number":64,"context_line":"    # where we should write the controller multinode changes"},{"line_number":65,"context_line":"    local localrc\u003d${1:-$BASE/new/devstack/localrc}"},{"line_number":66,"context_line":"    # should the worker be new or old (used for grenade)"},{"line_number":67,"context_line":"    local old_or_new\u003d${2:-\"new\"}"},{"line_number":68,"context_line":"    set -x  # for now enabling debug and do not turn it off"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    if [[ \"$old_or_new\" \u003d\u003d \"new\" ]]; then"}],"source_content_type":"text/x-sh","patch_set":12,"id":"9a41bdd9_ba76b3d6","line":67,"range":{"start_line":65,"start_character":0,"end_line":67,"end_character":32},"updated":"2015-07-16 20:23:21.000000000","message":"these parameters were added so it could be reused by the grenade code path","commit_id":"2940d2ee6c2a69f2ccbe5e6bbba40c192584f443"},{"author":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"change_message_id":"fa1a3b02cfd0f53e9db511817bc84b2d11ca0223","unresolved":false,"context_lines":[{"line_number":93,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":94,"context_line":"EOF"},{"line_number":95,"context_line":"    elif [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":96,"context_line":"        ovs_gre_bridge \"br-ex\" $PRIMARY_NODE \"True\" 1 \\"},{"line_number":97,"context_line":"                       $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK \\"},{"line_number":98,"context_line":"                       $SUB_NODES"},{"line_number":99,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":12,"id":"9a41bdd9_76ad7187","line":96,"updated":"2015-07-17 18:31:55.000000000","message":"br-ex? Or should it be br-tun, since I think in our docs we use br-tun for tunnel interfaces and br-ex for physical interfaces\n\nhttp://docs.openstack.org/networking-guide/scenario_legacy_ovs.html#architecture","commit_id":"2940d2ee6c2a69f2ccbe5e6bbba40c192584f443"},{"author":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"change_message_id":"d0c41cd90b548e373252b61c9c1186aa935fd345","unresolved":false,"context_lines":[{"line_number":93,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":94,"context_line":"EOF"},{"line_number":95,"context_line":"    elif [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":96,"context_line":"        ovs_gre_bridge \"br-ex\" $PRIMARY_NODE \"True\" 1 \\"},{"line_number":97,"context_line":"                       $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK \\"},{"line_number":98,"context_line":"                       $SUB_NODES"},{"line_number":99,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":12,"id":"3a50d1a3_4a3a2838","line":96,"in_reply_to":"5a43c5e1_ddb5cbd0","updated":"2015-07-20 14:32:26.000000000","message":"OK - that\u0027s reasonable to me","commit_id":"2940d2ee6c2a69f2ccbe5e6bbba40c192584f443"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8ce54f102a4df375e8e77cbfbbcc692e6e742506","unresolved":false,"context_lines":[{"line_number":93,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":94,"context_line":"EOF"},{"line_number":95,"context_line":"    elif [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":96,"context_line":"        ovs_gre_bridge \"br-ex\" $PRIMARY_NODE \"True\" 1 \\"},{"line_number":97,"context_line":"                       $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK \\"},{"line_number":98,"context_line":"                       $SUB_NODES"},{"line_number":99,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":12,"id":"5a43c5e1_ddb5cbd0","line":96,"in_reply_to":"9a41bdd9_76ad7187","updated":"2015-07-18 17:54:02.000000000","message":"so that is in the existing code, it\u0027s just a move. I\u0027d rather do that as a follow up fix.","commit_id":"2940d2ee6c2a69f2ccbe5e6bbba40c192584f443"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"88d310f126c937f770912b62c4b68e98b4c48f76","unresolved":false,"context_lines":[{"line_number":209,"context_line":""},{"line_number":210,"context_line":"    # TODO(sdague): debugging, do not merge with this in."},{"line_number":211,"context_line":"    echo \"We are $(pwd) and trying to write $localrc_file\""},{"line_number":212,"context_line":"    echo \"$(ls -l)\""},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"    cat \u003c\u003cEOF \u003e\u003e\"$localrc_file\""},{"line_number":215,"context_line":"USE_SCREEN\u003dFalse"}],"source_content_type":"text/x-sh","patch_set":12,"id":"9a41bdd9_3a94e3e6","line":212,"updated":"2015-07-16 20:23:21.000000000","message":"this is gorp for debug, I\u0027ll get rid of it on next rev.","commit_id":"2940d2ee6c2a69f2ccbe5e6bbba40c192584f443"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"88d310f126c937f770912b62c4b68e98b4c48f76","unresolved":false,"context_lines":[{"line_number":576,"context_line":""},{"line_number":577,"context_line":"    echo \"Running grenade ...\""},{"line_number":578,"context_line":"    echo \"This takes a good 30 minutes or more\""},{"line_number":579,"context_line":"    cd $BASE/new/grenade"},{"line_number":580,"context_line":"    sudo -H -u stack stdbuf -oL -eL ./grenade.sh"},{"line_number":581,"context_line":"    cd $BASE/new/devstack"},{"line_number":582,"context_line":""}],"source_content_type":"text/x-sh","patch_set":12,"id":"9a41bdd9_5a1c4777","line":579,"updated":"2015-07-16 20:23:21.000000000","message":"strictly speaking this move was probably not needed, but it was consistent to get closer to the command being run.","commit_id":"2940d2ee6c2a69f2ccbe5e6bbba40c192584f443"},{"author":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"change_message_id":"cd0b61f0304d918d244420c97ae9b99115045d58","unresolved":false,"context_lines":[{"line_number":93,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":94,"context_line":"EOF"},{"line_number":95,"context_line":"    elif [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":96,"context_line":"        ovs_gre_bridge \"br-ex\" $PRIMARY_NODE \"True\" 1 \\"},{"line_number":97,"context_line":"                       $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK \\"},{"line_number":98,"context_line":"                       $SUB_NODES"},{"line_number":99,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":13,"id":"3a50d1a3_d5dfe50a","line":96,"updated":"2015-07-23 18:28:00.000000000","message":"We should probably name this bridge differently, since it\u0027s a tunnel that is being established between the nodes - because we use the br-ex \"name\" in the networking guide for a different purpose. That\u0027s at least my .02 cents","commit_id":"4ef1cb4863c48b17bce9ada532233172f3d17047"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"83511c9f94278f130d7495f1a3503401a6a168dd","unresolved":false,"context_lines":[{"line_number":123,"context_line":"        remote_command $NODE \"cat /tmp/tmp_hosts | sudo tee --append /etc/hosts \u003e /dev/null\""},{"line_number":124,"context_line":"        cp sub_localrc /tmp/tmp_sub_localrc"},{"line_number":125,"context_line":"        echo \"HOST_IP\u003d$NODE\" \u003e\u003e /tmp/tmp_sub_localrc"},{"line_number":126,"context_line":"        remote_copy_file /tmp/tmp_sub_localrc $NODE:$BASE/$old_or_new/devstack/localrc"},{"line_number":127,"context_line":"        remote_copy_file local.conf $NODE:$BASE/$old_or_new/devstack/local.conf"},{"line_number":128,"context_line":"    done"},{"line_number":129,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":13,"id":"3a50d1a3_50451cb1","line":126,"updated":"2015-07-23 21:14:44.000000000","message":"I am not super fond of the asymmetry here where the primary node localrc path is set as $1 to this function but we hardcode the path to the subnode localrcs here. I have a slight preference to add this as another parameter for completeness but that isn\u0027t yet necessary so won\u0027t -1 over this.\n\nSince d-g doesn\u0027t have much of a public api beyond the hooks it should be safe to change this in the future if we need to.","commit_id":"4ef1cb4863c48b17bce9ada532233172f3d17047"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"3931ffc6d1bf7352fe88e99feac65fcbbad9efd3","unresolved":false,"context_lines":[{"line_number":127,"context_line":"    # set up ssh_known_host files based on hostname"},{"line_number":128,"context_line":"    for HOSTNAME in `cat /tmp/tmp_hosts | cut -d\u0027 \u0027 -f2`; do"},{"line_number":129,"context_line":"        ssh-keyscan $HOSTNAME \u003e\u003e /tmp/tmp_ssh_known_hosts"},{"line_number":130,"context_line":"    done"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    $ANSIBLE all --sudo -f 5 -i \"$WORKSPACE/inventory\" -m copy \\"},{"line_number":133,"context_line":"             -a \"src\u003d/tmp/tmp_ssh_known_hosts dest\u003d/etc/ssh/ssh_known_hosts mode\u003d0444\""}],"source_content_type":"text/x-sh","patch_set":17,"id":"3a50d1a3_c77538fa","line":130,"updated":"2015-07-28 21:56:54.000000000","message":"Good thing this isn\u0027t python.","commit_id":"66f53f0e10fb482536d6470793f1cd25eb826f3a"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"64c14daaf05c742766a10034b73e6038d6a5fe98","unresolved":false,"context_lines":[{"line_number":127,"context_line":"    # set up ssh_known_host files based on hostname"},{"line_number":128,"context_line":"    for HOSTNAME in `cat /tmp/tmp_hosts | cut -d\u0027 \u0027 -f2`; do"},{"line_number":129,"context_line":"        ssh-keyscan $HOSTNAME \u003e\u003e /tmp/tmp_ssh_known_hosts"},{"line_number":130,"context_line":"    done"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    $ANSIBLE all --sudo -f 5 -i \"$WORKSPACE/inventory\" -m copy \\"},{"line_number":133,"context_line":"             -a \"src\u003d/tmp/tmp_ssh_known_hosts dest\u003d/etc/ssh/ssh_known_hosts mode\u003d0444\""}],"source_content_type":"text/x-sh","patch_set":17,"id":"3a50d1a3_5e56cdce","line":130,"in_reply_to":"3a50d1a3_c77538fa","updated":"2015-07-29 00:12:08.000000000","message":"yeh, I noticed it when I was refactoring. It didn\u0027t seem worth respinning everything for this change.","commit_id":"66f53f0e10fb482536d6470793f1cd25eb826f3a"}]}
