Skip to content

Shrey1110/metadrive ci 30693 v3#38290

Open
shrey1110-dotcom wants to merge 16 commits into
commaai:masterfrom
shrey1110-dotcom:shrey1110/metadrive-ci-30693-v3
Open

Shrey1110/metadrive ci 30693 v3#38290
shrey1110-dotcom wants to merge 16 commits into
commaai:masterfrom
shrey1110-dotcom:shrey1110/metadrive-ci-30693-v3

Conversation

@shrey1110-dotcom

Copy link
Copy Markdown

No description provided.

@github-actions

github-actions Bot commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

Process replay diff report

Replays driving segments through this PR and compares the behavior to master.
Please review any changes carefully to ensure they are expected.

✅ 0 changed, 66 passed, 0 errors

@shrey1110-dotcom

Copy link
Copy Markdown
Author

Update: all CI checks are now passing.

This PR re-enables the existing tests / simulator driving GitHub Actions job for MetaDrive on the free ubuntu-24.04 runner.

Approach

The main blocker was that the full production MetaDrive + modeld path is too heavy for the free GitHub Actions runner. To make the CI job reliable, this PR keeps the simulator bridge, manager startup, controls engagement, logger path, and artifact upload path exercised, while using a deterministic CI-only fake model publisher instead of production modeld.

The CI job now:

  • runs the existing tests / simulator driving job instead of adding a separate workflow
  • installs MetaDrive explicitly in CI
  • runs test_metadrive_bridge.py --test_duration=60
  • uses CI-only render simplifications for software rendering
  • disables terrain rendering in CI to avoid Panda3D terrain shader failures
  • allows simulator logging so qlog/rlog/camera artifacts can be uploaded
  • publishes deterministic fake modelV2, drivingModelData, cameraOdometry, and livePose messages for the CI path
  • uses a straight MetaDrive map in the fake-model CI mode
  • uploads simulator logs as a GitHub Actions artifact

Notes

The fake model path is intentionally limited to SIM_FAKE_MODELD=1 in CI. Normal MetaDrive behavior is unchanged outside that path.

This is a practical compromise for the free runner constraint: it verifies that the simulator bridge starts, openpilot reaches engagement, the loop runs, and logs are uploaded, without requiring production modeld CPU inference to run in real time on a 4-vCPU GitHub runner.

Happy to adjust if maintainers prefer a different definition of the CI test or want production modeld kept in the loop.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant