Skip to content

Conversation

@nammn
Copy link
Collaborator

@nammn nammn commented Dec 17, 2025

Summary

Container Runtime and Podman Environment Improvements:

  • Major rewrite of scripts/dev/setup_ibm_container_runtime.sh to:

    • Add robust setup for rootless and rootful Podman, including cgroup delegation, D-Bus setup, and environment export for downstream scripts.
    • Introduce safe and aggressive cleanup routines for container state, with logic to avoid disrupting active Minikube clusters.
    • Install or update crun as needed, and configure container and storage settings for both user and root contexts.
    • Test Podman functionality and perform targeted resets if issues are detected.
  • In scripts/minikube/setup_minikube.sh:

    • Source the Podman environment if available, ensuring rootless container support is set up before Minikube operations.
    • Switch Minikube to run in rootful Podman mode for more reliable networking, especially on ppc64le and s390x architectures. This includes explicit configuration and cleanup of stale Podman volumes and networks. [1] [2]

Download and Setup Reliability:

  • Increase curl timeout and retry delay in scripts/funcs/install to handle large binary downloads (like Minikube) on slow networks, and enable resume capability for interrupted downloads.

Python Environment and Requirements Handling:

  • Remove conditional logic for skipping Python requirements installation

Proof of Work

Checklist

  • Have you linked a jira ticket and/or is the ticket in the title?
  • Have you checked whether your jira ticket required DOCSP changes?
  • Have you added changelog file?

@github-actions
Copy link

⚠️ (this preview might not be accurate if the PR is not rebased on current master branch)

MCK 1.6.2 Release Notes

@nammn nammn added the skip-changelog Use this label in Pull Request to not require new changelog entry file label Dec 17, 2025
fi
export XDG_RUNTIME_DIR="${runtime_dir}"

# Clean up stale podman state (fixes "cannot re-exec process to join the existing user namespace")
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

this still happens, but once evg agents properly cleanup podman containers we should be able to rremove this: https://jira.mongodb.org/browse/DEVPROD-25447

local start_args=("--driver=podman")
start_args+=("--cpus=4" "--memory=8g")
# Use containerd as container runtime inside minikube for better rootless support
start_args+=("--container-runtime=containerd")
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

and containerd is also more stable

Fetches an auth token from ECR via boto3 and logs
into the Docker daemon via the Docker SDK.
"""
import boto3
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

lets only import this when we use this, otherwise build_image (for podman and minikube) and thus ibm container will need those deps

@nammn nammn changed the title use rootless podman CLOUDP-362015 - use rootless podman Dec 18, 2025
- Increase download timeout from 180s to 600s for large binaries on slow IBM networks
- Fix rootful mode: unset MINIKUBE_ROOTLESS env var and use --rootless=false flag
- Update kicbase to v0.0.48 to match minikube v1.37.0
- Use bridge CNI for ppc64le/s390x (kindnet lacks ppc64le images)
- Add safe cleanup for shared CI machines (only kills orphaned processes)
- Configure root-level podman for minikube rootful mode
- Test podman functionality before proceeding

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-changelog Use this label in Pull Request to not require new changelog entry file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants