)]}'
{"recipes/l3_agent.rb":[{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"2853cc42fbc320bbc4169741393bb604c660f58b","unresolved":false,"context_lines":[{"line_number":123,"context_line":"  end"},{"line_number":124,"context_line":"  execute \"move ip from #{ext_bridge_iface} to #{ext_bridge}\" do"},{"line_number":125,"context_line":"    command \u003c\u003c-EOC"},{"line_number":126,"context_line":"      def_dev\u003d`ip route list | grep ^default | awk \u0027{print $5}\u0027`"},{"line_number":127,"context_line":"      def_ip\u003d`ip route list | grep ^default | awk \u0027{print $3}\u0027`"},{"line_number":128,"context_line":"      ip\u003d`ip addr show #{ext_bridge_iface} | grep \"inet \"  | awk \u0027{ print $2 }\u0027`"},{"line_number":129,"context_line":""}],"source_content_type":"text/x-ruby","patch_set":3,"id":"7ad32947_6d73ab4e","line":126,"updated":"2015-04-27 21:21:38.000000000","message":"would be nice to have some DRY here with running same command twice.  Would it be possible to have awk print both of these $5 and $3 with separator, then just split the two?\n\nNot a big deal, but maybe there a creative way to clean this up.","commit_id":"f6f5a4cbbe295fd75d2800eb373596b54a592e3e"},{"author":{"_account_id":9970,"name":"John Kasperski","email":"jckasper@linux.vnet.ibm.com","username":"jckasper"},"change_message_id":"e03123b0d3beb3a9e4357dd28f1c4c022ed87bbc","unresolved":false,"context_lines":[{"line_number":128,"context_line":"      ip\u003d`ip addr show #{ext_bridge_iface} | grep \"inet \"  | awk \u0027{ print $2 }\u0027`"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"      ip addr flush dev #{ext_bridge_iface}"},{"line_number":131,"context_line":"      ip addr add \"$ip\" dev #{ext_bridge}"},{"line_number":132,"context_line":"      if test \"$def_dev\" \u003d\u003d \"#{ext_bridge_iface}\";then"},{"line_number":133,"context_line":"        ip route add default via $def_ip"},{"line_number":134,"context_line":"      fi"}],"source_content_type":"text/x-ruby","patch_set":3,"id":"7ad32947_cb316ba4","line":131,"updated":"2015-04-28 15:00:39.000000000","message":"What happens when the system is reboot or the network is restarted?   It was my understanding that any \"ip addr\" command was temporary and would be lost on a reboot or network restart.","commit_id":"f6f5a4cbbe295fd75d2800eb373596b54a592e3e"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"d40b3d8646f2b690c3ffa5069e9999b6512df651","unresolved":false,"context_lines":[{"line_number":128,"context_line":"      ip\u003d`ip addr show #{ext_bridge_iface} | grep \"inet \"  | awk \u0027{ print $2 }\u0027`"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"      ip addr flush dev #{ext_bridge_iface}"},{"line_number":131,"context_line":"      ip addr add \"$ip\" dev #{ext_bridge}"},{"line_number":132,"context_line":"      if test \"$def_dev\" \u003d\u003d \"#{ext_bridge_iface}\";then"},{"line_number":133,"context_line":"        ip route add default via $def_ip"},{"line_number":134,"context_line":"      fi"}],"source_content_type":"text/x-ruby","patch_set":3,"id":"5ad0253b_1d2b4584","line":131,"in_reply_to":"7ad32947_cb316ba4","updated":"2015-04-29 01:51:13.000000000","message":"+1.\nI think this logic is most likely a temporary move. Just like devstack does. What if user use \"service network restart\" to restart the node network?","commit_id":"f6f5a4cbbe295fd75d2800eb373596b54a592e3e"}],"spec/l3_agent_spec.rb":[{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"2853cc42fbc320bbc4169741393bb604c660f58b","unresolved":false,"context_lines":[{"line_number":197,"context_line":""},{"line_number":198,"context_line":"      it \"doesn\u0027t move ip to external bridge if external bridge doesn\u0027t exists\" do"},{"line_number":199,"context_line":"        stub_command(\u0027ip addr show eth1 | grep \"inet \"\u0027).and_return(true)"},{"line_number":200,"context_line":"        stub_command(\u0027ovs-vsctl br-exists br-ex\u0027).and_return(false)"},{"line_number":201,"context_line":"        expect(chef_run).not_to run_execute(move_cmd)"},{"line_number":202,"context_line":"      end"},{"line_number":203,"context_line":""}],"source_content_type":"text/x-ruby","patch_set":3,"id":"7ad32947_2d093396","line":200,"updated":"2015-04-27 21:21:38.000000000","message":"This one for false is already stubbed in spec_helper?","commit_id":"f6f5a4cbbe295fd75d2800eb373596b54a592e3e"},{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"2853cc42fbc320bbc4169741393bb604c660f58b","unresolved":false,"context_lines":[{"line_number":202,"context_line":"      end"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"      it \"doesn\u0027t move ip to external bridge if the physical interface doesn\u0027t have ip\" do"},{"line_number":205,"context_line":"        stub_command(\u0027ip addr show eth1 | grep \"inet \"\u0027).and_return(false)"},{"line_number":206,"context_line":"        stub_command(\u0027ovs-vsctl br-exists br-ex\u0027).and_return(true)"},{"line_number":207,"context_line":"        expect(chef_run).not_to run_execute(move_cmd)"},{"line_number":208,"context_line":"      end"}],"source_content_type":"text/x-ruby","patch_set":3,"id":"7ad32947_ed39fb42","line":205,"updated":"2015-04-27 21:21:38.000000000","message":"This one for false is already stubbed in spec_helper?","commit_id":"f6f5a4cbbe295fd75d2800eb373596b54a592e3e"}]}
