Skip to content

About

A client for the vSphere Automation REST API of vCenter

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

@deckyard/vmware

test Documentation release

A Jennifer client for the vSphere Automation REST API of vCenter (/api, vCenter 7.0 U2 and newer). get, post, put, patch and delete reach every endpoint; typed verbs cover the inventory (VMs, hosts, clusters, datacenters, datastores, networks, folders, resource pools), creating, cloning, deploying and deleting VMs, tasks, guest customization, CPU, memory, disks and NICs, tags, VM power, the guest's addresses, and running programs in the guest. A standalone ESXi host serves only the SOAP API and is not supported.

Documentation

Install

jvc add @deckyard/vmware

Or unpack src/ from a release archive (deckyard-vmware-<version>.tar.gz) into vendor/deckyard/vmware/.

Usage

use io;
import "@deckyard/vmware/" as vmware;

def c as vmware.Client init vmware.client("vcenter.example.com");
$c = vmware.withCaCert($c, fs.readBytes("vmca-root.pem"));
$c = vmware.login($c, "automation@vsphere.local", os.getEnv("VC_PASSWORD"));

def f as vmware.VmFilter;
$f.powerStates = [vmware.POWERED_OFF];
for (def vm in vmware.vms($c, $f)) {
    io.printf("%s %s\n", $vm.vm, $vm.name);
}
vmware.powerOn($c, vmware.vmByName($c, "web01").vm);

$c = vmware.logout($c);

Requirements

Jennifer 0.25.0 or newer and the default jennifer binary: the deck needs the net capability, which jennifer-tiny lacks.

Development

tools/check-all.sh                   # the full gate, as CI runs it
jennifer test src/vmware_test.j      # the test overlay, offline
tools/check-docs.sh                  # docs against the code
tools/pack.sh dist                   # build the release archive

The tests answer from a fake server on a loopback port. The examples need a real vCenter; see their headers.

Licence

LGPL-3.0-only, see LICENSE. Copyright (C) 2026 mplx <mplx@jennifer-lang.dev>.

VMware, vSphere, vCenter and ESXi are trademarks of Broadcom. This deck is not affiliated with or endorsed by Broadcom.

About

A client for the vSphere Automation REST API of vCenter

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors