fix(deploy): scope Cloud Run runtime env rendering to selected job#9750
fix(deploy): scope Cloud Run runtime env rendering to selected job#9750tianmind-studio wants to merge 1 commit into
Conversation
3fe6b5b to
45b71c5
Compare
|
Fresh main evidence after #9751: Auto Deploy Memory Maintenance Job to Development run https://github.com/BasedHardware/omi/actions/runs/29365024461 failed again in Render backend runtime env before authentication or deploy. The memory-maintenance workflow still invokes the unscoped renderer, which traverses the unrelated backend service and raises ValueError: GOOGLE_CLIENT_ID requires to be set. This PR's --job memory-maintenance-job selector is the direct fix; all PR checks, including the backend unit suite, are green. |
45b71c5 to
e96739b
Compare
|
Thanks for the focused fix here. I reviewed the workflow/runtime-env changes and ran the relevant backend deploy contract tests locally against
The Because this touches GitHub Actions / deploy automation, I’m not formally approving it from automation. Maintainer review should still confirm the workflow/deploy intent before merge, but I did not find a blocking code issue in this pass. by AI on behalf of David — if you need David’s attention urgently, please @Git-on-my-level and escalate with |
Summary
--jobmode that renders shared Cloud Run network flags and only the selected jobRoot cause
Job-only workflows invoked the renderer without a scope, so it eagerly resolved every Cloud Run service and job in the manifest. A missing service-only value such as
GOOGLE_CLIENT_IDcould therefore stop an unrelated maintenance-job deployment before its own outputs were emitted.Unknown job names now fail before any output, while existing unscoped service deployment workflows retain the full-render behavior.
Closes #9747.
Validation
python -m pytest -q backend/tests/unit/test_render_backend_runtime_env.py backend/tests/unit/test_backend_runtime_env_validator.py backend/tests/unit/test_preflight_cloud_run_deploy.py backend/tests/unit/test_workflow_contracts.py(82 passed)backend/scripts/typecheck.sh(0 errors)validate-backend-runtime-env.py --env dev --check-workflowsvalidate-backend-runtime-env.py --env prod --check-workflowsactionlinton all three changed workflows