)]}'
{"sahara/utils/ssh_remote.py":[{"author":{"_account_id":10670,"name":"Michael McCune","email":"elmiko@redhat.com","username":"mimccune"},"change_message_id":"2231c211ed8cc7e7658bae1b6e0175c8c3bfc371","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"from eventlet.green import subprocess as e_subprocess"},{"line_number":43,"context_line":"from eventlet import semaphore"},{"line_number":44,"context_line":"from eventlet.timeout import Timeout as e_timeout"},{"line_number":45,"context_line":"from oslo_config import cfg"},{"line_number":46,"context_line":"from oslo_log import log as logging"},{"line_number":47,"context_line":"from oslo_utils import excutils"}],"source_content_type":"text/x-python","patch_set":1,"id":"da6ed579_0dddd16e","line":44,"updated":"2016-01-13 22:28:24.000000000","message":"our preference is not to import classes directly from modules, we should leave is as the module import","commit_id":"9c24aed8b7d1c0f17d0b9683566ad20dc6d8c2da"},{"author":{"_account_id":9126,"name":"Chris Buccella","email":"chris@buccella.org","username":"hdd"},"change_message_id":"c3df4f37440abfef813a041a2cba540886ec3576","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"from eventlet.green import subprocess as e_subprocess"},{"line_number":43,"context_line":"from eventlet import semaphore"},{"line_number":44,"context_line":"from eventlet.timeout import Timeout as e_timeout"},{"line_number":45,"context_line":"from oslo_config import cfg"},{"line_number":46,"context_line":"from oslo_log import log as logging"},{"line_number":47,"context_line":"from oslo_utils import excutils"}],"source_content_type":"text/x-python","patch_set":1,"id":"da6ed579_083a9fcc","line":44,"in_reply_to":"da6ed579_0dddd16e","updated":"2016-01-13 22:51:59.000000000","message":"Sure, I\u0027ll take care of it.","commit_id":"9c24aed8b7d1c0f17d0b9683566ad20dc6d8c2da"},{"author":{"_account_id":10670,"name":"Michael McCune","email":"elmiko@redhat.com","username":"mimccune"},"change_message_id":"2231c211ed8cc7e7658bae1b6e0175c8c3bfc371","unresolved":false,"context_lines":[{"line_number":666,"context_line":"        start_time \u003d time.time()"},{"line_number":667,"context_line":""},{"line_number":668,"context_line":"        op_name \u003d func.__name__"},{"line_number":669,"context_line":"        if op_name in (\u0027_execute_command\u0027, \u0027_write_file_to\u0027):"},{"line_number":670,"context_line":"            # append command or file name"},{"line_number":671,"context_line":"            op_name +\u003d \u0027: %s\u0027 % args[0]"},{"line_number":672,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da6ed579_2d5535f9","line":669,"updated":"2016-01-13 22:28:24.000000000","message":"this seems a little brittle to me, but i\u0027m not sure there is a better alternative.","commit_id":"9c24aed8b7d1c0f17d0b9683566ad20dc6d8c2da"},{"author":{"_account_id":9126,"name":"Chris Buccella","email":"chris@buccella.org","username":"hdd"},"change_message_id":"c3df4f37440abfef813a041a2cba540886ec3576","unresolved":false,"context_lines":[{"line_number":666,"context_line":"        start_time \u003d time.time()"},{"line_number":667,"context_line":""},{"line_number":668,"context_line":"        op_name \u003d func.__name__"},{"line_number":669,"context_line":"        if op_name in (\u0027_execute_command\u0027, \u0027_write_file_to\u0027):"},{"line_number":670,"context_line":"            # append command or file name"},{"line_number":671,"context_line":"            op_name +\u003d \u0027: %s\u0027 % args[0]"},{"line_number":672,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"da6ed579_68d23b5e","line":669,"in_reply_to":"da6ed579_2d5535f9","updated":"2016-01-13 22:51:59.000000000","message":"I agree. I added the \u0027if\u0027 statement since func could be anything, and I didn\u0027t want to introduce an unintended consequence.","commit_id":"9c24aed8b7d1c0f17d0b9683566ad20dc6d8c2da"},{"author":{"_account_id":12038,"name":"Vitaly Gridnev","email":"gridnevvvit@gmail.com","username":"vgridnev"},"change_message_id":"4c54d1815bb999ad976d2e1fca4ea4068f77b435","unresolved":false,"context_lines":[{"line_number":668,"context_line":"        op_name \u003d func.__name__"},{"line_number":669,"context_line":"        if op_name in (\u0027_execute_command\u0027, \u0027_write_file_to\u0027):"},{"line_number":670,"context_line":"            # append command or file name"},{"line_number":671,"context_line":"            op_name +\u003d \u0027: %s\u0027 % args[0]"},{"line_number":672,"context_line":""},{"line_number":673,"context_line":"        try:"},{"line_number":674,"context_line":"            with e_timeout.Timeout(timeout,"}],"source_content_type":"text/x-python","patch_set":3,"id":"da6ed579_3e49c160","line":671,"updated":"2016-01-14 11:53:28.000000000","message":"Not sure it\u0027s good idea to put explicit command to exception, I think that in most cases it\u0027s enough that timeout was inside of ssh remote operation","commit_id":"b2497c225a7ba25044cb1df06a7fe57fe0baecc4"}]}
