feat: scaffold MySQL services with lifecycle and readiness checks

This commit is contained in:
2026-09-20 23:12:47 +08:00
parent ff95692edb
commit affd02d5f7
28 changed files with 1153 additions and 63 deletions

View File

@@ -65,7 +65,8 @@ def exerciseServer(binary, directory, env, stopSignal, cleanupMarker=None):
status, body = request("/health/ready")
if status != 200 or body["code"] != "READY":
raise AssertionError(f"unexpected readiness: {body}")
status, user = request("/users", json.dumps({"name": "Smoke", "email": "smoke@example.com"}).encode())
status, body = request("/users", json.dumps({"name": "Smoke", "email": "smoke@example.com"}).encode())
user = body.get("data", body)
if status != 201 or user["name"] != "Smoke" or "createdAt" not in user:
raise AssertionError(f"unexpected created user: {user}")
process.send_signal(stopSignal)
@@ -90,7 +91,7 @@ def exerciseServer(binary, directory, env, stopSignal, cleanupMarker=None):
def main():
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--go", default="go", help="Go executable")
parser.add_argument("--version", default="v0.1.1", help="Released CLI version to install")
parser.add_argument("--version", default="v0.2.0", help="Released CLI version to install")
parser.add_argument("--cli", help="Use a locally built CLI instead of installing")
parser.add_argument("--framework-version", help="Explicit version passed to the CLI")
parser.add_argument("--framework-dir", help="Local checkout for pre-release verification")