COT.deploy_esxi module

Module for deploying VMs to ESXi, vCenter, and vSphere.

Functions

get_object_from_connection Look up an object by name.

Classes

COTDeployESXi Submodule for deploying VMs on ESXi and VMware vCenter/vSphere.
SmarterConnection A smarter version of pyVmomi’s SmartConnection context manager.
PyVmomiVMReconfigSpec Context manager for reconfiguring an ESXi VM using PyVmomi.
class COTDeployESXi(ui)[source]

Bases: COT.deploy.COTDeploy

Submodule for deploying VMs on ESXi and VMware vCenter/vSphere.

Inherited attributes: UI, package, generic_parser, parser, subparsers, hypervisor, configuration, username, password, power_on, vm_name, network_map serial_connection

Attributes: locator, datastore, ovftool_args

create_subparser()[source]

Add subparser for the CLI of this submodule.

This will create the shared parser, then create our own sub-subparser under subparsers.

fixup_ovftool_args(ovftool_args, target)[source]

Make any needed modifications to the ovftool arguments.

Parameters:
  • ovftool_args (list) – Any existing ovftool arguments to begin with.
  • target (str) – deployment target URI
Returns:

Updated ovftool arguments

fixup_serial_ports(serial_count)[source]

Use PyVmomi to create and configure serial ports for the new VM.

ready_to_run()[source]

Check whether the module is ready to run().

Returns:(True, ready_message) or (False, reason_why_not)
run()[source]

Do the actual work of this submodule - deploying to ESXi.

Raises:InvalidInputError – if ready_to_run() reports False
datastore = None

ESXi datastore to deploy to.

host = None

vSphere host to deploy to - set implicitly by self.locator.

locator

Target vSphere locator.

ovftool_args

List of CLI arguments to pass through to ovftool.

serial_connection

Mapping of serial ports to various connection types.

server = None

vCenter server or vSphere host - set implicitly by self.locator.

class PyVmomiVMReconfigSpec(conn, vm_name)[source]

Bases: object

Context manager for reconfiguring an ESXi VM using PyVmomi.

class SmarterConnection(ui, server, username, password, port=443)[source]

Bases: pyVim.connect.SmartConnection

A smarter version of pyVmomi’s SmartConnection context manager.

unwrap_connection_error(outer_e)[source]

Extract inner attributes from a ConnectionError.

ConnectionError often wraps another exception with more context; this function dives inside the ConnectionError to find that context.

Parameters:outer_e (ConnectionError) – ConnectionError to unwrap
Returns:extracted (errno, inner_message)
get_object_from_connection(conn, vimtype, name)[source]

Look up an object by name.