Files
easyai/system-update/releases/online-update-progress-20261002.json
wangbo 4e4c4c9f23
Test deployment public URL (Linux) / test-linux (push) Canceled after 0s
Test start.ps1 (Windows) / test-windows (push) Canceled after 0s
docs(update): 补全发布验证耗时与配置摘要
2026-10-02 19:47:43 +08:00

182 lines
6.3 KiB
JSON

{
"status": "released",
"productVersion": "3.22.0.20261002.2",
"source": {
"backend": "e3f12240c4a186a55ed2bc9a5afcb71902004a55",
"backendBaseline": "179d4dae8c9400a773f7f9d92a397039c39ef572",
"web": "56e51ea55dcc281ade91bd0e6438c5fc6a617c25",
"webBaseline": "340c47f820a039d409ffcc4f464829acc973a171"
},
"images": {
"server-main": "sha256:6825def1b7bf252eee477b34d3ddc0317e691f0787ea3f300793c4d272a3b491",
"watchtower": "sha256:6afd62a208687bb4840b3b8131e1461dee7033989e14e28b6d69082839eaf410",
"updater": "sha256:bbaddb598618ceaaf6696f6c5fe19daf564d983039b70d36a4196cc4aaca385a",
"web": "sha256:a287db622d13a706725520d3a9864f986b8854630d198fce3373a8e7f1cfe3b0",
"ws-gateway": "sha256:a2b5fb67384c7f0eca7c7a768b5deacb4c0d2195dfbeb6e16ef40d6dc097bf25"
},
"watchtowerVersion": "1.22.3",
"acceptance": {
"oldWatchtower": {
"status": "passed",
"beforeVersion": "3.22.0.20261002.1",
"afterVersion": "3.22.0.20261002.2",
"uiElapsedSeconds": 61,
"details": [
"old backend jobApi=false",
"real browser confirmation",
"elapsed32s and restart message screenshot",
"refresh resumes original update",
"core images and health verified"
],
"evidenceDirectory": "online-update-progress-20261002/acceptance"
},
"newWatchtower": {
"status": "passed",
"beforeVersion": "3.22.0.20261002.1",
"afterVersion": "3.22.0.20261002.2",
"uiElapsedSeconds": 43,
"jobId": "wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"details": [
"POST async update accepted and scan started",
"SSE endpoint observed through public browser",
"Mongo job stages persisted",
"history confirms completion after main restart",
"refresh resumes original task",
"core images and health verified"
],
"evidenceDirectory": "online-update-progress-20261002/acceptance"
},
"managedUpdater": {
"status": "passed",
"beforeVersion": "3.22.0.20261002.1",
"afterVersion": "3.22.0.20261002.2",
"uiElapsedSeconds": 53,
"jobId": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"failureRecoveryJobId": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"failureRecoveryUiElapsedSeconds": 154,
"details": [
"all six stages persisted with timestamps",
"real browser confirmation and refresh recovery",
"main service restart queries recover",
"updater restart during intentional HTTP503 health failure resumes same task",
"failed candidate rolled back to A image ids and A version",
"new job then updates real formal B digests and healthy services"
],
"evidenceDirectory": "online-update-progress-20261002/acceptance",
"failureFixtureDigest": "sha256:deddc80bee5a4123dc62d1598a34660ad4f54b8f50f3968fbf4b1844b058e11f"
}
},
"production": {
"host": "101.200.186.210",
"mode": "legacy_watchtower",
"status": "passed",
"beforeVersion": "3.22.0.20260930.3",
"afterVersion": "3.22.0.20261002.2",
"backupPath": "/home/admin/easyai/data/deployment-backups/online-update-progress-20261002",
"iceConfigUnchangedSha256": "1427d181c5d405278e7b9b099379679a91d408108b6737c6cff2ed978f88acc1",
"health": {
"main": "ok",
"web": "ok",
"gateway": "ok",
"watchtower": "ok",
"coreRestarts": 0
},
"interfaces": {
"eventsWithUpdateToken": 401,
"eventsWithIndependentToken": 200,
"history": 200,
"statusBeforeFirstScan": 204,
"livez": 200,
"readyz": 200,
"startupz": 200,
"hostPortPublished": false
},
"publicLoginPage": "passed",
"updaterInstalled": false
},
"testBackup": "/root/easyai/update-backups/online-update-progress-20261002",
"validation": [
{
"check": "frontend real mounted components and full 30s HTTP regression",
"passed": true,
"durationSeconds": 49.42
},
{
"check": "MongoDB 4.4 and real HTTP/SSE task integration plus existing backend tests",
"passed": true,
"durationSeconds": 2.21
},
{
"check": "backend production compile",
"passed": true,
"durationSeconds": 21.02
},
{
"check": "frontend production build",
"passed": true,
"durationSeconds": 441.82
},
{
"check": "Bash and PowerShell security initialization and migration",
"passed": true
},
{
"check": "bash scripts/test-security-env.sh",
"exitCode": 0,
"durationSeconds": 0.54
},
{
"check": "bash scripts/test-update-env-migrations.sh",
"exitCode": 0,
"durationSeconds": 0.41
},
{
"check": "bash scripts/test-deployment-public-url.sh",
"exitCode": 0,
"durationSeconds": 2.03
},
{
"check": "pwsh -NoProfile -File scripts/Test-SecurityEnv.ps1",
"exitCode": 0,
"durationSeconds": 0.57
},
{
"check": "python3 scripts/test-start-ps1-env.py",
"exitCode": 0,
"durationSeconds": 0.02
},
{
"check": "updater 8 behavior tests",
"passed": true,
"durationSeconds": 0.9
},
{
"check": "updater production build",
"passed": true,
"durationSeconds": 1.28
}
],
"rollback": "Restore recorded immutable core image digests and Compose backup, preserve business volumes and data/update-state; synchronize Watchtower token configuration before restoring its image. Do not re-submit unresolved update jobs.",
"latestPromotion": {
"status": "passed",
"allDigestsMatchCandidate": true
},
"testRestore": {
"status": "passed",
"configFilesUnchanged": true,
"version": "3.22.0.20260930.3",
"businessVolumesAndUpdateStatePreserved": true
},
"runtimeBase": {
"server-main": "registry.cn-shanghai.aliyuncs.com/comfy-ai/comfy-server@sha256:8493e5a4c82f6564d86925f4ab37061f6e6e3d9a6bb88db5fe5d25d3a7b7835b",
"dependenciesMatchFormalBaseline": true
},
"versionCatalog": {
"defaultAddress": "https://openapi.51easyai.com",
"observedVersion": "3.22.0.20260930.3",
"status": "awaiting_user_scope_confirmation",
"reason": "Version service is on a different production host from the explicitly requested 101.200.186.210"
},
"releasedAt": "2026-10-02T19:45:00+08:00"
}