xuang7 opened a new pull request, #6131: URL: https://github.com/apache/texera/pull/6131
### What changes were proposed in this PR? Fixes the Python Virtual Environment (PVE) feature in the single-node deployment on `release/v1.2`. Two parts: 1. **`bin/single-node/nginx.conf`** — adds the missing `/pve/` route (rewrites `/pve/*` → `/api/pve/*`, proxies to `workflow-runtime-coordinator-service:8085`), same as the dev proxy / k8s gateway. Without it, `/pve/*` 404s and the UI shows *"Could not load Python virtual environments"* on every Python UDF operator selection. 2. **`PveManager.getSystemPath`** — the system-requirements lock file is copied to `/tmp/system-requirements-lock.txt` in every deployed image (`bin/computing-unit-master.dockerfile`), but `getSystemPath` chose its path from the `isLocal` flag (`isLocal → amber/…`, else `/tmp/…`). A containerized single-node run is also non-k8s, so `isLocal` is `true` and it looked for the repo-relative `amber/system-requirements-lock.txt`, which does not exist in the container → empty system-package set. The flag cannot distinguish a source-tree dev run from a containerized single-node run, so this probes for `/tmp/system-requirements-lock.txt` first and falls back to the repo-relative copy for dev runs. **Note:** targeted at `release/v1.2` only. `main` has a significantly refactored `PveManager` that does not use the lock file; `main`'s single-node 404 is fixed separately by the nginx-only PR against `main`. ### Any related issues, documentation, discussions? Closes #5963. ### How was this PR tested? _Pending — manual verification on the single-node Docker stack before this is marked ready for review._ ### Was this PR authored or co-authored using generative AI tooling? Generated-by: Claude Code (Claude Opus 4.8) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
