Unify trunk on main: initialization → main #3
@@ -58,12 +58,16 @@
|
|||||||
"ports": ["127.0.0.1:5432:5432"],
|
"ports": ["127.0.0.1:5432:5432"],
|
||||||
"volumes": ["mesh-store-data:/var/lib/postgresql/data"]
|
"volumes": ["mesh-store-data:/var/lib/postgresql/data"]
|
||||||
},
|
},
|
||||||
|
// Over TCP, not the socket. While the store initialises it runs a temporary server on the
|
||||||
|
// socket ONLY, then stops it and starts the real one — so a socket check passes, the action
|
||||||
|
// exits happy, and the verify a moment later lands in the gap and fails. The action and its
|
||||||
|
// verify must ask the same question, or the action can succeed into a state verify rejects.
|
||||||
{
|
{
|
||||||
"id": "store-ready",
|
"id": "store-ready",
|
||||||
"type": "action",
|
"type": "action",
|
||||||
"in": "mesh-store",
|
"in": "mesh-store",
|
||||||
"command": ["sh", "-c", "for i in $(seq 1 180); do pg_isready -U postgres >/dev/null 2>&1 && exit 0; sleep 1; done; echo 'the store did not answer within 180s; its own last words follow'; pg_isready -U postgres; tail -n 20 /var/lib/postgresql/data/log/*.log 2>/dev/null; exit 1"],
|
"command": ["sh", "-c", "for i in $(seq 1 180); do pg_isready -h 127.0.0.1 -U postgres >/dev/null 2>&1 && exit 0; sleep 1; done; echo 'the store did not answer within 180s; its own last words follow'; pg_isready -h 127.0.0.1 -U postgres; tail -n 20 /var/lib/postgresql/data/log/*.log 2>/dev/null; exit 1"],
|
||||||
"verify": ["pg_isready", "-U", "postgres"]
|
"verify": ["pg_isready", "-h", "127.0.0.1", "-U", "postgres"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "inventory-database",
|
"id": "inventory-database",
|
||||||
|
|||||||
Reference in New Issue
Block a user