COT package reference

The below documents describe in depth the code structure and APIs of COT. These are not generally of interest to the end users of the COT script, but are provided for reference of developers wishing to integrate the COT package directly into their code.

Package implementing the Common OVF Tool.

Virtual machine definition modules

COT.vm_description Abstract superclass for reading, editing, and writing VMs.
COT.vm_factory Factory for virtual machine objects.
COT.vm_context_manager Context manager for virtual machine definitions.
COT.xml_file Reading, editing, and writing XML files.

Command modules

COT.submodule Parent classes for implementing COT subcommands.
COT.add_disk Module for adding disks to VMs.
COT.add_file Module for adding files to VM definitions.
COT.deploy Module for deploying VM descriptions to a hypervisor to instantiate VMs.
COT.deploy_esxi Module for deploying VMs to ESXi, vCenter, and vSphere.
COT.edit_hardware Module for editing hardware details of a VM.
COT.edit_product Module for editing product information in a VM description.
COT.edit_properties Module for managing VM environment configuration properties. Provide ‘help’ keyword for COT CLI. Implements “info” subcommand.
COT.inject_config Implements “inject-config” command.
COT.install_helpers Implements “install-helpers” command.
COT.remove_file Module for removing files from VM definitions.

Helper library modules

COT.data_validation Various helpers for data sanity checks.
COT.file_reference Wrapper classes to abstract away differences between file sources.
COT.platforms Package for identifying guest platforms and handling platform differences.

User interface modules

COT.ui_shared Abstract user interface superclass.
COT.cli CLI entry point for the Common OVF Tool (COT) suite.


COT.helpers Provides a common interface for interacting with various non-Python programs.
COT.ovf Package for handling OVF and OVA virtual machine description files.