)]}'
{"devstack-vm-gate.sh":[{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"ef678a8b1f941f3351ac283122ab632d568afa85","unresolved":false,"context_lines":[{"line_number":463,"context_line":"        done"},{"line_number":464,"context_line":"        PRIMARY_NODE\u003d`cat /etc/nodepool/primary_node_private`"},{"line_number":465,"context_line":"        SUB_NODES\u003d`cat /etc/nodepool/sub_nodes_private`"},{"line_number":466,"context_line":"        NODES\u003d\"$PRIMARY_NODE $SUB_NODES\""},{"line_number":467,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON\" -ne \u00271\u0027 ]]; then"},{"line_number":468,"context_line":"            (source $BASE/new/devstack/functions-common; install_package bridge-utils)"},{"line_number":469,"context_line":"            gre_bridge \"flat_if\" \"pub_if\" 1 $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK $NODES"}],"source_content_type":"text/x-sh","patch_set":2,"id":"ba7be1f8_78c0a27c","line":466,"updated":"2015-02-24 01:46:28.000000000","message":"Can someone comment on this.\nWhy the bridges are only configured in nodes, when the DEVSTACK_GATE_NEUTRON is not equal \"1\".\nDoes it mean that NEUTRON does not requires the bridges on the nodes?","commit_id":"1abf4bdceac92da476c8905b51ed205a862e7692"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"9ca6dbcfb6c07a3c7cb4d987298259f53f02fac5","unresolved":false,"context_lines":[{"line_number":463,"context_line":"        done"},{"line_number":464,"context_line":"        PRIMARY_NODE\u003d`cat /etc/nodepool/primary_node_private`"},{"line_number":465,"context_line":"        SUB_NODES\u003d`cat /etc/nodepool/sub_nodes_private`"},{"line_number":466,"context_line":"        NODES\u003d\"$PRIMARY_NODE $SUB_NODES\""},{"line_number":467,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON\" -ne \u00271\u0027 ]]; then"},{"line_number":468,"context_line":"            (source $BASE/new/devstack/functions-common; install_package bridge-utils)"},{"line_number":469,"context_line":"            gre_bridge \"flat_if\" \"pub_if\" 1 $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK $NODES"}],"source_content_type":"text/x-sh","patch_set":4,"id":"ba7be1f8_2cb3e998","line":466,"updated":"2015-02-26 00:09:45.000000000","message":"Here is my understanding about creating the bridges here in L468.\nThese bridges are created in the sub-nodes only for \"nova-net\" since nova-network support multi-host and not Neutron.\n\nIs my understanding right?\n\nIf so, where in this file the \"bridges\" are created for \"Neutron Network\".\n\nCan anyone provide some information about this.","commit_id":"84b2e706fea80e46daf8349e201f951b1dfce63b"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_6296e5f1","line":84,"updated":"2015-03-13 19:09:32.000000000","message":"not sure I understand the extent of this TODO","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_08a1c3f7","line":84,"in_reply_to":"9a80dd14_6296e5f1","updated":"2015-03-13 21:47:28.000000000","message":"Will remove the TODO I added it during my first patch and now I understood the impact of this flag.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_22ef8db2","line":85,"updated":"2015-03-13 19:09:32.000000000","message":"shouldn\u0027t this simply be:\n\nif [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\"  ]]; then","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"08c31d0c31a682e3445aa1ca57ef17c3ab422377","unresolved":false,"context_lines":[{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_68ccff6a","line":85,"in_reply_to":"9a80dd14_22ef8db2","updated":"2015-03-13 21:55:00.000000000","message":"This may not work with just the NEUTRON_DVR.\nSince DEVSTACK_GATE_NEUTRON decides if it needs \"n-net\" or not.\nCombination will work on it.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_88c13382","line":85,"in_reply_to":"9a80dd14_22ef8db2","updated":"2015-03-13 21:47:28.000000000","message":"Yes it should still work with DEVSTACK_GATE_NEUTRON_DVR","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"},{"line_number":89,"context_line":"                MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\""}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_c237914b","line":86,"updated":"2015-03-13 19:09:32.000000000","message":"femto typo","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"},{"line_number":89,"context_line":"                MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\""}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_083d438f","line":86,"in_reply_to":"9a80dd14_c237914b","updated":"2015-03-13 21:47:28.000000000","message":"Will fix the typo.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"},{"line_number":89,"context_line":"                MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\""},{"line_number":90,"context_line":"            fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_4271e10a","line":87,"updated":"2015-03-13 19:09:32.000000000","message":"this can simply be:\n\nMY_ENABLED_SERVICES+\u003d\",q-l3\"","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"b51fb25a2be772a56f3d75e9bbd6504af1af365b","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"},{"line_number":89,"context_line":"                MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\""},{"line_number":90,"context_line":"            fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_48d3bbd4","line":87,"in_reply_to":"9a80dd14_285767cb","updated":"2015-03-13 22:03:38.000000000","message":"noticed the +\u003d?","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            # TODO(Swami): Make sure if DEVSTACK_GATE_NEUTRON is reqd here"},{"line_number":85,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":86,"context_line":"                # For DVR mutli-node, run l3 agent on all compute nodes."},{"line_number":87,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3,ceilometer-acompute\""},{"line_number":88,"context_line":"            else"},{"line_number":89,"context_line":"                MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\""},{"line_number":90,"context_line":"            fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_285767cb","line":87,"in_reply_to":"9a80dd14_4271e10a","updated":"2015-03-13 21:47:28.000000000","message":"I thought at least we need \"n-cpu and q-l3\u0027.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":110,"context_line":"        echo \"NETWORK_GATEWAY\u003d10.1.0.1\" \u003e\u003e\"$localrc_file\""},{"line_number":111,"context_line":"    fi"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"    # Make sure you enable the proper dvr agent mode for the nodes"},{"line_number":114,"context_line":"    if [[ \"$DEVSTACK_GATE_TOPOLOGY\" !\u003d \"aio\" ]]; then"},{"line_number":115,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":116,"context_line":"            if [[ $role \u003d sub ]]; then"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_5d00e000","line":113,"updated":"2015-03-13 19:09:32.000000000","message":"I\u0027d to the other way around:\n\nif dvr enabled:\n  if aiopcpu and role \u003d sub:\n    set dvr\n  else\n    set dvr_snat\n\nIt\u0027s less crowded.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":110,"context_line":"        echo \"NETWORK_GATEWAY\u003d10.1.0.1\" \u003e\u003e\"$localrc_file\""},{"line_number":111,"context_line":"    fi"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"    # Make sure you enable the proper dvr agent mode for the nodes"},{"line_number":114,"context_line":"    if [[ \"$DEVSTACK_GATE_TOPOLOGY\" !\u003d \"aio\" ]]; then"},{"line_number":115,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":116,"context_line":"            if [[ $role \u003d sub ]]; then"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_68fb1fc1","line":113,"in_reply_to":"9a80dd14_5d00e000","updated":"2015-03-13 21:47:28.000000000","message":"will fix this.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":362,"context_line":"            fi"},{"line_number":363,"context_line":"            echo \"DATABASE_HOST\u003d$primary_node\" \u003e\u003e\"$localrc_file\""},{"line_number":364,"context_line":"            if [[ $original_enabled_services \u003d~ \"mysql\" ]]; then"},{"line_number":365,"context_line":"                echo \"DATABASE_TYPE\u003dmysql\"  \u003e\u003e\"$localrc_file\""},{"line_number":366,"context_line":"            else"},{"line_number":367,"context_line":"                echo \"DATABASE_TYPE\u003dpostgresql\"  \u003e\u003e\"$localrc_file\""},{"line_number":368,"context_line":"            fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_c23dd1de","line":365,"updated":"2015-03-13 19:09:32.000000000","message":"please leave these spaces alone, it makes the diff less busy","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"b51fb25a2be772a56f3d75e9bbd6504af1af365b","unresolved":false,"context_lines":[{"line_number":362,"context_line":"            fi"},{"line_number":363,"context_line":"            echo \"DATABASE_HOST\u003d$primary_node\" \u003e\u003e\"$localrc_file\""},{"line_number":364,"context_line":"            if [[ $original_enabled_services \u003d~ \"mysql\" ]]; then"},{"line_number":365,"context_line":"                echo \"DATABASE_TYPE\u003dmysql\"  \u003e\u003e\"$localrc_file\""},{"line_number":366,"context_line":"            else"},{"line_number":367,"context_line":"                echo \"DATABASE_TYPE\u003dpostgresql\"  \u003e\u003e\"$localrc_file\""},{"line_number":368,"context_line":"            fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_a8e357a2","line":365,"in_reply_to":"9a80dd14_686a3fb4","updated":"2015-03-13 22:03:38.000000000","message":"the warnings are local to your env, aren\u0027t they?","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":362,"context_line":"            fi"},{"line_number":363,"context_line":"            echo \"DATABASE_HOST\u003d$primary_node\" \u003e\u003e\"$localrc_file\""},{"line_number":364,"context_line":"            if [[ $original_enabled_services \u003d~ \"mysql\" ]]; then"},{"line_number":365,"context_line":"                echo \"DATABASE_TYPE\u003dmysql\"  \u003e\u003e\"$localrc_file\""},{"line_number":366,"context_line":"            else"},{"line_number":367,"context_line":"                echo \"DATABASE_TYPE\u003dpostgresql\"  \u003e\u003e\"$localrc_file\""},{"line_number":368,"context_line":"            fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_686a3fb4","line":365,"in_reply_to":"9a80dd14_c23dd1de","updated":"2015-03-13 21:47:28.000000000","message":"Based on Tox warnings I fixed the space in L365 and L367","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":561,"context_line":"            remote_command $NODE \"cd $BASE/new/devstack; source $WORKSPACE/test_env.sh; export -n PROJECTS; sudo -H -u stack stdbuf -oL -eL ./stack.sh \u003e /dev/null\""},{"line_number":562,"context_line":"        done"},{"line_number":563,"context_line":""},{"line_number":564,"context_line":"        if [[ $DEVSTACK_GATE_NEUTRON -eq \"1\" ]]; then"},{"line_number":565,"context_line":"            # NOTE(afazekas): The cirros lp#1301958 does not support MTU setting via dhcp,"},{"line_number":566,"context_line":"            # simplest way the have tunneling working, with dvsm, without increasing the host system MTU"},{"line_number":567,"context_line":"            # is to decreasion the MTU on br-ex"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_c26f91fa","line":564,"updated":"2015-03-13 19:09:32.000000000","message":"this doesn\u0027t seem to belong here.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":561,"context_line":"            remote_command $NODE \"cd $BASE/new/devstack; source $WORKSPACE/test_env.sh; export -n PROJECTS; sudo -H -u stack stdbuf -oL -eL ./stack.sh \u003e /dev/null\""},{"line_number":562,"context_line":"        done"},{"line_number":563,"context_line":""},{"line_number":564,"context_line":"        if [[ $DEVSTACK_GATE_NEUTRON -eq \"1\" ]]; then"},{"line_number":565,"context_line":"            # NOTE(afazekas): The cirros lp#1301958 does not support MTU setting via dhcp,"},{"line_number":566,"context_line":"            # simplest way the have tunneling working, with dvsm, without increasing the host system MTU"},{"line_number":567,"context_line":"            # is to decreasion the MTU on br-ex"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_28568706","line":564,"in_reply_to":"9a80dd14_c26f91fa","updated":"2015-03-13 21:47:28.000000000","message":"Again this change was to fix the tox warnings ( L564).","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f2c12a0f50911042dbd7406bf0203086c5df4a1c","unresolved":false,"context_lines":[{"line_number":572,"context_line":"fi"},{"line_number":573,"context_line":""},{"line_number":574,"context_line":"if [[ \"$DEVSTACK_GATE_UNSTACK\" -eq \"1\" ]]; then"},{"line_number":575,"context_line":"    sudo -H -u stack ./unstack.sh"},{"line_number":576,"context_line":"fi"},{"line_number":577,"context_line":""},{"line_number":578,"context_line":"echo \"Removing sudo privileges for devstack user\""}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_a26a9dea","line":575,"updated":"2015-03-13 19:09:32.000000000","message":"this change is irrelevant","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f226c642f3d2b3c897c5b88af25e836e1f54fab7","unresolved":false,"context_lines":[{"line_number":572,"context_line":"fi"},{"line_number":573,"context_line":""},{"line_number":574,"context_line":"if [[ \"$DEVSTACK_GATE_UNSTACK\" -eq \"1\" ]]; then"},{"line_number":575,"context_line":"    sudo -H -u stack ./unstack.sh"},{"line_number":576,"context_line":"fi"},{"line_number":577,"context_line":""},{"line_number":578,"context_line":"echo \"Removing sudo privileges for devstack user\""}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a80dd14_281f675c","line":575,"in_reply_to":"9a80dd14_a26a9dea","updated":"2015-03-13 21:47:28.000000000","message":"Tox complained about the indent. That\u0027s the reason I fixed this single space  in L575.","commit_id":"11cad72288ead96ac0adce3e9a33d5fb86eaa96e"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"67edeff77b3a0f073cad9854c5e1f9de61fbfe45","unresolved":false,"context_lines":[{"line_number":118,"context_line":"            # If primary node then set L3-agent mode to \"dvr_snat\""},{"line_number":119,"context_line":"            echo \"Q_DVR_MODE\u003ddvr_snat\" \u003e\u003e\"$localrc_file\""},{"line_number":120,"context_line":"        fi"},{"line_number":121,"context_line":"    fi "},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    cat \u003c\u003cEOF \u003e\u003e\"$localrc_file\""},{"line_number":124,"context_line":"USE_SCREEN\u003dFalse"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a80dd14_48149b4c","line":121,"updated":"2015-03-13 22:09:54.000000000","message":"space","commit_id":"31c2a3bacbc203bc4e188a6672e18f714571e18b"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"8f1ac2e4986efe935e273fc9e2244fddcc2738f3","unresolved":false,"context_lines":[{"line_number":118,"context_line":"            # If primary node then set L3-agent mode to \"dvr_snat\""},{"line_number":119,"context_line":"            echo \"Q_DVR_MODE\u003ddvr_snat\" \u003e\u003e\"$localrc_file\""},{"line_number":120,"context_line":"        fi"},{"line_number":121,"context_line":"    fi "},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    cat \u003c\u003cEOF \u003e\u003e\"$localrc_file\""},{"line_number":124,"context_line":"USE_SCREEN\u003dFalse"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a80dd14_b3566828","line":121,"in_reply_to":"9a80dd14_48149b4c","updated":"2015-03-13 22:37:22.000000000","message":"Armando I have fixed all the space issues in this patch.\nSomehow it is all messed up in my setup.","commit_id":"31c2a3bacbc203bc4e188a6672e18f714571e18b"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"623db807741a53b14c986584991c2c0e7f5da338","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                # For DVR multi-node, run l3 agent on all compute nodes."},{"line_number":86,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3\""},{"line_number":87,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":13,"id":"9a80dd14_ee62b73c","line":84,"updated":"2015-03-13 23:06:26.000000000","message":"this won\u0027t work, I believe\n\nIn https://review.openstack.org/#/c/158415/6/jenkins/jobs/devstack-gate.yaml\n\nyou have:\n\n export DEVSTACK_GATE_NEUTRON\u003d1\n export DEVSTACK_GATE_NEUTRON_DVR\u003d1\n\nSo you get in branch 82, and won\u0027t in branch 84. Or I am barking up at the wrong tree?","commit_id":"81144bf26b34c319d09f9583c9d7644ba879ba7d"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"37b19b78149c1a3120644bd3da4178cdca6c50c3","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                # For DVR multi-node, run l3 agent on all compute nodes."},{"line_number":86,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3\""},{"line_number":87,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":13,"id":"9a80dd14_aa21544e","line":84,"in_reply_to":"9a80dd14_ee62b73c","updated":"2015-03-16 16:02:51.000000000","message":"You are right.\nThis might be a problem, so I might have to check for \"if neutron\" and \"if not dvr\" at line 82 and it should solve the problem.\nI will fix this and push a patch.","commit_id":"81144bf26b34c319d09f9583c9d7644ba879ba7d"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"5dea2b4350e14f6c9338219b1fd689a932c9d3e3","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                # For DVR multi-node, run l3 agent on all compute nodes."},{"line_number":86,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3\""},{"line_number":87,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":13,"id":"9a80dd14_cae69faf","line":84,"in_reply_to":"9a80dd14_ee62b73c","updated":"2015-03-16 07:59:36.000000000","message":"it\u0027s my understanding too","commit_id":"81144bf26b34c319d09f9583c9d7644ba879ba7d"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"2d818529cfe84f544fb219bc2084796215a04d20","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -ne \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                # For DVR multi-node, run l3 agent on all compute nodes."},{"line_number":86,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3\""},{"line_number":87,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":14,"id":"9a80dd14_8a6e50fe","line":84,"updated":"2015-03-16 16:12:50.000000000","message":"please look at my comment on PS7. I don\u0027t think we\u0027d want to get rid of ceilometer-acompute in DVR mode.","commit_id":"d6db959381a4da91b98b2a454f53319b3546fe68"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"bc893a59cfed03e6cd48b327df8173efa1389b84","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -ne \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                # For DVR multi-node, run l3 agent on all compute nodes."},{"line_number":86,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,q-l3\""},{"line_number":87,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":14,"id":"9a80dd14_85100301","line":84,"in_reply_to":"9a80dd14_8a6e50fe","updated":"2015-03-16 16:21:30.000000000","message":"Yes I fixed it. Pushed one.","commit_id":"d6db959381a4da91b98b2a454f53319b3546fe68"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"722f4d6ac01f4f41ae4aa9aca3705b5ee7481f69","unresolved":false,"context_lines":[{"line_number":490,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":491,"context_line":"FLAT_INTERFACE\u003dflat_if"},{"line_number":492,"context_line":"PUBLIC_INTERFACE\u003dpub_if"},{"line_number":493,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":494,"context_line":"EOF"},{"line_number":495,"context_line":"        fi"},{"line_number":496,"context_line":""}],"source_content_type":"text/x-sh","patch_set":15,"id":"9a80dd14_ea450744","line":493,"updated":"2015-03-16 17:20:11.000000000","message":"aren\u0027t FLAT_INTERFACE and MULTI_HOST nova-network stuffs?","commit_id":"f84b4b19f3e2581f15c1d444c0725df1a7d1241f"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"72a2c72c7735a9b73a72190d5e4bacf3902af4b9","unresolved":false,"context_lines":[{"line_number":490,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":491,"context_line":"FLAT_INTERFACE\u003dflat_if"},{"line_number":492,"context_line":"PUBLIC_INTERFACE\u003dpub_if"},{"line_number":493,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":494,"context_line":"EOF"},{"line_number":495,"context_line":"        fi"},{"line_number":496,"context_line":""}],"source_content_type":"text/x-sh","patch_set":15,"id":"9a80dd14_cd104b52","line":493,"in_reply_to":"9a80dd14_1a729c11","updated":"2015-03-17 00:26:12.000000000","message":"while i\u0027m not familiar with nova-network multihost,\nFLAT_INTERFACE seems not relevant to DVR, which is primarily tunnel-based.","commit_id":"f84b4b19f3e2581f15c1d444c0725df1a7d1241f"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"8c248ba37db95612acfd5f8298b82399880876eb","unresolved":false,"context_lines":[{"line_number":490,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":491,"context_line":"FLAT_INTERFACE\u003dflat_if"},{"line_number":492,"context_line":"PUBLIC_INTERFACE\u003dpub_if"},{"line_number":493,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":494,"context_line":"EOF"},{"line_number":495,"context_line":"        fi"},{"line_number":496,"context_line":""}],"source_content_type":"text/x-sh","patch_set":15,"id":"9a80dd14_7ec5223c","line":493,"in_reply_to":"9a80dd14_cd104b52","updated":"2015-03-17 16:18:52.000000000","message":"Yes it makes sense, I will try to fix this in the next patch.","commit_id":"f84b4b19f3e2581f15c1d444c0725df1a7d1241f"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"b8918e96efe11f139b4db0d8dff95f35b6459566","unresolved":false,"context_lines":[{"line_number":490,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":491,"context_line":"FLAT_INTERFACE\u003dflat_if"},{"line_number":492,"context_line":"PUBLIC_INTERFACE\u003dpub_if"},{"line_number":493,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":494,"context_line":"EOF"},{"line_number":495,"context_line":"        fi"},{"line_number":496,"context_line":""}],"source_content_type":"text/x-sh","patch_set":15,"id":"9a80dd14_1a729c11","line":493,"in_reply_to":"9a80dd14_d631caee","updated":"2015-03-16 21:54:56.000000000","message":"my point is that there are no devstack code to handle these for neutron.","commit_id":"f84b4b19f3e2581f15c1d444c0725df1a7d1241f"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"f9fa1bb74f42dfdc5ed6041bb8aebcac90019e96","unresolved":false,"context_lines":[{"line_number":490,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":491,"context_line":"FLAT_INTERFACE\u003dflat_if"},{"line_number":492,"context_line":"PUBLIC_INTERFACE\u003dpub_if"},{"line_number":493,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":494,"context_line":"EOF"},{"line_number":495,"context_line":"        fi"},{"line_number":496,"context_line":""}],"source_content_type":"text/x-sh","patch_set":15,"id":"9a80dd14_d631caee","line":493,"in_reply_to":"9a80dd14_ea450744","updated":"2015-03-16 18:28:37.000000000","message":"Hi Yamamoto, MULTI_HOST is also applicable for DVR since DVR can be tested with multi node setup.\nAs far as the \"FLAT_INTERFACE\" I was assuming that it is similar to a \"br-eth\" interface.\n\nSo my question here is how are the bridges for the private and public interface configured in a \u0027Primary Node\"?\nI am not sure where in this script it is configured for the Primary Node for a regular neutron network.\n\nAny pointers will be helpful.","commit_id":"f84b4b19f3e2581f15c1d444c0725df1a7d1241f"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"30b48ef2ee6d17f55467b01c907ba1de41d2f3d8","unresolved":false,"context_lines":[{"line_number":483,"context_line":"            # We need to figure out how we can provide the DATA_IP in here for"},{"line_number":484,"context_line":"            # second interface."},{"line_number":485,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""},{"line_number":486,"context_line":"PUBLIC_INTERFACE\u003deth4"},{"line_number":487,"context_line":"DATA_IP\u003d"},{"line_number":488,"context_line":"SERVICE_HOST\u003d${DEVSTACK_GATE_XENAPI_DOMU_IP}"},{"line_number":489,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-eth1"}],"source_content_type":"text/x-sh","patch_set":16,"id":"9a80dd14_e8a4f4ba","line":486,"updated":"2015-03-17 17:54:24.000000000","message":"I need some advice on how I can set the DATA_IP in here for the multinode setup.\nI do see that there is an argument being set for the \"SERVICE_HOST\" IP, similar to that we might need to pass in the \"DATA_IP\".","commit_id":"9ab4c62ea86d5337a15c11929d4fe6d2fa54e5bc"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"31070f612a7f45b3b0633b97f121c6e05350ef92","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        # TODO(afazekas): Move to the feature grid"},{"line_number":80,"context_line":"        # TODO(afazekas): add c-vol"},{"line_number":81,"context_line":"        if [[ $role \u003d sub ]]; then"},{"line_number":82,"context_line":"            if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -ne \"1\" ]]; then"},{"line_number":83,"context_line":"                MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\""},{"line_number":84,"context_line":"            elif [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                # For DVR multi-node, run l3 agent on all compute nodes."}],"source_content_type":"text/x-sh","patch_set":17,"id":"1a6ced46_8448db5c","line":82,"updated":"2015-03-23 17:08:04.000000000","message":"this can become simpler, you can do:\n\n if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \"1\" ]]; then\n  MY_ENABLED_SERVICES\u003d\"q-agt,n-cpu,ceilometer-acompute\"\n  if [ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then\n   MY_ENABLED_SERVICES+\u003d\"q-l3\"\n else\n  MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\"","commit_id":"69b3e4004c802fba9de0962834a7c56063e6044a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"31070f612a7f45b3b0633b97f121c6e05350ef92","unresolved":false,"context_lines":[{"line_number":477,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":478,"context_line":"EOF"},{"line_number":479,"context_line":"        fi"},{"line_number":480,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON\" -eq \u00271\u0027 ]] \u0026\u0026 [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":481,"context_line":"            # For DVR multi-node setup we need to setup the physical interfaces"},{"line_number":482,"context_line":"            # and ovs_bridge mappings along with the DATA_IP."},{"line_number":483,"context_line":"            # We need to figure out how we can provide the DATA_IP in here for"}],"source_content_type":"text/x-sh","patch_set":17,"id":"1a6ced46_c4ee5322","line":480,"updated":"2015-03-23 17:08:04.000000000","message":"this can simply be:\n\n  if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]\n\nIt makes no sense to have DEVSTACK_GATE_NEUTRON_DVR\u003d1 and DEVSTACK_GATE_NEUTRON\u003d0. So if DEVSTACK_GATE_NEUTRON_DVR\u003d1, so is DEVSTACK_GATE_NEUTRON. \n\nIf it\u0027s isn\u0027t, then it\u0027s a bug.","commit_id":"69b3e4004c802fba9de0962834a7c56063e6044a"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"9aaf229b94766a6c60dc8b50a86ff3d19ce2998c","unresolved":false,"context_lines":[{"line_number":483,"context_line":"            # We need to figure out how we can provide the DATA_IP in here for"},{"line_number":484,"context_line":"            # second interface."},{"line_number":485,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""},{"line_number":486,"context_line":"PUBLIC_INTERFACE\u003deth4"},{"line_number":487,"context_line":"DATA_IP\u003d"},{"line_number":488,"context_line":"SERVICE_HOST\u003d${DEVSTACK_GATE_XENAPI_DOMU_IP}"},{"line_number":489,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-eth1"}],"source_content_type":"text/x-sh","patch_set":17,"id":"9a80dd14_a8bf5ca9","line":486,"updated":"2015-03-17 17:56:38.000000000","message":"Need some advice on how to set the DATA_IP for the dataplane traffic in multinode setup here.","commit_id":"69b3e4004c802fba9de0962834a7c56063e6044a"},{"author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"change_message_id":"ed2e37307d4cf246bf53f81ce5559cca0652a275","unresolved":false,"context_lines":[{"line_number":483,"context_line":"            # We need to figure out how we can provide the DATA_IP in here for"},{"line_number":484,"context_line":"            # second interface."},{"line_number":485,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""},{"line_number":486,"context_line":"PUBLIC_INTERFACE\u003deth4"},{"line_number":487,"context_line":"DATA_IP\u003d"},{"line_number":488,"context_line":"SERVICE_HOST\u003d${DEVSTACK_GATE_XENAPI_DOMU_IP}"},{"line_number":489,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-eth1"}],"source_content_type":"text/x-sh","patch_set":17,"id":"1a6ced46_1aafe0e4","line":486,"in_reply_to":"9a80dd14_a8bf5ca9","updated":"2015-03-23 17:48:53.000000000","message":"I think we can define a private to the multi-node setup IP address range here, right?","commit_id":"69b3e4004c802fba9de0962834a7c56063e6044a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"31070f612a7f45b3b0633b97f121c6e05350ef92","unresolved":false,"context_lines":[{"line_number":483,"context_line":"            # We need to figure out how we can provide the DATA_IP in here for"},{"line_number":484,"context_line":"            # second interface."},{"line_number":485,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""},{"line_number":486,"context_line":"PUBLIC_INTERFACE\u003deth4"},{"line_number":487,"context_line":"DATA_IP\u003d"},{"line_number":488,"context_line":"SERVICE_HOST\u003d${DEVSTACK_GATE_XENAPI_DOMU_IP}"},{"line_number":489,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-eth1"}],"source_content_type":"text/x-sh","patch_set":17,"id":"1a6ced46_44da6379","line":486,"in_reply_to":"9a80dd14_a8bf5ca9","updated":"2015-03-23 17:08:04.000000000","message":"what advice are you looking for?","commit_id":"69b3e4004c802fba9de0962834a7c56063e6044a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"c0a1b90ecfbb0da109dd69ad77d12b9b168fe046","unresolved":false,"context_lines":[{"line_number":480,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":481,"context_line":"EOF"},{"line_number":482,"context_line":"        fi"},{"line_number":483,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":484,"context_line":"            (source $BASE/new/devstack/functions-common; install_package bridge-utils)"},{"line_number":485,"context_line":"            dvr_proxy_bridge \"br-eth1\" \"br-ex\" \"br-proxy\" 1 $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK $NODES"},{"line_number":486,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_5ecf52b0","line":483,"updated":"2015-03-30 22:55:06.000000000","message":"we should try and see if removing conditional at line 469, lines 483-497 become superfluous, i.e. we\u0027re able to leverage the gre tunnel that is set up for n-net aiopcpu.\n\nIf so, then we\u0027re golden.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"ec816d497d2d34f4dc79d7c92e8bbe2ad6846b66","unresolved":false,"context_lines":[{"line_number":480,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":481,"context_line":"EOF"},{"line_number":482,"context_line":"        fi"},{"line_number":483,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":484,"context_line":"            (source $BASE/new/devstack/functions-common; install_package bridge-utils)"},{"line_number":485,"context_line":"            dvr_proxy_bridge \"br-eth1\" \"br-ex\" \"br-proxy\" 1 $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK $NODES"},{"line_number":486,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_586f2fc5","line":483,"in_reply_to":"da9b358b_3d3fbdd7","updated":"2015-04-01 05:18:36.000000000","message":"recently devstack got PUBLIC_INTERFACE support for neutron.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"7c04f39ea68d094d7e8fe7f2e873efc2dbbabff4","unresolved":false,"context_lines":[{"line_number":480,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":481,"context_line":"EOF"},{"line_number":482,"context_line":"        fi"},{"line_number":483,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":484,"context_line":"            (source $BASE/new/devstack/functions-common; install_package bridge-utils)"},{"line_number":485,"context_line":"            dvr_proxy_bridge \"br-eth1\" \"br-ex\" \"br-proxy\" 1 $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK $NODES"},{"line_number":486,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_3d3fbdd7","line":483,"in_reply_to":"da9b358b_5ecf52b0","updated":"2015-04-01 05:12:23.000000000","message":"Right now the issue that I am seeing is in \"neutron networks\" the public bridge is always created as \"br-ex\" and it does not honor the above mentioned \"PUBLIC_INTERFACE\" or the \"FLAT_INTERFACE\".\n\nThe \"gre-bridge\" script that nova multinode setup uses may not fit well with the Neutron networks multinode setup.\n\nLet me see what else can be done to fix this isssue without a major change.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"b055b3bcdcbc006bb583a5d568e844a9836949e3","unresolved":false,"context_lines":[{"line_number":480,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":481,"context_line":"EOF"},{"line_number":482,"context_line":"        fi"},{"line_number":483,"context_line":"        if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \u00271\u0027 ]]; then"},{"line_number":484,"context_line":"            (source $BASE/new/devstack/functions-common; install_package bridge-utils)"},{"line_number":485,"context_line":"            dvr_proxy_bridge \"br-eth1\" \"br-ex\" \"br-proxy\" 1 $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK $NODES"},{"line_number":486,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_a2f4fc86","line":483,"in_reply_to":"da9b358b_5ecf52b0","updated":"2015-03-31 02:47:20.000000000","message":"good idea.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"b055b3bcdcbc006bb583a5d568e844a9836949e3","unresolved":false,"context_lines":[{"line_number":486,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""},{"line_number":487,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-ex"},{"line_number":488,"context_line":"PUBLIC_INTERFACE\u003dbr-proxy"},{"line_number":489,"context_line":"MULTI_HOST\u003d1"},{"line_number":490,"context_line":"EOF"},{"line_number":491,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":492,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-ex"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_a21cfc13","line":489,"updated":"2015-03-31 02:47:20.000000000","message":"why 1 not True?","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"7c04f39ea68d094d7e8fe7f2e873efc2dbbabff4","unresolved":false,"context_lines":[{"line_number":486,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/sub_localrc\""},{"line_number":487,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-ex"},{"line_number":488,"context_line":"PUBLIC_INTERFACE\u003dbr-proxy"},{"line_number":489,"context_line":"MULTI_HOST\u003d1"},{"line_number":490,"context_line":"EOF"},{"line_number":491,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":492,"context_line":"OVS_PHYSICAL_BRIDGE\u003dbr-ex"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_1d2759cb","line":489,"in_reply_to":"da9b358b_a21cfc13","updated":"2015-04-01 05:12:23.000000000","message":"Sure can be True as well. Will fix it.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"216d6ea3317a7cf40fc7b52901d6106af379ba9e","unresolved":false,"context_lines":[{"line_number":495,"context_line":"            # neutron multi-host tunnel setup"},{"line_number":496,"context_line":"            ovs_gre_bridge \"br-ex\" $PRIMARY_NODE \"True\" 1 \\"},{"line_number":497,"context_line":"                $FLOATING_HOST_PREFIX $FLOATING_HOST_MASK \\"},{"line_number":498,"context_line":"                $SUB_NODES"},{"line_number":499,"context_line":"        fi"},{"line_number":500,"context_line":""},{"line_number":501,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":24,"id":"9aa53dc9_cff0ee69","line":498,"updated":"2015-04-09 17:10:46.000000000","message":"Don\u0027t we need to include the \"MULTI_HOST\" flag in here along with the PUBLIC_INTERFACE for the neutron nodes.","commit_id":"a1100707d807d2d804baa0b34f93adaf19192b74"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"91719465058ee22e9c6660bc3440f0f2276c33e5","unresolved":false,"context_lines":[{"line_number":500,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":501,"context_line":"EOF"},{"line_number":502,"context_line":"            cat \u003c\u003cEOF \u003e\u003e\"$BASE/new/devstack/localrc\""},{"line_number":503,"context_line":"PUBLIC_INTERFACE\u003dbr_ex"},{"line_number":504,"context_line":"MULTI_HOST\u003dTrue"},{"line_number":505,"context_line":"EOF"},{"line_number":506,"context_line":"        fi"}],"source_content_type":"text/x-sh","patch_set":25,"id":"9aa53dc9_8ab64af7","line":503,"updated":"2015-04-09 22:28:32.000000000","message":"just idle curiosity...was br_ex vs br-ex intentional?","commit_id":"07335084d2e6b90d8c44101d9de47b991dae975d"},{"author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"change_message_id":"f3de41ea09c683303ce6159cb387a3a751340b07","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                    # As per reference architecture described in https://wiki.openstack.org/wiki/Neutron/DVR"},{"line_number":86,"context_line":"                    # for DVR multi-node, add the following services on all compute nodes (q-fwaas being"},{"line_number":87,"context_line":"                    # optional):"},{"line_number":88,"context_line":"                    MY_ENABLED_SERVICES+\u003d\",q-l3,q-fwaas,q-meta\""},{"line_number":89,"context_line":"                fi"},{"line_number":90,"context_line":"            else"},{"line_number":91,"context_line":"                MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\""}],"source_content_type":"text/x-sh","patch_set":27,"id":"9aa53dc9_fe9c74c1","line":88,"updated":"2015-04-10 01:48:32.000000000","message":"Curious why we\u0027re adding q-fwaas here if it\u0027s optional?","commit_id":"1d996e8a7146398b7fa293a9277bb8c2d1fe8c51"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f7b81e8335762c97cf5d31888ad57c8e8345af10","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                    # As per reference architecture described in https://wiki.openstack.org/wiki/Neutron/DVR"},{"line_number":86,"context_line":"                    # for DVR multi-node, add the following services on all compute nodes (q-fwaas being"},{"line_number":87,"context_line":"                    # optional):"},{"line_number":88,"context_line":"                    MY_ENABLED_SERVICES+\u003d\",q-l3,q-fwaas,q-meta\""},{"line_number":89,"context_line":"                fi"},{"line_number":90,"context_line":"            else"},{"line_number":91,"context_line":"                MY_ENABLED_SERVICES\u003d\"n-cpu,n-net,n-api-meta,ceilometer-acompute\""}],"source_content_type":"text/x-sh","patch_set":27,"id":"9aa53dc9_9e6fa8fb","line":88,"in_reply_to":"9aa53dc9_fe9c74c1","updated":"2015-04-10 02:18:06.000000000","message":"I guess for consistency with the single node. Also, if we ever add fw scenario tests, they should work without configuration changes.","commit_id":"1d996e8a7146398b7fa293a9277bb8c2d1fe8c51"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"6c963166724c320b27ca369c93ae80be0ff9e1d6","unresolved":false,"context_lines":[{"line_number":84,"context_line":"                if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                    # As per reference architecture described in https://wiki.openstack.org/wiki/Neutron/DVR"},{"line_number":86,"context_line":"                    # for DVR multi-node, add the following services on all compute nodes (q-fwaas being"},{"line_number":87,"context_line":"                    # optional):"},{"line_number":88,"context_line":"                    MY_ENABLED_SERVICES+\u003d\",q-l3,q-fwaas,q-meta\""},{"line_number":89,"context_line":"                fi"},{"line_number":90,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":28,"id":"7aaa499b_9e5e3244","line":87,"updated":"2015-04-11 00:17:29.000000000","message":"If we end up needing to do another patch we should shorten these comment lines.","commit_id":"3ad919bc776092b0d22008e8e46c6262671caa47"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"8025b50b54870e2114e6eadd72f25ee118c1f4e3","unresolved":false,"context_lines":[{"line_number":84,"context_line":"                if [[ \"$DEVSTACK_GATE_NEUTRON_DVR\" -eq \"1\" ]]; then"},{"line_number":85,"context_line":"                    # As per reference architecture described in https://wiki.openstack.org/wiki/Neutron/DVR"},{"line_number":86,"context_line":"                    # for DVR multi-node, add the following services on all compute nodes (q-fwaas being"},{"line_number":87,"context_line":"                    # optional):"},{"line_number":88,"context_line":"                    MY_ENABLED_SERVICES+\u003d\",q-l3,q-fwaas,q-meta\""},{"line_number":89,"context_line":"                fi"},{"line_number":90,"context_line":"            else"}],"source_content_type":"text/x-sh","patch_set":28,"id":"7aaa499b_34ff3d03","line":87,"in_reply_to":"7aaa499b_9e5e3244","updated":"2015-04-11 02:30:58.000000000","message":"Agreed, though we don\u0027t respect the 80 char limits across many lines in this file, which I think would be a big readability improvement if we did regardless of this change: notice line 492-496","commit_id":"3ad919bc776092b0d22008e8e46c6262671caa47"}],"functions.sh":[{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"b055b3bcdcbc006bb583a5d568e844a9836949e3","unresolved":false,"context_lines":[{"line_number":852,"context_line":"#"},{"line_number":853,"context_line":"function dvr_proxy_bridge {"},{"line_number":854,"context_line":"    local bridge_external_name\u003d$1"},{"line_number":855,"context_line":"    local bridge_internal_name\u003d$2"},{"line_number":856,"context_line":"    local bridge_proxy_name\u003d$2"},{"line_number":857,"context_line":"    local offset\u003d$3"},{"line_number":858,"context_line":"    local pub_addr_prefix\u003d$4"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_e201e46b","line":855,"updated":"2015-03-31 02:47:20.000000000","message":"the caller uses:\n\n dvr_proxy_bridge \"br-eth1\" \"br-ex\" \"br-proxy\" ...\n\nit seems ext and int are swapped.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"7c04f39ea68d094d7e8fe7f2e873efc2dbbabff4","unresolved":false,"context_lines":[{"line_number":852,"context_line":"#"},{"line_number":853,"context_line":"function dvr_proxy_bridge {"},{"line_number":854,"context_line":"    local bridge_external_name\u003d$1"},{"line_number":855,"context_line":"    local bridge_internal_name\u003d$2"},{"line_number":856,"context_line":"    local bridge_proxy_name\u003d$2"},{"line_number":857,"context_line":"    local offset\u003d$3"},{"line_number":858,"context_line":"    local pub_addr_prefix\u003d$4"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_bd02ad09","line":855,"in_reply_to":"da9b358b_e201e46b","updated":"2015-04-01 05:12:23.000000000","message":"Will fix this in the next patch.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"b055b3bcdcbc006bb583a5d568e844a9836949e3","unresolved":false,"context_lines":[{"line_number":853,"context_line":"function dvr_proxy_bridge {"},{"line_number":854,"context_line":"    local bridge_external_name\u003d$1"},{"line_number":855,"context_line":"    local bridge_internal_name\u003d$2"},{"line_number":856,"context_line":"    local bridge_proxy_name\u003d$2"},{"line_number":857,"context_line":"    local offset\u003d$3"},{"line_number":858,"context_line":"    local pub_addr_prefix\u003d$4"},{"line_number":859,"context_line":"    local pub_addr_mask\u003d$5"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_62c0342b","line":856,"updated":"2015-03-31 02:47:20.000000000","message":"$2 is used twice.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"7c04f39ea68d094d7e8fe7f2e873efc2dbbabff4","unresolved":false,"context_lines":[{"line_number":853,"context_line":"function dvr_proxy_bridge {"},{"line_number":854,"context_line":"    local bridge_external_name\u003d$1"},{"line_number":855,"context_line":"    local bridge_internal_name\u003d$2"},{"line_number":856,"context_line":"    local bridge_proxy_name\u003d$2"},{"line_number":857,"context_line":"    local offset\u003d$3"},{"line_number":858,"context_line":"    local pub_addr_prefix\u003d$4"},{"line_number":859,"context_line":"    local pub_addr_mask\u003d$5"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_3d169d55","line":856,"in_reply_to":"da9b358b_62c0342b","updated":"2015-04-01 05:12:23.000000000","message":"Will fix this in the next patch.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"b055b3bcdcbc006bb583a5d568e844a9836949e3","unresolved":false,"context_lines":[{"line_number":866,"context_line":"        sudo ovs-vsctl add-br ${bridge_proxy_name}"},{"line_number":867,"context_line":"        # Create veth pairs"},{"line_number":868,"context_line":"        sudo ip link add proxy-${bridge_internal_name} type veth peer name eth1-${bridge_proxy_name}"},{"line_number":869,"context_line":"        sudo ip link add proxy-${bridge_internal_name} type veth peer name ex-${bridge_proxy_name}"},{"line_number":870,"context_line":"        # Attach bridges using veth pair"},{"line_number":871,"context_line":"        sudo ovs-vsctl add-port ${bridge_internal_name}  eth1-${bridge_proxy_name}"},{"line_number":872,"context_line":"        sudo ovs-vsctl add-port ${bridge_external_name} ex-${bridge_proxy_name}"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_82ae9883","line":869,"range":{"start_line":869,"start_character":33,"end_line":869,"end_character":53},"updated":"2015-03-31 02:47:20.000000000","message":"bridge_external_name","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"7c04f39ea68d094d7e8fe7f2e873efc2dbbabff4","unresolved":false,"context_lines":[{"line_number":866,"context_line":"        sudo ovs-vsctl add-br ${bridge_proxy_name}"},{"line_number":867,"context_line":"        # Create veth pairs"},{"line_number":868,"context_line":"        sudo ip link add proxy-${bridge_internal_name} type veth peer name eth1-${bridge_proxy_name}"},{"line_number":869,"context_line":"        sudo ip link add proxy-${bridge_internal_name} type veth peer name ex-${bridge_proxy_name}"},{"line_number":870,"context_line":"        # Attach bridges using veth pair"},{"line_number":871,"context_line":"        sudo ovs-vsctl add-port ${bridge_internal_name}  eth1-${bridge_proxy_name}"},{"line_number":872,"context_line":"        sudo ovs-vsctl add-port ${bridge_external_name} ex-${bridge_proxy_name}"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_98001703","line":869,"in_reply_to":"da9b358b_82ae9883","updated":"2015-04-01 05:12:23.000000000","message":"I don\u0027t get what you meant here.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"dd9dbd6379dc2b79584b8f6353c7424020fa5313","unresolved":false,"context_lines":[{"line_number":866,"context_line":"        sudo ovs-vsctl add-br ${bridge_proxy_name}"},{"line_number":867,"context_line":"        # Create veth pairs"},{"line_number":868,"context_line":"        sudo ip link add proxy-${bridge_internal_name} type veth peer name eth1-${bridge_proxy_name}"},{"line_number":869,"context_line":"        sudo ip link add proxy-${bridge_internal_name} type veth peer name ex-${bridge_proxy_name}"},{"line_number":870,"context_line":"        # Attach bridges using veth pair"},{"line_number":871,"context_line":"        sudo ovs-vsctl add-port ${bridge_internal_name}  eth1-${bridge_proxy_name}"},{"line_number":872,"context_line":"        sudo ovs-vsctl add-port ${bridge_external_name} ex-${bridge_proxy_name}"}],"source_content_type":"text/x-sh","patch_set":21,"id":"da9b358b_b8307be9","line":869,"in_reply_to":"da9b358b_98001703","updated":"2015-04-01 05:15:45.000000000","message":"i meant bridge_internal_name in L869 should be bridge_external_name.","commit_id":"dfd6fc114ebf03ebad38a7caf9f0ce1b2e2604ff"},{"author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"change_message_id":"e739e490781f42b42340b81850a285b0ff219d12","unresolved":false,"context_lines":[{"line_number":833,"context_line":"    sudo ip address add ${pub_addr_prefix}.${offset}/${pub_addr_mask} brd + dev ${pub_if_name}"},{"line_number":834,"context_line":"}"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"# This function creates an internal gre bridge to connect all external"},{"line_number":837,"context_line":"# network bridges across the compute and network nodes."},{"line_number":838,"context_line":"# bridge_ext_name: Bridge name on each host for \"External\" network."},{"line_number":839,"context_line":"#                  DVR routers require External Bridge on Network and"}],"source_content_type":"text/x-sh","patch_set":23,"id":"baa041b7_843b34d1","line":836,"updated":"2015-04-03 13:35:52.000000000","message":"(no action necessary) Any reason you chose GRE instead of VXLAN?","commit_id":"d8699b4cb91469100b145dd31e9f841c05ee188c"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"4b1ab0ee1b6fa8c198121851bb9adacb54165a2b","unresolved":false,"context_lines":[{"line_number":833,"context_line":"    sudo ip address add ${pub_addr_prefix}.${offset}/${pub_addr_mask} brd + dev ${pub_if_name}"},{"line_number":834,"context_line":"}"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"# This function creates an internal gre bridge to connect all external"},{"line_number":837,"context_line":"# network bridges across the compute and network nodes."},{"line_number":838,"context_line":"# bridge_ext_name: Bridge name on each host for \"External\" network."},{"line_number":839,"context_line":"#                  DVR routers require External Bridge on Network and"}],"source_content_type":"text/x-sh","patch_set":23,"id":"9aa53dc9_fde9751b","line":836,"in_reply_to":"9aa53dc9_b4746ccf","updated":"2015-04-08 05:39:11.000000000","message":"Hi Clark,\nBy default today devstack configures \"VXLAN\" tunnels for the VM traffic when DVR is enabled.","commit_id":"d8699b4cb91469100b145dd31e9f841c05ee188c"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"304b6a1ddf3527f37df92cb75a8301bec3791753","unresolved":false,"context_lines":[{"line_number":833,"context_line":"    sudo ip address add ${pub_addr_prefix}.${offset}/${pub_addr_mask} brd + dev ${pub_if_name}"},{"line_number":834,"context_line":"}"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"# This function creates an internal gre bridge to connect all external"},{"line_number":837,"context_line":"# network bridges across the compute and network nodes."},{"line_number":838,"context_line":"# bridge_ext_name: Bridge name on each host for \"External\" network."},{"line_number":839,"context_line":"#                  DVR routers require External Bridge on Network and"}],"source_content_type":"text/x-sh","patch_set":23,"id":"9aa53dc9_9d0f0988","line":836,"in_reply_to":"9aa53dc9_fde9751b","updated":"2015-04-08 06:05:55.000000000","message":"Hi Clark Boylan,\nI do have some issues the \"gre_bridge\" script that nova uses today.\nI am testing it on a Ubuntu 14.04 Linux and the gre-tunnel stops pinging after 8 or 9 pings.\nIs there any workaround that should apply to test it.","commit_id":"d8699b4cb91469100b145dd31e9f841c05ee188c"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"8e9f80bc1f6f6ab660b16db123c6bc2090a32d50","unresolved":false,"context_lines":[{"line_number":833,"context_line":"    sudo ip address add ${pub_addr_prefix}.${offset}/${pub_addr_mask} brd + dev ${pub_if_name}"},{"line_number":834,"context_line":"}"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"# This function creates an internal gre bridge to connect all external"},{"line_number":837,"context_line":"# network bridges across the compute and network nodes."},{"line_number":838,"context_line":"# bridge_ext_name: Bridge name on each host for \"External\" network."},{"line_number":839,"context_line":"#                  DVR routers require External Bridge on Network and"}],"source_content_type":"text/x-sh","patch_set":23,"id":"9aa53dc9_b4746ccf","line":836,"in_reply_to":"baa041b7_3b68fe86","updated":"2015-04-06 19:18:08.000000000","message":"We cannot rely on VXLAN on our cloud providers because it requires the use of multicast.","commit_id":"d8699b4cb91469100b145dd31e9f841c05ee188c"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"fcb9bf28d34fa6ff55b9dad0946568e1aad75c99","unresolved":false,"context_lines":[{"line_number":833,"context_line":"    sudo ip address add ${pub_addr_prefix}.${offset}/${pub_addr_mask} brd + dev ${pub_if_name}"},{"line_number":834,"context_line":"}"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"# This function creates an internal gre bridge to connect all external"},{"line_number":837,"context_line":"# network bridges across the compute and network nodes."},{"line_number":838,"context_line":"# bridge_ext_name: Bridge name on each host for \"External\" network."},{"line_number":839,"context_line":"#                  DVR routers require External Bridge on Network and"}],"source_content_type":"text/x-sh","patch_set":23,"id":"baa041b7_3b68fe86","line":836,"in_reply_to":"baa041b7_843b34d1","updated":"2015-04-03 16:49:20.000000000","message":"This is just a tunnel between the node to join the \"external-bridge\".\nThis is not for the internal bridge.","commit_id":"d8699b4cb91469100b145dd31e9f841c05ee188c"},{"author":{"_account_id":7016,"name":"Swaminathan Vasudevan","email":"swvasude@cisco.com","username":"souminathan"},"change_message_id":"443503dcff768ddf8b57264022c68e6d6cd1ce49","unresolved":false,"context_lines":[{"line_number":848,"context_line":"#                above."},{"line_number":849,"context_line":"# host_ip: ip address of the bridge host which is reachable for all peer"},{"line_number":850,"context_line":"# every additinal paramater is considered as a peer host"},{"line_number":851,"context_line":"#"},{"line_number":852,"context_line":"function neutron_dvr_gre_bridge {"},{"line_number":853,"context_line":"    local bridge_ext_name\u003d$1"},{"line_number":854,"context_line":"    local offset\u003d$2"}],"source_content_type":"text/x-sh","patch_set":23,"id":"baa041b7_97b7da85","line":851,"updated":"2015-04-03 18:59:06.000000000","message":"(NOTE)The reason we could not utilize the gre_bridge script that nova mulitnode uses is, it is heavily dependent on the flat interface, that is not supported by the Neutron.\nNeutron by default creates the br-ex ovs-bridge and so for the neutron dvr multinode we will utilize that bridge and create a gre tunnel across all the nodes for test purpose.","commit_id":"d8699b4cb91469100b145dd31e9f841c05ee188c"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"60a1143ca117d2cd501ee2b5a329a8e6b31fb6d1","unresolved":false,"context_lines":[{"line_number":782,"context_line":"# set_ips: Whether or not to set l3 addresses on our logical l2 network."},{"line_number":783,"context_line":"#          This can be helpful for setting up routing tables."},{"line_number":784,"context_line":"# The next three parameters are only used if set_ips is \"True\"."},{"line_number":785,"context_line":"# offset: starting key value for the ip address offset"},{"line_number":786,"context_line":"# pub_addr_prefix: The IPv4 address three octet prefix used to give compute"},{"line_number":787,"context_line":"#                  nodes non conflicting addresses on the pub_if_name\u0027d"},{"line_number":788,"context_line":"#                  network. Should be provided as X.Y.Z. Offset will be"}],"source_content_type":"text/x-sh","patch_set":29,"id":"7aaa499b_ddefcb85","line":785,"updated":"2015-04-14 16:55:50.000000000","message":"We need to update this portion of the comment. Offset is required on every call to this function because it is used as the gre tunnel key and the ip addr suffix value.\n\nSorry I forgot to update this when I was testing the use of gre tunnel keys.","commit_id":"dd3e695cd923b0c5a1cc6ae4acddf9294f804a1b"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"b3309520950e2a0626c08885edca877e3503afe0","unresolved":false,"context_lines":[{"line_number":782,"context_line":"# set_ips: Whether or not to set l3 addresses on our logical l2 network."},{"line_number":783,"context_line":"#          This can be helpful for setting up routing tables."},{"line_number":784,"context_line":"# The next three parameters are only used if set_ips is \"True\"."},{"line_number":785,"context_line":"# offset: starting key value for the ip address offset"},{"line_number":786,"context_line":"# pub_addr_prefix: The IPv4 address three octet prefix used to give compute"},{"line_number":787,"context_line":"#                  nodes non conflicting addresses on the pub_if_name\u0027d"},{"line_number":788,"context_line":"#                  network. Should be provided as X.Y.Z. Offset will be"}],"source_content_type":"text/x-sh","patch_set":29,"id":"7aaa499b_204b22cb","line":785,"in_reply_to":"7aaa499b_ddefcb85","updated":"2015-04-14 17:11:21.000000000","message":"Done","commit_id":"dd3e695cd923b0c5a1cc6ae4acddf9294f804a1b"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"60a1143ca117d2cd501ee2b5a329a8e6b31fb6d1","unresolved":false,"context_lines":[{"line_number":815,"context_line":"    for node_ip in $peer_ips; do"},{"line_number":816,"context_line":"        (( offset++ ))"},{"line_number":817,"context_line":"        # Setup the gre tunnel for the Controller/Network Node"},{"line_number":818,"context_line":"        sudo ovs-vsctl add-port $bridge_name ${bridge_name}_${node_ip} -- set interface ${bridge_name}_${node_ip} type\u003dgre options:remote_ip\u003d${node_ip} options:key\u003d${offset}"},{"line_number":819,"context_line":"        # Now complete the gre tunnel setup for the Compute Node"},{"line_number":820,"context_line":"        remote_command $node_ip \"source $BASE/new/devstack/functions-common; install_package openvswitch-switch; restart_service openvswitch-switch\""},{"line_number":821,"context_line":"        remote_command $node_ip sudo ovs-vsctl --may-exist add-br $bridge_name"}],"source_content_type":"text/x-sh","patch_set":29,"id":"7aaa499b_e0277ab4","line":818,"updated":"2015-04-14 16:55:50.000000000","message":"Lifeless also suggested setting options:local_ip on these gre ports as belts and suspenders.\n\nThat will make this line have an additional:\n\n  options:local_ip\u003d${host_ip}\n\nAnd the gre port below would have:\n\n  options:local_ip\u003d${node_ip}","commit_id":"dd3e695cd923b0c5a1cc6ae4acddf9294f804a1b"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"b3309520950e2a0626c08885edca877e3503afe0","unresolved":false,"context_lines":[{"line_number":815,"context_line":"    for node_ip in $peer_ips; do"},{"line_number":816,"context_line":"        (( offset++ ))"},{"line_number":817,"context_line":"        # Setup the gre tunnel for the Controller/Network Node"},{"line_number":818,"context_line":"        sudo ovs-vsctl add-port $bridge_name ${bridge_name}_${node_ip} -- set interface ${bridge_name}_${node_ip} type\u003dgre options:remote_ip\u003d${node_ip} options:key\u003d${offset}"},{"line_number":819,"context_line":"        # Now complete the gre tunnel setup for the Compute Node"},{"line_number":820,"context_line":"        remote_command $node_ip \"source $BASE/new/devstack/functions-common; install_package openvswitch-switch; restart_service openvswitch-switch\""},{"line_number":821,"context_line":"        remote_command $node_ip sudo ovs-vsctl --may-exist add-br $bridge_name"}],"source_content_type":"text/x-sh","patch_set":29,"id":"7aaa499b_8010b6a9","line":818,"in_reply_to":"7aaa499b_e0277ab4","updated":"2015-04-14 17:11:21.000000000","message":"Done","commit_id":"dd3e695cd923b0c5a1cc6ae4acddf9294f804a1b"}],"neutron_dvr_multinode_diagram.txt":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"60a1143ca117d2cd501ee2b5a329a8e6b31fb6d1","unresolved":false,"context_lines":[{"line_number":1,"context_line":""},{"line_number":2,"context_line":""},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"                                    Controller/Network"}],"source_content_type":"text/plain","patch_set":29,"id":"7aaa499b_9da02345","line":1,"updated":"2015-04-14 16:55:50.000000000","message":"We need a corresponding update to the nova network multinode diagram. The interface names change and we no longer have gre devices (ovs handles that).","commit_id":"dd3e695cd923b0c5a1cc6ae4acddf9294f804a1b"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"b3309520950e2a0626c08885edca877e3503afe0","unresolved":false,"context_lines":[{"line_number":1,"context_line":""},{"line_number":2,"context_line":""},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"                                    Controller/Network"}],"source_content_type":"text/plain","patch_set":29,"id":"7aaa499b_20220201","line":1,"in_reply_to":"7aaa499b_9da02345","updated":"2015-04-14 17:11:21.000000000","message":"Done","commit_id":"dd3e695cd923b0c5a1cc6ae4acddf9294f804a1b"}],"sub_node_prepare.sh":[{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"8f6db91e7decb4bbca1d2076fc2589d1865488d0","unresolved":false,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":"# Run pre test hook if we have one"},{"line_number":63,"context_line":"if function_exists \"pre_test_hook\"; then"},{"line_number":64,"context_line":"   echo \"Running pre_test_hook\""},{"line_number":65,"context_line":"   xtrace\u003d$(set +o | grep xtrace)"},{"line_number":66,"context_line":"   set -o xtrace"},{"line_number":67,"context_line":"   tsfilter pre_test_hook | tee $WORKSPACE/devstack-gate-pre-test-hook.txt"}],"source_content_type":"text/x-sh","patch_set":11,"id":"9a80dd14_535c4c7d","line":64,"updated":"2015-03-13 22:33:02.000000000","message":"these changes must not be here","commit_id":"0d9b090152d8b14a2b1b507a070a0de1497ba349"}]}
