)]}'
{"tools/xen/scripts/manage-vdi":[{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"0f9515d4c62a80f1e1d908cb7a1d568cca4de0cb","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        sleep 1"},{"line_number":52,"context_line":"    done"},{"line_number":53,"context_line":"    echo \"ERROR: timed out waiting for dev-mapper\""},{"line_number":54,"context_line":"    exit 1"},{"line_number":55,"context_line":"  else"},{"line_number":56,"context_line":"    echo \"/dev/$dev$part\""},{"line_number":57,"context_line":"  fi"}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"AAAAP3%2F%2Ftzo%3D","line":54,"updated":"2013-07-12 14:58:21.000000000","message":"We do have a simpler pattern in the exercises (and elsewhere) for doing this sort of timeout-polling:\n\n    if ! timeout $TIMEOUT_VALUE sh -c \"while [[ ! -b $device ]]; do sleep 1; done\"; then\n        echo \"error\"\n        exit 1\n    fi","commit_id":"a3ec804ad90fd13944c1b6bd5e55e85e6ecdb62c"},{"author":{"_account_id":7952,"name":"Euan Harris","email":"euan.harris@citrix.com","username":"euanh"},"change_message_id":"57f84d47d57f02930175dad2ec700c6d1f799562","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        sleep 1"},{"line_number":52,"context_line":"    done"},{"line_number":53,"context_line":"    echo \"ERROR: timed out waiting for dev-mapper\""},{"line_number":54,"context_line":"    exit 1"},{"line_number":55,"context_line":"  else"},{"line_number":56,"context_line":"    echo \"/dev/$dev$part\""},{"line_number":57,"context_line":"  fi"}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"AAAAP3%2F%2FtuI%3D","line":54,"in_reply_to":"AAAAP3%2F%2Ftzo%3D","updated":"2013-07-12 15:11:34.000000000","message":"Sadly we don\u0027t have the timeout utility in XenServer\u0027s dom0, so we can\u0027t use this pattern.","commit_id":"a3ec804ad90fd13944c1b6bd5e55e85e6ecdb62c"}]}
