Skip to content

#119 - Add uninstall script for the CMake install and container image#120

Merged
dleshchev merged 9 commits into
mainfrom
clean-uninstall
Jun 4, 2026
Merged

#119 - Add uninstall script for the CMake install and container image#120
dleshchev merged 9 commits into
mainfrom
clean-uninstall

Conversation

@chloecrozier
Copy link
Copy Markdown
Member

@chloecrozier chloecrozier commented Jun 4, 2026

Summary

Add scripts/cleanup.sh to remove DAQIRI's CMake install or container image without touching build prerequisites (DPDK, DOCA libraries, CUDA, hugepages, NIC drivers). Targets are cmake, container, and all, with --dry-run, --yes, and built-in verification. The cmake target is manifest-driven with a name-scoped fallback scan; container verification surfaces (without auto-removing) dangling images and exited containers from interrupted builds. Short usage notes are added to docs/tutorials/bare-metal-cmake-build.md and docs/getting-started.md.

Test plan

  • Dry-run both targets on a host with a working install and confirm the printed actions match build/install_manifest.txt.
  • Real run; confirm the verification block reports OK for every check.

To Do:

  • IGX
  • DGX Spark
  • RTX Pro 6000

Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>
Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Jun 4, 2026

Greptile Summary

This PR adds scripts/cleanup.sh to remove DAQIRI's CMake install or container image while leaving build prerequisites (DPDK, DOCA, CUDA, hugepages, NIC drivers) intact, and updates docs/getting-started.md and docs/tutorials/bare-metal-cmake-build.md with usage instructions.

  • scripts/cleanup.sh: New 432-line script supporting cmake, container, and all targets with --dry-run, --yes, and --clean-build options; manifest-driven removal with a name-scoped fallback scan; sudo ldconfig refresh after removal (addressing prior feedback about stale cache warnings); post-removal verification with targeted artifact checks for DAQIRI-owned files.
  • Docs: Both documentation files gain a Cleanup section with example invocations and a description of manifest semantics, prefix override, and verification behavior; one minor inaccuracy in the verification description in the bare-metal tutorial (flagged inline).

All commits are DCO-signed and follow the #119 - … title convention.

Confidence Score: 5/5

Safe to merge; the script is additive, does not touch any library source, and is gated behind explicit user confirmation.

The cleanup script is well-structured: manifest validation, prefix boundary checks, ldconfig refresh after removal, dry-run support, and targeted post-removal verification are all present and correct. The only finding is a minor description mismatch in the tutorial prose that does not affect script behavior.

docs/tutorials/bare-metal-cmake-build.md — one-line verification description needs updating (inline suggestion provided).

Important Files Changed

Filename Overview
scripts/cleanup.sh New 432-line cleanup script: manifest-driven and scan-driven cmake removal, container image removal, ldconfig refresh after removal (addresses prior review feedback), confirmation/dry-run/assume-yes modes, and verify_cmake/verify_container post-removal checks. Logic is sound and defensive.
docs/tutorials/bare-metal-cmake-build.md Adds a Cleanup section with usage instructions and a prose description of verification; the description lists ls /opt/daqiri as the first verification check but the script does a targeted artifact scan, not a bare directory listing.
docs/getting-started.md Adds a Cleanup section with example invocations for container, cmake, and all targets, plus a cross-link to the bare-metal tutorial. Content is accurate.

Reviews (6): Last reviewed commit: "#119 - Harden cleanup script reruns" | Re-trigger Greptile

Comment thread scripts/uninstall.sh Outdated
Comment thread scripts/cleanup.sh
Comment thread scripts/cleanup.sh
@chloecrozier
Copy link
Copy Markdown
Member Author

Addressed and applied greptile's comments.

@RamyaGuru
Copy link
Copy Markdown
Collaborator

I tested uninstall.sh container on my IGX. The dry run and full unisntall behavior all looked good! Maybe @dleshchev can test the cmake uninstall on his system before we merge this in.

One minor semantic thing: I think we discussed yesterday calling this script something like "cleanup.sh" instead of "uninstall.sh".

Comment thread docs/tutorials/bare-metal-cmake-build.md Outdated
chloecrozier and others added 7 commits June 4, 2026 16:01
Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
…install script

Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>
Rename scripts/uninstall.sh to scripts/cleanup.sh and follow through on
all in-repo references: the two info() banners in the script
("Verifying CMake/container cleanup:"), the Cleanup section heading and
commands in docs/getting-started.md, and Step 7 in
docs/tutorials/bare-metal-cmake-build.md (including the cross-link
anchor #step-7-cleanup). The script's usage line picks up the new
basename automatically. No behavior changes.

Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>
Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>
Signed-off-by: Denis Leshchev <dleshchev@nvidia.com>
@dleshchev dleshchev merged commit 8c5d69f into main Jun 4, 2026
3 checks passed
@chloecrozier chloecrozier deleted the clean-uninstall branch June 4, 2026 20:50
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.

3 participants