A QEMU wrapper adding vagrant support and shared folders
Project description
transient
transient
is thin wrapper for QEMU that provides additional features like downloading
disk images, shared folders, and SSH support. Currently transient
only supports
Vagrant libvirt images.
Installation
transient
is available on PyPI, so the latest
release can be installed with pip install transient
. To install transient
from
source, clone this repository and run pip install -e '.[dev]'
from the project
root. As always, the usage of python virtual environments
is recommended for a development setup.
transient
has dependencies on a number of packages. On ubuntu, these can be installed
by running apt-get install ssh qemu-system-x86 python3-pip libguestfs-tools
. Note that
libguestfs-tools
is only required when using the -copy-in-before
and -copy-out-after
flags.
Documentation
Documentation for transient
is available on Read the Docs.
Quick Start
transient
is primarily a wrapper for QEMU. It supplies a small set of flags that
are used to add additional features to the VM being started. As the name implies,
it is almost completely stateless. This avoids problems that can sometimes occur
with libvirt
based tools becoming 'unsynchronized' with the real system state.
For example, in the following command, the flags before the --
are passed to
transient
. The remaining arguments are passed directly to QEMU. This example
will cause transient
to download and run a Centos7 VM (from the Vagrant Cloud)
with 1GB of memory using a text console. This virtual machine will be automatically
shut down on exit and its disk will be destroyed.
transient run \
-image centos/7:2004.01 \
-- \
-nographic -enable-kvm -m 1G
transient
also supports a vagrant
style SSH connection. This will start the
virtual machine and connect standard input and output to an SSH connection
with the machine, instead of the serial console. However, when this connection
is closed, the machine will be automatically shut down (unlike vagrant
). For
example:
transient run \
-ssh-console \
-image centos/7:2004.01 \
-- \
-enable-kvm -m 1G
The -ssh-console
flag depends on the image having the normal vagrant keypair
trusted for the vagrant
user.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file transient-0.5.tar.gz
.
File metadata
- Download URL: transient-0.5.tar.gz
- Upload date:
- Size: 2.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51984fcd372c0ce110952894e7232da6bb640b5e18ee653a5cdb5004fb1e376e |
|
MD5 | a5dc1d66e76eb62452e4915566fdd99c |
|
BLAKE2b-256 | 3973fdb509cd98b89a600ad46a42531532e057c92869e936b13afc525cdbbde4 |
File details
Details for the file transient-0.5-py3-none-any.whl
.
File metadata
- Download URL: transient-0.5-py3-none-any.whl
- Upload date:
- Size: 2.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc8753685b26c4c23b7481b6b5ab2047735fc867b8d64b6939ca177a69a9f7a5 |
|
MD5 | e19ae75a3a83676a52017577b52408ea |
|
BLAKE2b-256 | 1e99edb0318cbb0f4159a2b4ecf55506726a6c5642a16380801f78dc6280dfa0 |