Skip to content

Commit d31c2fb

Browse files
committed
avocado.utils.podman: Add VLLM container support and enhanced lifecycle management
- Add run_vllm_container() method for creating VLLM containers with AIU support * Device mapping for /dev/vfio * Volume mounting for model directories * Environment variables (AIU_PCIE_IDS, VLLM_SPYRE_USE_CB, optional chunk settings) * Privileged mode with custom memory/shm settings * Port mapping and VLLM-specific arguments - Add container lifecycle management methods: * list_containers(): List all or running containers * logs(): Get container logs with follow and tail options * inspect(): Get detailed container information * remove(): Delete containers with optional force flag * stats(): Monitor container resource usage - Enhance login() method with API key authentication support * Add api_key parameter for token-based authentication * Auto-use 'iamapikey' username for IBM Cloud registries * Maintain backward compatibility with username/password auth - Add concurrent container management methods (AsyncPodman only): * run_multiple_vllm_containers(): Create N containers concurrently with unique AIU IDs * start_multiple_containers(): Start multiple containers in parallel * stop_multiple_containers(): Stop multiple containers in parallel * remove_multiple_containers(): Remove multiple containers in parallel * get_multiple_container_logs(): Retrieve logs from multiple containers concurrently - Add pull() method for downloading container images from registries All methods implemented in both synchronous (Podman) and asynchronous (AsyncPodman) versions. Maintains existing code structure and error handling patterns. - Assisted by AI tools Signed-off-by: Abdul Haleem <abdhalee@linux.vnet.ibm.com>
1 parent cbea52d commit d31c2fb

1 file changed

Lines changed: 690 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)