Skip to content

Comments

[https://nvbugs/5754977][fix] Use free port for serve test#10878

Merged
pcastonguay merged 1 commit intoNVIDIA:release/1.2from
JunyiXu-nv:dev-junyi-use-free-port-in-serve-test
Jan 21, 2026
Merged

[https://nvbugs/5754977][fix] Use free port for serve test#10878
pcastonguay merged 1 commit intoNVIDIA:release/1.2from
JunyiXu-nv:dev-junyi-use-free-port-in-serve-test

Conversation

@JunyiXu-nv
Copy link
Collaborator

@JunyiXu-nv JunyiXu-nv commented Jan 21, 2026

Summary by CodeRabbit

  • Tests

    • Enhanced test infrastructure to use dynamic port allocation in CI environments for improved reliability and consistency.
  • Chores

    • Removed outdated test configuration entry.

✏️ Tip: You can customize this high-level summary in your review settings.

Description

Test Coverage

PR Checklist

Please review the following before submitting your PR:

  • PR description clearly explains what and why. If using CodeRabbit's summary, please make sure it makes sense.

  • PR Follows TRT-LLM CODING GUIDELINES to the best of your knowledge.

  • Test cases are provided for new code paths (see test instructions)

  • Any new dependencies have been scanned for license and vulnerabilities

  • CODEOWNERS updated if ownership changes

  • Documentation updated as needed

  • Update tava architecture diagram if there is a significant design change in PR.

  • The reviewers assigned automatically/manually are appropriate for the PR.

  • Please check this after reviewing the above items as appropriate for this PR.

GitHub Bot Help

/bot [-h] ['run', 'kill', 'skip', 'reuse-pipeline'] ...

Provide a user friendly way for developers to interact with a Jenkins server.

Run /bot [-h|--help] to print this help message.

See details below for each supported subcommand.

Details

run [--reuse-test (optional)pipeline-id --disable-fail-fast --skip-test --stage-list "A10-PyTorch-1, xxx" --gpu-type "A30, H100_PCIe" --test-backend "pytorch, cpp" --add-multi-gpu-test --only-multi-gpu-test --disable-multi-gpu-test --post-merge --extra-stage "H100_PCIe-TensorRT-Post-Merge-1, xxx" --detailed-log --debug(experimental)]

Launch build/test pipelines. All previously running jobs will be killed.

--reuse-test (optional)pipeline-id (OPTIONAL) : Allow the new pipeline to reuse build artifacts and skip successful test stages from a specified pipeline or the last pipeline if no pipeline-id is indicated. If the Git commit ID has changed, this option will be always ignored. The DEFAULT behavior of the bot is to reuse build artifacts and successful test results from the last pipeline.

--disable-reuse-test (OPTIONAL) : Explicitly prevent the pipeline from reusing build artifacts and skipping successful test stages from a previous pipeline. Ensure that all builds and tests are run regardless of previous successes.

--disable-fail-fast (OPTIONAL) : Disable fail fast on build/tests/infra failures.

--skip-test (OPTIONAL) : Skip all test stages, but still run build stages, package stages and sanity check stages. Note: Does NOT update GitHub check status.

--stage-list "A10-PyTorch-1, xxx" (OPTIONAL) : Only run the specified test stages. Examples: "A10-PyTorch-1, xxx". Note: Does NOT update GitHub check status.

--gpu-type "A30, H100_PCIe" (OPTIONAL) : Only run the test stages on the specified GPU types. Examples: "A30, H100_PCIe". Note: Does NOT update GitHub check status.

--test-backend "pytorch, cpp" (OPTIONAL) : Skip test stages which don't match the specified backends. Only support [pytorch, cpp, tensorrt, triton]. Examples: "pytorch, cpp" (does not run test stages with tensorrt or triton backend). Note: Does NOT update GitHub pipeline status.

--only-multi-gpu-test (OPTIONAL) : Only run the multi-GPU tests. Note: Does NOT update GitHub check status.

--disable-multi-gpu-test (OPTIONAL) : Disable the multi-GPU tests. Note: Does NOT update GitHub check status.

--add-multi-gpu-test (OPTIONAL) : Force run the multi-GPU tests in addition to running L0 pre-merge pipeline.

--post-merge (OPTIONAL) : Run the L0 post-merge pipeline instead of the ordinary L0 pre-merge pipeline.

--extra-stage "H100_PCIe-TensorRT-Post-Merge-1, xxx" (OPTIONAL) : Run the ordinary L0 pre-merge pipeline and specified test stages. Examples: --extra-stage "H100_PCIe-TensorRT-Post-Merge-1, xxx".

--detailed-log (OPTIONAL) : Enable flushing out all logs to the Jenkins console. This will significantly increase the log volume and may slow down the job.

--debug (OPTIONAL) : Experimental feature. Enable access to the CI container for debugging purpose. Note: Specify exactly one stage in the stage-list parameter to access the appropriate container environment. Note: Does NOT update GitHub check status.

For guidance on mapping tests to stage names, see docs/source/reference/ci-overview.md
and the scripts/test_to_stage_mapping.py helper.

kill

kill

Kill all running builds associated with pull request.

skip

skip --comment COMMENT

Skip testing for latest commit on pull request. --comment "Reason for skipping build/test" is required. IMPORTANT NOTE: This is dangerous since lack of user care and validation can cause top of tree to break.

reuse-pipeline

reuse-pipeline

Reuse a previous pipeline to validate current commit. This action will also kill all currently running builds associated with the pull request. IMPORTANT NOTE: This is dangerous since lack of user care and validation can cause top of tree to break.

@JunyiXu-nv JunyiXu-nv requested a review from a team as a code owner January 21, 2026 06:37
Signed-off-by: Junyi Xu <219237550+JunyiXu-nv@users.noreply.github.com>
@JunyiXu-nv JunyiXu-nv force-pushed the dev-junyi-use-free-port-in-serve-test branch from 59b60ba to 670e824 Compare January 21, 2026 06:37
@JunyiXu-nv
Copy link
Collaborator Author

/bot run

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 21, 2026

📝 Walkthrough

Walkthrough

Test infrastructure is modified to allocate ports dynamically instead of using hard-coded values. Function signatures for server readiness and OpenAI chat completion checks are updated to require explicit port parameters. A waived test entry is removed from the test configuration list.

Changes

Cohort / File(s) Summary
Test Infrastructure Updates
tests/integration/defs/examples/serve/test_serve.py
Function signatures updated: http_port parameter changed from default value "8000" to required parameter in check_server_ready() and check_openai_chat_completion(). Import added for get_free_port_in_ci. Test flows refactored to dynamically allocate ports via get_free_port_in_ci() and pass allocated port to all related function calls.
Test Configuration
tests/integration/test_lists/waives.txt
Removed waived test entry: examples/serve/test_serve.py::test_config_file_loading[--config].

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description contains only the template with an unfilled checklist; it lacks actual implementation details, issue explanation, test coverage information, and rationale. Fill in the Description and Test Coverage sections to explain what changes were made and why, and list the relevant tests that validate these changes.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: using a free port for the serve test instead of a hard-coded port.
Docstring Coverage ✅ Passed Docstring coverage is 80.00% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@tensorrt-cicd
Copy link
Collaborator

PR_Github #32887 [ run ] triggered by Bot. Commit: 670e824

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
tests/integration/defs/examples/serve/test_serve.py (1)

1-10: Add NVIDIA copyright header to comply with repo policy.

This .py file still lacks the standard NVIDIA header at the very top; please add the repository’s standard copyright header with the latest modification year.

As per coding guidelines, please add the required header.

🧹 Nitpick comments (1)
tests/integration/defs/examples/serve/test_serve.py (1)

9-12: Keep defs.common namespace on import.

Line 10 uses a from-import, but the guidelines require preserving module namespaces. Consider importing the module and qualifying the call sites.

♻️ Proposed refactor
 import pytest
 import requests
 import yaml
-from defs.common import get_free_port_in_ci
+import defs.common as defs_common
 from defs.conftest import llm_models_root, skip_no_hopper
 from defs.trt_test_alternative import popen, print_error, print_info
 from openai import OpenAI
 from requests.exceptions import RequestException
@@
-    port = get_free_port_in_ci()
+    port = defs_common.get_free_port_in_ci()
@@
-    port = get_free_port_in_ci()
+    port = defs_common.get_free_port_in_ci()

As per coding guidelines, keep module namespaces on imports.

@tensorrt-cicd
Copy link
Collaborator

PR_Github #32887 [ run ] completed with state SUCCESS. Commit: 670e824
/LLM/release-1.2/L0_MergeRequest_PR pipeline #108 completed with status: 'FAILURE'

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

@JunyiXu-nv
Copy link
Collaborator Author

/bot run

@tensorrt-cicd
Copy link
Collaborator

PR_Github #32928 [ run ] triggered by Bot. Commit: 670e824

@tensorrt-cicd
Copy link
Collaborator

PR_Github #32928 [ run ] completed with state SUCCESS. Commit: 670e824
/LLM/release-1.2/L0_MergeRequest_PR pipeline #115 completed with status: 'FAILURE'

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

@pcastonguay
Copy link
Collaborator

/bot run --disable-fail-fast

@tensorrt-cicd
Copy link
Collaborator

PR_Github #32961 [ run ] triggered by Bot. Commit: 670e824

@tensorrt-cicd
Copy link
Collaborator

PR_Github #32961 [ run ] completed with state SUCCESS. Commit: 670e824
/LLM/release-1.2/L0_MergeRequest_PR pipeline #124 completed with status: 'FAILURE'

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

@pcastonguay
Copy link
Collaborator

/bot run --disable-fail-fast

@tensorrt-cicd
Copy link
Collaborator

PR_Github #33000 [ run ] triggered by Bot. Commit: 670e824

@tensorrt-cicd
Copy link
Collaborator

PR_Github #33000 [ run ] completed with state SUCCESS. Commit: 670e824
/LLM/release-1.2/L0_MergeRequest_PR pipeline #136 completed with status: 'SUCCESS'

@pcastonguay pcastonguay merged commit 4e38b99 into NVIDIA:release/1.2 Jan 21, 2026
7 checks passed
dominicshanshan pushed a commit to dominicshanshan/TensorRT-LLM that referenced this pull request Jan 29, 2026
)

Signed-off-by: Junyi Xu <219237550+JunyiXu-nv@users.noreply.github.com>
dominicshanshan pushed a commit to dominicshanshan/TensorRT-LLM that referenced this pull request Jan 29, 2026
)

Signed-off-by: Junyi Xu <219237550+JunyiXu-nv@users.noreply.github.com>
Signed-off-by: Wangshanshan <30051912+dominicshanshan@users.noreply.github.com>
dominicshanshan pushed a commit to dominicshanshan/TensorRT-LLM that referenced this pull request Jan 29, 2026
)

Signed-off-by: Junyi Xu <219237550+JunyiXu-nv@users.noreply.github.com>
Signed-off-by: Wangshanshan <30051912+dominicshanshan@users.noreply.github.com>
dominicshanshan pushed a commit to dominicshanshan/TensorRT-LLM that referenced this pull request Jan 29, 2026
)

Signed-off-by: Junyi Xu <219237550+JunyiXu-nv@users.noreply.github.com>
Signed-off-by: Wangshanshan <30051912+dominicshanshan@users.noreply.github.com>
dominicshanshan added a commit to dominicshanshan/TensorRT-LLM that referenced this pull request Jan 29, 2026
dominicshanshan pushed a commit to dominicshanshan/TensorRT-LLM that referenced this pull request Feb 2, 2026
)

Signed-off-by: Junyi Xu <219237550+JunyiXu-nv@users.noreply.github.com>
Signed-off-by: Wangshanshan <30051912+dominicshanshan@users.noreply.github.com>
chzblych pushed a commit that referenced this pull request Feb 2, 2026
Signed-off-by: Junyi Xu <219237550+JunyiXu-nv@users.noreply.github.com>
Signed-off-by: Wangshanshan <30051912+dominicshanshan@users.noreply.github.com>
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.

4 participants