Skip to content

fix: Properly mount paths for L0_custom_ops's Docker sub-test - #987

Merged
the-david-oy merged 1 commit into
mainfrom
doy-custom-ops
Nov 20, 2025
Merged

fix: Properly mount paths for L0_custom_ops's Docker sub-test#987
the-david-oy merged 1 commit into
mainfrom
doy-custom-ops

Conversation

@the-david-oy

@the-david-oy the-david-oy commented Nov 20, 2025

Copy link
Copy Markdown
Contributor

The test was failing in CI due to Docker-in-Docker volume mount issues. When Model Analyzer runs in a CI container and launches Triton in Docker mode, the Docker daemon (running on the host) cannot access paths that only exist inside the CI container.

Root cause: The path /mnt/nvdl/datasets/inferenceserver/ exists inside the CI container but not on the host where Docker daemon runs. When Docker tries to mount this path, it fails with "read-only file system".

Solution: Use /tmp/output/ for Docker mode. This path is accessible to both the CI container and the Docker daemon on the host.

Changes:

  • Copy models to /tmp/output/L0_custom_ops_models for Docker mode
  • Keep /tmp/L0_custom_ops_models for c_api and local modes
  • Update test_config_generator.py to handle both paths correctly
  • Docker mode mounts /tmp/output path which the daemon can access
  • c_api/local modes use local /tmp path with LD_PRELOAD

This test now passes CI.

The test was failing in CI due to Docker-in-Docker volume mount issues.
When Model Analyzer runs in a CI container and launches Triton in Docker
mode, the Docker daemon (running on the host) cannot access paths that
only exist inside the CI container.

Root cause: The path /mnt/nvdl/datasets/inferenceserver/ exists inside
the CI container but not on the host where Docker daemon runs. When
Docker tries to mount this path, it fails with "read-only file system".

Solution: Use /tmp/output/ for Docker mode, following the pattern from
L0_server_launch_modes test. This path is accessible to both the CI
container and the Docker daemon on the host.

Changes:
- Copy models to /tmp/output/L0_custom_ops_models for Docker mode
- Keep /tmp/L0_custom_ops_models for c_api and local modes
- Update test_config_generator.py to handle both paths correctly
- Docker mode mounts /tmp/output path which the daemon can access
- c_api/local modes use local /tmp path with LD_PRELOAD

This ensures all three modes (c_api, local, docker) work in CI without
any mode-specific branching or skipping.

@matthewkotila matthewkotila left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@the-david-oy
the-david-oy merged commit 8374f80 into main Nov 20, 2025
4 checks passed
@the-david-oy
the-david-oy deleted the doy-custom-ops branch November 20, 2025 17:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants