)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"c49d7cfb55c49ba1f5e455dabd0e5c1779146b32","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This adds up to four retries to the partprobe call, with a two second"},{"line_number":10,"context_line":"sleep between tries. This should allow partprobe to eventually succeed"},{"line_number":11,"context_line":"if things are slow or whatever."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ie01f0ab0723be86b9d2a4f354877611d10754be1"},{"line_number":14,"context_line":"Closes-Bug: #1418833"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"da86d52c_2c673b27","line":11,"updated":"2015-02-06 17:31:25.000000000","message":"The commit message no longer accurately describes the behavior.","commit_id":"f3b591778cb4b9b5543114dce8bd0bc276ef0f3f"}],"ironic_python_agent/shell/copy_configdrive_to_disk.sh":[{"author":{"_account_id":8003,"name":"Aleksandr Gordeev","email":"agordeev@mirantis.com","username":"agordeev"},"change_message_id":"652c1189f49cf9282988e4df721d409764c6f913","unresolved":false,"context_lines":[{"line_number":47,"context_line":"  /sbin/partprobe $DEVICE \u0026\u0026 break"},{"line_number":48,"context_line":"  sleep 2"},{"line_number":49,"context_line":"done"},{"line_number":50,"context_line":"if [[ $? \u003d\u003d 0 ]]; then"},{"line_number":51,"context_line":"  /sbin/partprobe $DEVICE || fail \"running partprobe against $DEVICE\""},{"line_number":52,"context_line":"fi"},{"line_number":53,"context_line":""}],"source_content_type":"text/x-sh","patch_set":5,"id":"da86d52c_0c2a77e7","line":50,"updated":"2015-02-06 17:22:06.000000000","message":"what will it checks? sleep exit code?\n\nif partprobe doesn\u0027t return an error, there\u0027s no reason to call it again.","commit_id":"a0d7139259ee56779fdbbfdac65f3ef2fd9c4ca2"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"67b9af989d687567159ed6c2035baa164cb8e0db","unresolved":false,"context_lines":[{"line_number":47,"context_line":"  /sbin/partprobe $DEVICE \u0026\u0026 break"},{"line_number":48,"context_line":"  sleep 2"},{"line_number":49,"context_line":"done"},{"line_number":50,"context_line":"if [[ $? \u003d\u003d 0 ]]; then"},{"line_number":51,"context_line":"  /sbin/partprobe $DEVICE || fail \"running partprobe against $DEVICE\""},{"line_number":52,"context_line":"fi"},{"line_number":53,"context_line":""}],"source_content_type":"text/x-sh","patch_set":5,"id":"da86d52c_4c59cf8d","line":50,"in_reply_to":"da86d52c_0c2a77e7","updated":"2015-02-06 17:26:16.000000000","message":"The \u0026\u0026 break is effectively testing for you. Try this:\n\nfor attempt in 1 2 3 4; do \n  # Linear backoff\n  sleep $(($attempt*1))\n  /sbin/partprobe $DEVICE \u0026\u0026 break\ndone || fail \"Partprobe failed to run\"","commit_id":"a0d7139259ee56779fdbbfdac65f3ef2fd9c4ca2"}]}
