{"id":700,"date":"2020-03-17T23:27:12","date_gmt":"2020-03-17T17:57:12","guid":{"rendered":"http:\/\/www.cyberaka.com\/?p=700"},"modified":"2020-03-17T23:27:13","modified_gmt":"2020-03-17T17:57:13","slug":"block-a-shell-script-till-a-server-boots-up","status":"publish","type":"post","link":"https:\/\/www.cyberaka.com\/?p=700","title":{"rendered":"Block a shell script till a server boots up"},"content":{"rendered":"\n<p>This small script blocks a shell script \/ docker compose command script till a dependent server boots up.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong>#!\/usr\/bin\/env bash\n\nwhile <\/strong><em>:\n<\/em><strong>do\n  <\/strong>response=<strong>$<\/strong><em>(curl --write-out %{http_code} --silent --output \/dev\/null -X GET \"$1\")\n  <\/em><strong>if [[ <\/strong>\"$response\" <strong>-ne <\/strong>200<strong> ]] <\/strong>; <strong>then\n    <\/strong><em>echo <\/em>\"Server is not yet up >> $1 >> $response\"\n    <em>sleep <\/em>1\n  <strong>else\n    <\/strong><em>echo <\/em>\"Server is up >> $1 >> $response\"\n    <em>exit <\/em>1\n  <strong>fi\ndone\n<\/strong><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>This small script blocks a shell script \/ docker compose command script till a dependent server boots up. #!\/usr\/bin\/env bash while : do response=$(curl &#8211;write-out %{http_code} &#8211;silent &#8211;output \/dev\/null -X GET &#8220;$1&#8221;) if [[ &#8220;$response&#8221; -ne 200 ]] ; then echo &#8220;Server is not yet up >> $1 >> $response&#8221; sleep 1 else echo &#8220;Server [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[27],"tags":[],"class_list":["post-700","post","type-post","status-publish","format-standard","hentry","category-linux-os"],"_links":{"self":[{"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=\/wp\/v2\/posts\/700","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=700"}],"version-history":[{"count":1,"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=\/wp\/v2\/posts\/700\/revisions"}],"predecessor-version":[{"id":701,"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=\/wp\/v2\/posts\/700\/revisions\/701"}],"wp:attachment":[{"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=700"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=700"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cyberaka.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=700"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}