Skip to content

Commit eb97810

Browse files
jsbattigclaude
andcommitted
Fix Docker cleanup issues and bump version to 2.8.0.0
- Fixed cleanup paths in data-cleaner: changed from /data/qdrant/* to /qdrant/storage/* - Made data-cleaner mount consistent with qdrant service mount path - Enhanced uninstall now properly removes root-owned files in Docker - Updated test expectations to match corrected mount paths - All CI tests passing 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 7001519 commit eb97810

File tree

4 files changed

+13
-13
lines changed

4 files changed

+13
-13
lines changed

src/code_indexer/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55
to provide code search capabilities.
66
"""
77

8-
__version__ = "2.7.0.0"
8+
__version__ = "2.8.0.0"
99
__author__ = "Code Indexer Team"

src/code_indexer/cli.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3523,17 +3523,17 @@ def _perform_complete_system_wipe(force_docker: bool, console: Console):
35233523
style="yellow",
35243524
)
35253525

3526-
# Step 1: Standard cleanup first
3527-
console.print("\n🔧 [bold]Step 1: Standard container cleanup[/bold]")
3526+
# Step 1: Enhanced cleanup first
3527+
console.print("\n🔧 [bold]Step 1: Enhanced container cleanup[/bold]")
35283528
try:
35293529
docker_manager = DockerManager(force_docker=force_docker)
3530-
if not docker_manager.remove_containers(remove_volumes=True):
3530+
if not docker_manager.cleanup(remove_data=True, verbose=True):
35313531
console.print(
3532-
"⚠️ Standard cleanup had issues, continuing with wipe...",
3532+
"⚠️ Enhanced cleanup had issues, continuing with wipe...",
35333533
style="yellow",
35343534
)
35353535
docker_manager.clean_data_only(all_projects=True)
3536-
console.print("✅ Standard cleanup completed")
3536+
console.print("✅ Enhanced cleanup completed")
35373537
except Exception as e:
35383538
console.print(
35393539
f"⚠️ Standard cleanup failed: {e}, continuing with wipe...", style="yellow"
@@ -3846,14 +3846,14 @@ def uninstall(ctx, force_docker: bool, wipe_all: bool):
38463846
if wipe_all:
38473847
_perform_complete_system_wipe(force_docker, console)
38483848
else:
3849-
# Standard uninstall
3849+
# Standard uninstall with orchestrated cleanup
38503850
docker_manager = DockerManager(force_docker=force_docker)
38513851

3852-
# Remove containers and volumes completely
3853-
if not docker_manager.remove_containers(remove_volumes=True):
3852+
# Use enhanced cleanup to remove root-owned files before stopping containers
3853+
if not docker_manager.cleanup(remove_data=True, verbose=True):
38543854
sys.exit(1)
38553855

3856-
# Also clean data
3856+
# Also clean collections data
38573857
docker_manager.clean_data_only(all_projects=True)
38583858

38593859
console.print("✅ Complete uninstallation finished", style="green")

src/code_indexer/services/docker_manager.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2868,7 +2868,7 @@ def cleanup(
28682868
# Use data cleaner to clean named volume contents
28692869
if verbose:
28702870
self.console.print("🧹 Using data cleaner for root-owned files...")
2871-
cleanup_paths = ["/data/ollama/*", "/data/qdrant/*"]
2871+
cleanup_paths = ["/data/ollama/*", "/qdrant/storage/*"]
28722872
self.clean_with_data_cleaner(cleanup_paths)
28732873

28742874
# Now stop the data cleaner too
@@ -3671,7 +3671,7 @@ def _build_cleaner_service(
36713671
qdrant_volume_path = str(project_qdrant_dir.absolute())
36723672

36733673
volumes = [
3674-
f"{qdrant_volume_path}:/data/qdrant", # Relative path for CoW clone support
3674+
f"{qdrant_volume_path}:/qdrant/storage", # Match qdrant service mount path
36753675
]
36763676

36773677
if include_ollama_volumes:

tests/test_per_project_containers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,7 @@ def test_data_cleaner_service_uses_project_local_storage(self):
401401
# Find the qdrant data volume mount
402402
qdrant_mount = None
403403
for volume in cleaner_service["volumes"]:
404-
if "/data/qdrant" in volume:
404+
if "/qdrant/storage" in volume:
405405
qdrant_mount = volume
406406
break
407407

0 commit comments

Comments
 (0)