Skip to main content
Warning: You are using the test version of PyPI. This is a pre-production deployment of Warehouse. Changes made here affect the production instance of TestPyPI (
Help us improve Python packaging - Donate today!

Additional features on top of libguestfs-tools

Project Description

Rejviz [ray-veez], VM / disk image tools built on top of libguestfs-tools.

Currently rejviz-builder command is implemented.



A command that proxies to virt-builder and adds a custom –nic option, which allows to configure network interfaces on the image (files /etc/sysconfig/network-scripts/ifcfg-ethX). All other options are passed to virt-builder untouched.

The format of the –nic parameter is:

--nic name=NAME[,key=VALUE]...

key = {name|hwaddr|bootproto|ipaddr|network|netmask|broadcast}

The values which are not specified can often be inferred (or in case of hwaddr, autogenerated to a random KVM MAC address).

  • If only name is specified, the bootproto is ‘dhcp’.
  • If name and ipaddr is specified, the bootproto is ‘static’ and and the other values are inferred as for a /32 network.

Example usage:

rejviz-builder centos-7.0 \
    -o mycentos.qcow2 --format qcow2 --size 15G \
    --hostname mycentos --root-password password:mypassword \
    --nic name=eth0 \
    --nic name=eth1,ipaddr= \
    --nic name=eth2,ipaddr=

Design doc

Use cases

  • Create a VM image
    • From base image
    • Having some size
    • With some script run
    • With network interfaces configured (some DHCP, some static IPs)
    • Subscribed via RHSM
  • Create a VM
    • With network interface MAC addresses matching the interfaces from the image
    • With some RAM and vCPUs
  • Amend existing VM image (or libvirt domain)
    • Reconfigure network interfaces
    • Re-subscribe via RHSM
  • Tell me something about an image (or libvirt domain)
    • List network interfaces and their basic config
    • Check that MACs on the domain match MACs in /etc/sysconfig/network-scripts

I/O view

  • Creating an image
    • In: params
    • Out: image
    • rejviz-builder command that proxies to virt-builder and adds custom params on top (RHSM, network interfaces)
  • Creating a VM
    • In: image and params
    • Out: domain XML or created domain (both through virt-install)
    • rejviz-install command that proxies to virt-install and determines some of the parameters from the image
  • Amending an image (or libvirt domain)
    • In: (image or domname) and params
    • Out: image edited in place
    • rejviz-customize command that proxies to virt-customize and adds custom params on top (RHSM, network interfaces)
  • Image/domain introspection
    • In: (image or domname) and params
    • Out: information printed
    • rejviz-peek

Release History

History Node


This version
History Node


Download Files

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

File Name & Hash SHA256 Hash Help Version File Type Upload Date
(17.5 kB) Copy SHA256 Hash SHA256
Source Oct 27, 2014

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting