)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"45173f404bff2761073dfb66e74a3da21f03ec0e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Bernd \u003cberndbausch@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-12-01 20:47:04 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Neutron L3 agent can only be started when OVS is fully up."},{"line_number":8,"context_line":"So far this was handled by a simple sleep (1 sec), but it"},{"line_number":9,"context_line":"can take considerably longer than that."},{"line_number":10,"context_line":"This patch adds a check for OVS to be up."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9a8ffd7b_c7f28606","line":7,"updated":"2015-12-01 12:39:39.000000000","message":"Add a newline between the title and the body of the commit message.","commit_id":"ac14f0648a2985a024fac0a043aa466b2230cb93"}],"labs/osbash/scripts/ubuntu/setup_neutron_network.sh":[{"author":{"_account_id":7007,"name":"Pranav Salunke","email":"dguitarbite@gmail.com","username":"dguitarbite"},"change_message_id":"5848303bfd5fce8faf3707fc039bfdff5d86b7bc","unresolved":false,"context_lines":[{"line_number":198,"context_line":"# - br-tun has a gre, a patch-int and a br-tun interface"},{"line_number":199,"context_line":"# - br-ex has a phy-br-ex interface"},{"line_number":200,"context_line":"#"},{"line_number":201,"context_line":"while :"},{"line_number":202,"context_line":"do"},{"line_number":203,"context_line":"    sleep 1"},{"line_number":204,"context_line":""}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_954497b7","line":201,"updated":"2015-12-01 16:22:36.000000000","message":"Can we split this into multiple smaller while loops? I think it would be better than re-iterating on the checks that pass.","commit_id":"01e71b7a41a3fdab4b41f5832f0276aa287c5859"},{"author":{"_account_id":7007,"name":"Pranav Salunke","email":"dguitarbite@gmail.com","username":"dguitarbite"},"change_message_id":"5848303bfd5fce8faf3707fc039bfdff5d86b7bc","unresolved":false,"context_lines":[{"line_number":204,"context_line":""},{"line_number":205,"context_line":"    # there must be a br-tun bridge. If not, continue looping."},{"line_number":206,"context_line":"    if ! sudo ovs-vsctl br-exists br-tun"},{"line_number":207,"context_line":"    then echo \"- waiting for br-tun\"; continue; fi"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"    # br-tun must have a gre and a path-int interface. If not, continue looping."},{"line_number":210,"context_line":"    if (( $(sudo ovs-vsctl list-ifaces br-tun |"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_951577e6","line":207,"updated":"2015-12-01 16:22:36.000000000","message":"Can you rephrase this?\nif ...\nthen\necho ...\ncontinue\nfi","commit_id":"01e71b7a41a3fdab4b41f5832f0276aa287c5859"},{"author":{"_account_id":7007,"name":"Pranav Salunke","email":"dguitarbite@gmail.com","username":"dguitarbite"},"change_message_id":"5848303bfd5fce8faf3707fc039bfdff5d86b7bc","unresolved":false,"context_lines":[{"line_number":209,"context_line":"    # br-tun must have a gre and a path-int interface. If not, continue looping."},{"line_number":210,"context_line":"    if (( $(sudo ovs-vsctl list-ifaces br-tun |"},{"line_number":211,"context_line":"            grep -c -e gre -e patch-int) \u003c 2 ))"},{"line_number":212,"context_line":"    then echo \"- waiting for br-tun ifaces\"; continue; fi"},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"    # br-int must have an int-br-ex and a patch-tun interface. If not ...."},{"line_number":215,"context_line":"    if (( $(sudo ovs-vsctl list-ifaces br-int |"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_15e0a7f9","line":212,"updated":"2015-12-01 16:22:36.000000000","message":"Same as above.","commit_id":"01e71b7a41a3fdab4b41f5832f0276aa287c5859"},{"author":{"_account_id":7007,"name":"Pranav Salunke","email":"dguitarbite@gmail.com","username":"dguitarbite"},"change_message_id":"5848303bfd5fce8faf3707fc039bfdff5d86b7bc","unresolved":false,"context_lines":[{"line_number":214,"context_line":"    # br-int must have an int-br-ex and a patch-tun interface. If not ...."},{"line_number":215,"context_line":"    if (( $(sudo ovs-vsctl list-ifaces br-int |"},{"line_number":216,"context_line":"            grep -c -e int-br-ex -e patch-tun) \u003c 2 ))"},{"line_number":217,"context_line":"    then echo \"- waiting for br-int ifaces\"; continue; fi"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"    # br-ex must have a phy-br-ex interface. If not, loop loop loop."},{"line_number":220,"context_line":"    if (( $(sudo ovs-vsctl list-ifaces br-ex | grep -c -e phy-br-ex) \u003c 1 ))"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_b5e75b11","line":217,"updated":"2015-12-01 16:22:36.000000000","message":"Same as above.","commit_id":"01e71b7a41a3fdab4b41f5832f0276aa287c5859"},{"author":{"_account_id":7007,"name":"Pranav Salunke","email":"dguitarbite@gmail.com","username":"dguitarbite"},"change_message_id":"5848303bfd5fce8faf3707fc039bfdff5d86b7bc","unresolved":false,"context_lines":[{"line_number":218,"context_line":""},{"line_number":219,"context_line":"    # br-ex must have a phy-br-ex interface. If not, loop loop loop."},{"line_number":220,"context_line":"    if (( $(sudo ovs-vsctl list-ifaces br-ex | grep -c -e phy-br-ex) \u003c 1 ))"},{"line_number":221,"context_line":"    then echo \"- waiting for br-ex ifaces\"; continue; fi"},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"    # We\u0027ve made it through all tests. Congratulations! OVS is ready."},{"line_number":224,"context_line":"    break"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_d5e21f01","line":221,"updated":"2015-12-01 16:22:36.000000000","message":"Same as above.","commit_id":"01e71b7a41a3fdab4b41f5832f0276aa287c5859"}]}
