Repository navigation
ci: serve teleop_ros2 live bring-up its own web client build - #1401
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the
|
The live CloudXR bring-up in test-teleop-ros2 hosts the web client, which the library downloads from the GitHub Pages slot for the wheel's version. On a VERSION bump PR that slot (client/release-X.Y.x/) does not exist until main deploys it after merge, so the job 404s and wheel-gate blocks the merge. Build the client from the same commit in a build-web-client job and point TELEOP_WEB_CLIENT_STATIC_DIR at it. Signed-off-by: Andrei Aristarkhov <aaristarkhov@nvidia.com>
7a6d437 to
8aa8909
Compare
Description
test-teleop-ros2's live CloudXR bring-up starts the node withhost_client=True, so the library downloads the web client from the GitHub Pages slot that matches the wheel version (versioned_web_client_url()). On aVERSIONbump PR that slot (client/release-X.Y.x/) does not exist untilmain's docs deploy publishes it after merge. The job 404s,wheel-gatefails, and the bump cannot merge. #1399 is blocked on exactly this:This PR builds the client from the same commit instead of fetching it:
build-web-clientjob. Runs the existingbuild-cloudxr-web-clientaction and uploads the build aswebxr-client. It runs in parallel withbuild-ubuntu.test-teleop-ros2. Needsbuild-web-client. On GPU runs it downloads the artifact to a run-unique/tmpdirectory, mounts it read-only into the live container, and setsTELEOP_WEB_CLIENT_STATIC_DIR. The always-run cleanup step removes the directory.wheel-gate. Listsbuild-web-client, so a client build failure is named directly instead of surfacing as a skippedtest-teleop-ros2.Side effects:
deps/cloudxr/webxr_clientare now bring-up-tested against their own client, not the last published one.npm test(jest, about 2 s), so the client unit tests become part of the requiredwheel-gate. Before this they ran only in the docs workflow, on client-path PRs, with no required check. This is a policy change.wheel-gatenow depends on the public NGC Web SDK download andnpm installinstead of GitHub Pages. Follow-up: cache the SDK tarball inbuild-cloudxr-web-clientassetup-cloudxr-sdkdoes.Type of change
Testing
pre-commithooks pass on the changed workflow file. YAML parses, and the jobneedsandenvresolve as intended.build-web-clientpasses, andtest-teleop-ros2's live bring-up logs noweb client: fetchingline.test-teleop-ros2failure.Checklist
SKIP=check-copyright-year pre-commit run --all-filesgit commit -s) per the DCO🤖 Generated with Claude Code
Summary by CodeRabbit