Skip to content

perf(build): reduce debug info for CI tests#4111

Merged
poroh merged 1 commit into
NVIDIA:mainfrom
poroh:ci-tests-build-speedup
Jul 24, 2026
Merged

perf(build): reduce debug info for CI tests#4111
poroh merged 1 commit into
NVIDIA:mainfrom
poroh:ci-tests-build-speedup

Conversation

@poroh

@poroh poroh commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

The test-release-container-services job builds the workspace test targets using Cargo’s development profile. Development builds generate full debug information by default, adding unnecessary work to the job’s lengthy compilation phase.

Add a dedicated ci-tests profile that inherits development behavior but generates line tables instead of complete debug metadata. The workflow passes this profile through cargo-make when compiling and running the tests.

Line tables preserve function names and source locations in panic backtraces, while avoiding the cost of generating debug information intended for interactive debugging. Local development and release profiles remain unchanged.

Related issues

N/A

Type of Change

  • Add - New feature or capability
  • Change - Changes in existing functionality
  • Fix - Bug fixes
  • Remove - Removed features or deprecated functionality
  • Internal - Internal changes (refactoring, tests, docs, etc.)

Breaking Changes

  • This PR contains breaking changes

Testing

  • Unit tests added/updated
  • Integration tests added/updated
  • Manual testing performed
  • No testing required (docs, internal refactor, etc.)

Additional Notes

It reduces tests compilation time from ~8m to ~5m 30s.

@poroh

poroh commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test c33aeac

@copy-pr-bot

copy-pr-bot Bot commented Jul 24, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Walkthrough

The release-container service test path now uses a dedicated ci-tests Cargo profile with line-table debug information, invokes cargo test directly, and removes the release debug environment override from CI container execution.

Changes

CI test profile execution

Layer / File(s) Summary
Configure and wire CI test execution
Cargo.toml, Makefile.toml, .github/workflows/ci.yaml
Adds the ci-tests profile inheriting from dev with line-tables-only debug data, runs the service tests directly with that profile, and removes CARGO_PROFILE_RELEASE_DEBUG=true from the container environment.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly and concisely reflects the main change: reducing debug info for CI test builds.
Description check ✅ Passed The description accurately matches the CI test profile and workflow changes in the changeset.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@poroh
poroh force-pushed the ci-tests-build-speedup branch from c33aeac to b70c120 Compare July 24, 2026 16:57
@poroh

poroh commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test b70c120

Signed-off-by: Dmitry Porokh <dporokh@nvidia.com>
@poroh
poroh force-pushed the ci-tests-build-speedup branch from b70c120 to e8268f2 Compare July 24, 2026 17:11
@poroh poroh changed the title perf(build): reduce debug info for api-core and CI tests perf(build): reduce debug info for CI tests Jul 24, 2026
@poroh
poroh marked this pull request as ready for review July 24, 2026 17:14
@poroh
poroh requested review from a team and lauragra-y as code owners July 24, 2026 17:14

@coderabbitai coderabbitai Bot 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.

🧹 Nitpick comments (1)
Makefile.toml (1)

714-717: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Lock dependency resolution in CI.

Add --locked so this test task fails on a stale lockfile instead of silently resolving a different dependency graph.

Suggested change
 args = [
   "test",
   "--profile=ci-tests",
+  "--locked",
 ]
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Makefile.toml` around lines 714 - 717, Update the cargo test task in the
Makefile configuration to include the --locked argument alongside
--profile=ci-tests, ensuring CI uses the committed lockfile without resolving
dependency changes.

Source: Path instructions

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@Makefile.toml`:
- Around line 714-717: Update the cargo test task in the Makefile configuration
to include the --locked argument alongside --profile=ci-tests, ensuring CI uses
the committed lockfile without resolving dependency changes.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 2ca4e084-496f-4125-b346-44400aa7450e

📥 Commits

Reviewing files that changed from the base of the PR and between 1bac3d0 and e8268f2.

📒 Files selected for processing (3)
  • .github/workflows/ci.yaml
  • Cargo.toml
  • Makefile.toml
💤 Files with no reviewable changes (1)
  • .github/workflows/ci.yaml

@poroh
poroh merged commit c490f75 into NVIDIA:main Jul 24, 2026
111 of 114 checks passed
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.

2 participants