Files
managed-portal/tasks/todo.md

5.1 KiB

Task Plan

Checklist

  • Audit the current .11 deployment state, image tags, and runtime container diffs.
  • Identify the minimal release payload: pushed images, compose/env/config assets, weights, and runtime-added files not present in the base images.
  • Push the .11 images to ota.zhengxinshipin.com:5443 with stable release tags.
  • Build a ZIP bundle containing compose files and all required non-image runtime assets.
  • Publish the ZIP bundle and an install script under /var/www/html/ai_deploy on 10.8.0.1.
  • Verify the published artifacts are downloadable and the install flow is internally consistent.

Scope And Risks

  • Scope: publish the current managed-portal deployment that is running on 10.8.0.11 by pushing its images to ota.zhengxinshipin.com:5443, generating a downloadable install script on 10.8.0.1, and uploading a ZIP bundle with compose/runtime assets required for the stack to run correctly elsewhere.
  • Expected touch points: remote Docker images on .11, runtime asset directories under managed/, deployment compose/env files under deploy/, and installer artifacts on /var/www/html/ai_deploy on 10.8.0.1.
  • Risk: the running .11 containers use local :dev images and also contain runtime-added files such as lap inside people-flow-project; pushing only the local images will not fully reproduce the running state unless those extras are separately bundled or the install path reapplies them.
  • Risk: required assets may live outside the image as mounted files, especially configs, outputs, weights, and managed data. Missing any of these will produce an install that starts but does not behave like .11.
  • Risk: registry push may require credentials that are not currently cached for user xiaozheng; confirm push access before finalizing the artifact layout.

Validation Intent

  • Prove the exact .11 images were retagged and pushed to ota.zhengxinshipin.com:5443.
  • Prove the ZIP bundle includes compose/env/config/runtime assets needed by the current .11 deployment.
  • Prove the install script on 10.8.0.1 references the published URLs, downloads the ZIP, unpacks it, and pulls the registry images expected by the compose file.

Review

  • Status: completed.
  • Result: published the current .11 managed-portal stack as release 20260513-330373b-11, including pushed registry images, a runtime-asset ZIP, and an install script under /var/www/html/ai_deploy on 10.8.0.1.
  • Release payload:
    • Registry images pushed to ota.zhengxinshipin.com:5443:
      • managed-portal:20260513-330373b-11
      • managed-portal-web:20260513-330373b-11
      • people-flow-project:20260513-330373b-11
      • store-dwell-alert:20260513-330373b-11
    • ZIP bundle: /var/www/html/ai_deploy/managed-portal-20260513-330373b-11.zip
    • Installer script: /var/www/html/ai_deploy/install-managed-portal-20260513-330373b-11.sh
    • Latest symlinks:
      • /var/www/html/ai_deploy/managed-portal-latest.zip
      • /var/www/html/ai_deploy/install-managed-portal-latest.sh
    • ZIP contents include:
      • deploy/docker-compose.yml
      • deploy/docker-compose.ota-release.yml
      • deploy/managed-portal.release.env
      • deploy/Dockerfile.runtime-overlay
      • managed_services.yaml
      • mounted runtime assets from .11: people-flow config/outputs/weights and store-dwell config/data
      • runtime overlays extracted from running containers for lap in both Python services and /app/logs/events.jsonl from store-dwell-alert
  • Verification:
    • Registry push succeeded for all four images. Observed repo digests:
      • managed-portal@sha256:589f699edce8271c80516030eae81abed95d8e62804976955eb86bf211d98f4e
      • managed-portal-web@sha256:f2e99c4745a3c16118a74084585f0a455e4f5295d9eb4cbabf2689b841966d9b
      • people-flow-project@sha256:963ecd41ee8a3f986c581b5330ce7163614571427711d524b936f05c3e84ec96
      • store-dwell-alert@sha256:d324cb2653ef25f6984a12b0cfa92064bf2c86b2946462001d14d254818d243d
    • Source and published ZIP sizes match exactly: 1261636056 bytes on .11 and .1.
    • HTTP validation succeeded:
      • http://10.8.0.1/ai_deploy/managed-portal-20260513-330373b-11.zip => 200 OK, Content-Length: 1261636056
      • http://10.8.0.1/ai_deploy/install-managed-portal-20260513-330373b-11.sh => 200 OK
    • ZIP content validation succeeded both at the source and after upload, including release-manifest.env, deploy/docker-compose.ota-release.yml, and runtime overlay files under runtime-overlays/.../lap/....
    • Local release asset validation passed:
      • sh -n deploy/install-managed-portal-ota.sh
      • compose config expansion for deploy/docker-compose.ota-release.yml with the .11 env file and placeholder image refs
  • Residual risk:
    • The published installer was validated for syntax and asset consistency, but it was not executed end-to-end on a fresh target host in this task.
    • The bundle intentionally excludes ephemeral /tmp, /run, and NVIDIA runtime-injected host libraries; reproducing GPU runtime behavior still depends on the target host having a working NVIDIA container runtime when gpus: all is used.