Skip to main content

A plugin for adding Python-ESXi-Utilities nodes to graphex.

Project description

©2025 The MITRE Corporation. ALL RIGHTS RESERVED.

The author's affiliation with The MITRE Corporation is provided for identification purposes only, and is not intended to convey or imply MITRE's concurrence with, or support for, the positions, opinions, or viewpoints expressed by the author.'©2025 The MITRE Corporation. ALL RIGHTS RESERVED. NOTICE

This software was produced for the U. S. Government under Basic Contract No. W56KGU-18-D-0004, and is subject to the Rights in Noncommercial Computer Software and Noncommercial Computer Software Documentation Clause 252.227-7014 (FEB 2014)

Introduction

This repo contains the source code for the pip package graphex-esxi-utils. This package is a plugin for the the GraphEx application.

Installation

This plugin can be installed via pip:

python3 -m pip install graphex_esxi_utils

This plugin can also be installed from source via: 'make all'.

Execution

The code in this repo is not meant to be executed directly. It is an interface between the python library 'esxi_utils' and the 'graphex' python module. Any code here is meant to be loaded via the 'graphex' application.

Plugin Documentation

For documentation on this plugin, please read the offical documentation in the markdown documentation directory.

This documentation can also be reached from inside the Graphex UI itself by navigating to 'Help' -> 'Documentation (Tutorial)' on the menu bar.

Quick Tour

This plugin has hundreds of nodes preprogrammed for you to interact with ESXi, SSH, WinRM, and individual VMs.

For example, here is a graph that will connect to a ESXi host, retrieve a VM called "my_vm" from ESXi, power it off, wait for the vm to fully power off, and then export the VM to an OVF file on the computer running the graph:

image

Here is an example of opening a (generic) SSH connection:

image

You can also specify 'Unix' and 'Cisco' SSH connection subtypes to get access to nodes that know specifically how to interact with those shell types (e.g. ls via bash on a Unix SSH Connection)

Here is an example of opening a WinRM connection to a Windows server (you can use either powershell or cmd):

image

Here is an example of opening a connection over the PANOS (Palo Alto) API:

image

Finally, here are some examples of sending keyboard input to a VM that already exists. Writing keyboard input to the VM:

image

Sending a single key with a specific modifier:

image

Once again, you can read more about some of the functionality included by this plugin in the markdown documentation directory.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

graphex_esxi_utils-2.0.0-py3-none-any.whl (5.1 MB view details)

Uploaded Python 3

File details

Details for the file graphex_esxi_utils-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for graphex_esxi_utils-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8a2bf904e67ba6692beb50f8146beebb97022747951ff95b3220fd4a47d4d903
MD5 d201e87fa926b3f68dc9e80971a402f1
BLAKE2b-256 bff4724287bac5e91ba3df84ce0a9b13bc39ef15f5ee5923cabc88cba38ce1b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for graphex_esxi_utils-2.0.0-py3-none-any.whl:

Publisher: workflow.yml on mitre/GraphEx-ESXi-Utilities

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page