)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b1eac6e007cd3950c61908e738a88200af510ff4","unresolved":false,"context_lines":[{"line_number":31,"context_line":"does not include ipv6 information.  This change should look in both"},{"line_number":32,"context_line":"the ipv4 and ipv6 route table.  A similar check in the L3 setup code"},{"line_number":33,"context_line":"is also updated."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"[1] https://review.opendev.org/#/c/739139/"},{"line_number":36,"context_line":"[2] https://d4eb7e3efe98cba79a4b-f4d168cdb20f40841821e4b213645c0f.ssl.cf2.rackcdn.com/739139/12/gate/neutron-tempest-plugin-scenario-linuxbridge/9a6b4f7/controller/logs/worlddump-latest.txt"},{"line_number":37,"context_line":"[3] https://opendev.org/openstack/devstack/src/branch/master/lib/neutron-legacy#L236"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"1f621f24_61f441d0","line":34,"updated":"2020-11-04 23:38:14.000000000","message":"Should probably have right?\n\nCloses-Bug: #1902002","commit_id":"b8a93a36e6af5c9a9df25721f568c83d469af29c"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"b7a7513bd0b57f7a6aebd907737138a5c9449f8c","unresolved":false,"context_lines":[{"line_number":31,"context_line":"does not include ipv6 information.  This change should look in both"},{"line_number":32,"context_line":"the ipv4 and ipv6 route table.  A similar check in the L3 setup code"},{"line_number":33,"context_line":"is also updated."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"[1] https://review.opendev.org/#/c/739139/"},{"line_number":36,"context_line":"[2] https://d4eb7e3efe98cba79a4b-f4d168cdb20f40841821e4b213645c0f.ssl.cf2.rackcdn.com/739139/12/gate/neutron-tempest-plugin-scenario-linuxbridge/9a6b4f7/controller/logs/worlddump-latest.txt"},{"line_number":37,"context_line":"[3] https://opendev.org/openstack/devstack/src/branch/master/lib/neutron-legacy#L236"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"1f621f24_f2093d95","line":34,"in_reply_to":"1f621f24_61f441d0","updated":"2020-11-05 08:11:46.000000000","message":"++","commit_id":"b8a93a36e6af5c9a9df25721f568c83d469af29c"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"c6072a85cfe4c72e3e2490018d3e7a431fa16bd9","unresolved":false,"context_lines":[{"line_number":31,"context_line":"does not include ipv6 information.  This change should look in both"},{"line_number":32,"context_line":"the ipv4 and ipv6 route table.  A similar check in the L3 setup code"},{"line_number":33,"context_line":"is also updated."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"[1] https://review.opendev.org/#/c/739139/"},{"line_number":36,"context_line":"[2] https://d4eb7e3efe98cba79a4b-f4d168cdb20f40841821e4b213645c0f.ssl.cf2.rackcdn.com/739139/12/gate/neutron-tempest-plugin-scenario-linuxbridge/9a6b4f7/controller/logs/worlddump-latest.txt"},{"line_number":37,"context_line":"[3] https://opendev.org/openstack/devstack/src/branch/master/lib/neutron-legacy#L236"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"1f621f24_7a285fe1","line":34,"in_reply_to":"1f621f24_61f441d0","updated":"2020-11-05 13:56:57.000000000","message":"Hadn\u0027t seen the bug; adding now.","commit_id":"b8a93a36e6af5c9a9df25721f568c83d469af29c"}],"lib/neutron-legacy":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b7ec2842c198d821cdb143d22eb27d49c97d0d63","unresolved":false,"context_lines":[{"line_number":233,"context_line":"#"},{"line_number":234,"context_line":"# Example: ``LB_PHYSICAL_INTERFACE\u003deth1``"},{"line_number":235,"context_line":"if [[ $Q_AGENT \u003d\u003d \"linuxbridge\" \u0026\u0026 -z ${LB_PHYSICAL_INTERFACE} ]]; then"},{"line_number":236,"context_line":"    default_route_dev\u003d$( (ip route; ip -6 route) | grep ^default | awk \u0027{print $5}\u0027)"},{"line_number":237,"context_line":"    die_if_not_set $LINENO default_route_dev \"Failure retrieving default route device\""},{"line_number":238,"context_line":"    LB_PHYSICAL_INTERFACE\u003d$default_route_dev"},{"line_number":239,"context_line":"fi"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"1f621f24_d9455c17","line":236,"updated":"2020-11-03 21:02:34.000000000","message":"Heh, I had no idea it would be this simple to grab the ipv6 default route if available. Sweet.","commit_id":"9eb0d5e3dddd04f0f3e63d20ac68cf31a2781729"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"69c45065e4eb085646004de4331570c431987527","unresolved":false,"context_lines":[{"line_number":233,"context_line":"#"},{"line_number":234,"context_line":"# Example: ``LB_PHYSICAL_INTERFACE\u003deth1``"},{"line_number":235,"context_line":"if [[ $Q_AGENT \u003d\u003d \"linuxbridge\" \u0026\u0026 -z ${LB_PHYSICAL_INTERFACE} ]]; then"},{"line_number":236,"context_line":"    default_route_dev\u003d$( (ip route; ip -6 route) | grep ^default | awk \u0027{print $5}\u0027)"},{"line_number":237,"context_line":"    die_if_not_set $LINENO default_route_dev \"Failure retrieving default route device\""},{"line_number":238,"context_line":"    LB_PHYSICAL_INTERFACE\u003d$default_route_dev"},{"line_number":239,"context_line":"fi"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"1f621f24_1f8b2f1f","line":236,"updated":"2020-11-04 10:03:45.000000000","message":"I think that this will break if there are both v4 and v6 default routes as the result will contain two interfaces. not sure if it would be enough to just insert a \"head -1\" into the pipeline.","commit_id":"9eb0d5e3dddd04f0f3e63d20ac68cf31a2781729"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"480c78295848ff42b2121e6e0bb4124769ffcfb6","unresolved":false,"context_lines":[{"line_number":233,"context_line":"#"},{"line_number":234,"context_line":"# Example: ``LB_PHYSICAL_INTERFACE\u003deth1``"},{"line_number":235,"context_line":"if [[ $Q_AGENT \u003d\u003d \"linuxbridge\" \u0026\u0026 -z ${LB_PHYSICAL_INTERFACE} ]]; then"},{"line_number":236,"context_line":"    default_route_dev\u003d$( (ip route; ip -6 route) | grep ^default | awk \u0027{print $5}\u0027)"},{"line_number":237,"context_line":"    die_if_not_set $LINENO default_route_dev \"Failure retrieving default route device\""},{"line_number":238,"context_line":"    LB_PHYSICAL_INTERFACE\u003d$default_route_dev"},{"line_number":239,"context_line":"fi"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"1f621f24_a8c11e31","line":236,"in_reply_to":"1f621f24_1f8b2f1f","updated":"2020-11-04 18:48:38.000000000","message":"Good idea.  This will have the byproduct of choosing ipv4 routes preferentially when both ipv4 and ipv6 are in use, but if that proves problematic the order can be flipped in a subsequent change.","commit_id":"9eb0d5e3dddd04f0f3e63d20ac68cf31a2781729"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"707a9b9e4c8876bb91bcfe36871e44b409a2534e","unresolved":false,"context_lines":[{"line_number":237,"context_line":"    die_if_not_set $LINENO default_route_dev \"Failure retrieving default route device\""},{"line_number":238,"context_line":"    LB_PHYSICAL_INTERFACE\u003d$default_route_dev"},{"line_number":239,"context_line":"fi"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"# When Neutron tunnels are enabled it is needed to specify the"},{"line_number":242,"context_line":"# IP address of the end point in the local server. This IP is set"},{"line_number":243,"context_line":"# by default to the same IP address that the HOST IP."}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"1f621f24_fe310c0d","line":240,"updated":"2020-11-04 22:46:44.000000000","message":"Had another fail on my patch [1] in the tempest-ipv6-only job:\n\n2020-11-04 20:52:04.052336 | controller | /opt/stack/devstack/lib/neutron_plugins/services/l3:104:die_if_not_set\n2020-11-04 20:52:04.052371 | controller | /opt/stack/devstack/functions-common:223:die\n2020-11-04 20:52:04.055164 | controller | [ERROR] /opt/stack/devstack/functions-common:104 Failure retrieving default IPv4 route devices\n2020-11-04 20:52:05.058441 | controller | Error on exit\n\nand I\u0027m wondering, do we need another change in this patch in this area of the code as well? To not require an IPv4 default route?\n\nhttps://opendev.org/openstack/devstack/src/commit/47f76acbbac350ea18df6a9463876d38c3a13539/lib/neutron_plugins/services/l3#L103-L104\n\n[1] https://zuul.opendev.org/t/openstack/build/7fff839dd0bc4214ba6470ef40cf78fd/log/job-output.txt#1875","commit_id":"849506fe043b0c1ddad54a15ca5cd438fcf7c529"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"a91e7a2f2059ae12b066fe3d58ac31cd92c440af","unresolved":false,"context_lines":[{"line_number":237,"context_line":"    die_if_not_set $LINENO default_route_dev \"Failure retrieving default route device\""},{"line_number":238,"context_line":"    LB_PHYSICAL_INTERFACE\u003d$default_route_dev"},{"line_number":239,"context_line":"fi"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"# When Neutron tunnels are enabled it is needed to specify the"},{"line_number":242,"context_line":"# IP address of the end point in the local server. This IP is set"},{"line_number":243,"context_line":"# by default to the same IP address that the HOST IP."}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"1f621f24_1e18487f","line":240,"in_reply_to":"1f621f24_fe310c0d","updated":"2020-11-04 22:57:50.000000000","message":"I changed the logic to die if it has no v4 or v6 default route devices.  I am not 100% sure if this si the right thing to do, but it seems to make sense to me.","commit_id":"849506fe043b0c1ddad54a15ca5cd438fcf7c529"}],"lib/neutron_plugins/services/l3":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"2c0801b626a12ad4325b979b6fd21ca2c1613416","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"default_all_route_devs\u003d\"${default_v4_route_devs}${default_v6_route_devs}\""},{"line_number":108,"context_line":"die_if_not_set $LINENO default_all_route_devs \"Failure retrieving any default route devices\""},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"function _determine_config_l3 {"},{"line_number":111,"context_line":"    local opts\u003d\"--config-file $NEUTRON_CONF --config-file $Q_L3_CONF_FILE\""},{"line_number":112,"context_line":"    echo \"$opts\""}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"1f621f24_8174fd69","line":109,"updated":"2020-11-04 23:32:21.000000000","message":"Looks OK to me. I do wonder if there are any other places in the code where we need to handle absence of an IPv4 route and also look for an IPv6 default route.","commit_id":"b8a93a36e6af5c9a9df25721f568c83d469af29c"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b1eac6e007cd3950c61908e738a88200af510ff4","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"default_all_route_devs\u003d\"${default_v4_route_devs}${default_v6_route_devs}\""},{"line_number":108,"context_line":"die_if_not_set $LINENO default_all_route_devs \"Failure retrieving any default route devices\""},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"function _determine_config_l3 {"},{"line_number":111,"context_line":"    local opts\u003d\"--config-file $NEUTRON_CONF --config-file $Q_L3_CONF_FILE\""},{"line_number":112,"context_line":"    echo \"$opts\""}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"1f621f24_e13171a4","line":109,"in_reply_to":"1f621f24_8174fd69","updated":"2020-11-04 23:38:14.000000000","message":"FWIW I don\u0027t find any other occurrences for this phrase in the devstack repo\n\n$ grep -rIn \"retrieving default\" *","commit_id":"b8a93a36e6af5c9a9df25721f568c83d469af29c"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"c6072a85cfe4c72e3e2490018d3e7a431fa16bd9","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"default_all_route_devs\u003d\"${default_v4_route_devs}${default_v6_route_devs}\""},{"line_number":108,"context_line":"die_if_not_set $LINENO default_all_route_devs \"Failure retrieving any default route devices\""},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"function _determine_config_l3 {"},{"line_number":111,"context_line":"    local opts\u003d\"--config-file $NEUTRON_CONF --config-file $Q_L3_CONF_FILE\""},{"line_number":112,"context_line":"    echo \"$opts\""}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"1f621f24_da7c13ed","line":109,"in_reply_to":"1f621f24_e13171a4","updated":"2020-11-05 13:56:57.000000000","message":"I looked for other places and did not find any either.","commit_id":"b8a93a36e6af5c9a9df25721f568c83d469af29c"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"30f93dd322e1dedcdec224259fa1f1477276d25c","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"default_v6_route_devs\u003d$(ip -6 route list match default table all | grep via | awk \u0027{print $5}\u0027)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"default_all_route_devs\u003d\"${default_v4_route_devs}${default_v6_route_devs}\""},{"line_number":108,"context_line":"die_if_not_set $LINENO default_all_route_devs \"Failure retrieving any default route devices\""},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"function _determine_config_l3 {"},{"line_number":111,"context_line":"    local opts\u003d\"--config-file $NEUTRON_CONF --config-file $Q_L3_CONF_FILE\""}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"1f621f24_d58a0a68","line":108,"range":{"start_line":107,"start_character":0,"end_line":108,"end_character":92},"updated":"2020-11-09 09:20:36.000000000","message":"Looking at how the previous vars are use below, I don\u0027t think this is necessary at all.","commit_id":"42da352bf8d0b8f1b6ddd6206fbd5e1efd1071ba"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"bd8adbbb56b8557aad737cb78c07cbb711f982a9","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"default_v6_route_devs\u003d$(ip -6 route list match default table all | grep via | awk \u0027{print $5}\u0027)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"default_all_route_devs\u003d\"${default_v4_route_devs}${default_v6_route_devs}\""},{"line_number":108,"context_line":"die_if_not_set $LINENO default_all_route_devs \"Failure retrieving any default route devices\""},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"function _determine_config_l3 {"},{"line_number":111,"context_line":"    local opts\u003d\"--config-file $NEUTRON_CONF --config-file $Q_L3_CONF_FILE\""}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"1f621f24_d75205de","line":108,"range":{"start_line":107,"start_character":0,"end_line":108,"end_character":92},"in_reply_to":"1f621f24_954372af","updated":"2020-11-09 22:05:56.000000000","message":"Done","commit_id":"42da352bf8d0b8f1b6ddd6206fbd5e1efd1071ba"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"d9e80878dd27db18fa40ae98d03da504ccf9eca1","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"default_v6_route_devs\u003d$(ip -6 route list match default table all | grep via | awk \u0027{print $5}\u0027)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"default_all_route_devs\u003d\"${default_v4_route_devs}${default_v6_route_devs}\""},{"line_number":108,"context_line":"die_if_not_set $LINENO default_all_route_devs \"Failure retrieving any default route devices\""},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"function _determine_config_l3 {"},{"line_number":111,"context_line":"    local opts\u003d\"--config-file $NEUTRON_CONF --config-file $Q_L3_CONF_FILE\""}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"1f621f24_954372af","line":108,"range":{"start_line":107,"start_character":0,"end_line":108,"end_character":92},"in_reply_to":"1f621f24_d58a0a68","updated":"2020-11-09 09:57:40.000000000","message":"++, though I wonder if it would not hide a problem from the dev.","commit_id":"42da352bf8d0b8f1b6ddd6206fbd5e1efd1071ba"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4e4c376b18037c0e3623d99cac670589d9b4336f","unresolved":false,"context_lines":[{"line_number":101,"context_line":"SUBNETPOOL_SIZE_V6\u003d${SUBNETPOOL_SIZE_V6:-64}"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"default_v4_route_devs\u003d$(ip -4 route | grep ^default | awk \u0027{print $5}\u0027)"},{"line_number":104,"context_line":"die_if_not_set $LINENO default_v4_route_devs \"Failure retrieving default IPv4 route devices\""},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"default_v6_route_devs\u003d$(ip -6 route list match default table all | grep via | awk \u0027{print $5}\u0027)"},{"line_number":107,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"1f621f24_2871410d","side":"PARENT","line":104,"range":{"start_line":104,"start_character":0,"end_line":104,"end_character":1},"updated":"2020-11-11 15:00:50.000000000","message":"ya this was failing on ovs jobs.\n\nhttps://zuul.opendev.org/t/openstack/build/bd65ccd7f7724156a53ddbab3e267b13/log/job-output.txt#2050","commit_id":"47f76acbbac350ea18df6a9463876d38c3a13539"}]}
