Red Hat Training

A Red Hat training course is available for Red Hat Virtualization

Chapter 1. Overview

The Python software development kit is a collection of classes that allows you to interact with the Red Hat Virtualization Manager in Python-based projects. By downloading these classes and adding them to your project, you can access a range of functionality for high-level automation of administrative tasks.

Red Hat Virtualization provides two versions of the Python software development kit:

Version 3
The V3 Python software development kit provides backwards compatibility with the class and method structure provided in the Python software development kit as of the latest release of Red Hat Enterprise Virtualization 3.6. Applications written using using the Python software development kit from Red Hat Enterprise Virtualization 3.6 can be used with this version without modification.
Version 4
The V4 Python software development kit provides an updated set of class and method names and signatures. Applications written using the Python software development kit from Red Hat Enterprise Virtualization 3.6 must be updated before they can be used with this version.

Either version of the Python software development kit can be used in a Red Hat Virtualization environment as required by installing the corresponding package and adding the required libraries to your Python project.

Python 3.7 and async

In Python 3.7 and later versions, async is a reserved keyword. You cannot use the async parameter in methods of services that previously supported it, as in the following example, because async=True will cause an error:

dc = dc_service.update(
    types.DataCenter(
        description='Updated description',
    ),
    async=True,
)

The solution is to add an underscore to the parameter (async_):

dc = dc_service.update(
    types.DataCenter(
        description='Updated description',
    ),
    async_=True,
)
Note

This limitation applies only to Python 3.7 and later. Earlier versions of Python do not require this modification.

1.1. Prerequisites

To install the Python software development kit, you must have:

  • A system where Red Hat Enterprise Linux 7 is installed. Both the Server and Workstation variants are supported.
  • A subscription to Red Hat Virtualization entitlements.
Important

The software development kit is an interface for the Red Hat Virtualization REST API. As such, you must use the version of the software development kit that corresponds to the version of your environment. For example, if you are using RHV 4.2, you must use the version of the software development kit designed for 4.2.

1.2. Installing the Python Software Development Kit

To install the Python software development kit:

  1. Enable the repositories:

    # subscription-manager repos \
        --enable=rhel-7-server-rpms \
        --enable=rhel-7-server-rhv-4.2-manager-rpms
  2. Install the required packages:

    1. For V3:

      # yum install ovirt-engine-sdk-python
    2. For V4:

      # yum install python-ovirt-engine-sdk4

The Python software development kit and accompanying documentation are downloaded to the /usr/lib/python2.7/site-packages/ovirtsdk/ directory and can be added to Python projects.