Skip to main content

Python3-based libvirt client

Project description

VMMan : a python3-based libvirt client

Requirements:
--------------------
Please run pip3 install -r requirements before running vmman
The kvm unix group must exist and whoever using vmman must be part of that group.
This software basically clones already-existing VMs (the 'templates') to create new ones according to your cli arguments.

Those template VMs must meet the following requirements:

  • the virt-clone and virsh binaries must be present where you run vmman
  • templated VM must allow ssh root@vm with key authentication

The following templates are currently supported: ubuntu, debian, centos, fedora, rocky. See templates.txt.

TODO (long term):

  • better exception handling
  • get a better handling of ssh with python3 (paramiko ?)
  • find some way to get virt-clone native

TOFIX vmman -c $HYPERVISOR create just wouldn't work for now vmman -c $HYPERVISOR rm wouldn't remove the VM's image (thought I had fixed that one !)

CURRENT KNOWN ISSUES: Sometimes when launching the shell script at the end of a VM creation (sh /tmp/execconfig.VMNAME-jfg_) it'll end up with a lost connection or no route to host.

This means that the VM had not finished booting up and thus cannot receive the new configs.
Workaround: just relaunch the shell script.

Sometimes post-install scripts fail to copy on the new VM. No workaround yet.

Important files to consider:

  • environment.yaml : this is where you fetch the target VMs network configuration
  • templates.txt : lists all the currently-supported templates, with some basic info
  • requirements.txt : this lists all the python modules used by this software
  • helpers.py, specifically Helpers.getConnectURI(), which shows how the hypervisor URI is constructed
  • vmman (formerly vmman.py; the program's entry point). Check around line 80, LOGLEVEL . Levels are explained at the top of the file.
  • _version.py : current software version

Project details


Release history Release notifications | RSS feed

This version

2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vmman1-2.0.tar.gz (2.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vmman1-2.0-py3-none-any.whl (2.1 kB view details)

Uploaded Python 3

File details

Details for the file vmman1-2.0.tar.gz.

File metadata

  • Download URL: vmman1-2.0.tar.gz
  • Upload date:
  • Size: 2.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for vmman1-2.0.tar.gz
Algorithm Hash digest
SHA256 3e61de6d9705bffa957aa997fca05c7f5aae367cd4b0c70b1a0829def2c1a8be
MD5 cb85a8cc46545f347d56a281ff2a2654
BLAKE2b-256 0dc37312a16e312951a4c159e64e078017a943f3c792dcae8221eaa632805418

See more details on using hashes here.

File details

Details for the file vmman1-2.0-py3-none-any.whl.

File metadata

  • Download URL: vmman1-2.0-py3-none-any.whl
  • Upload date:
  • Size: 2.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for vmman1-2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5db96d6c786e5eb6287834d901afa4e5f90e538ec0cd92ffe532f6aa1d872b06
MD5 56768f39c42847b2c9b4410307273121
BLAKE2b-256 aaa3fa3cea127b1a1e417866ba7b128cef4369d4fbd2f0d7ad24187e22d51989

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page