Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

github.com/hooklift/govix

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/hooklift/govix

  • v0.0.0-20170704181839-063702285520
  • Source
  • Go
  • Socket score

Version published
Created
Source

VMware VIX API for GO

Gitter GoDoc Build Status

The VIX API allows you to automate virtual machine operations on most current VMware hosted products such as: vmware workstation, player, fusion and server.

vSphere API, starting from 5.0, merged VIX API in the so-called GuestOperationsManager managed object. So, we encourage you to use https://github.com/vmware/govmomi for vSphere instead.

Mailing list

Google groups: https://groups.google.com/group/govix

Features

This API supports:

  • Adding, removing and listing virtual networks adapters attached to a VM
  • Adding and removing virtual CPUs and memory from a VM
  • Managing virtual machines life cycle: power on, power off, reset, pause and resume.
  • Adding and removing shared folders
  • Taking screenshots from a running VM
  • Cloning VMs
  • Creating and removing Snapshots as well as restoring a VM from a Snapshot
  • Upgrading virtual hardware
  • Guest management: login, logout, install vmware tools, etc.
  • Attaching and detaching CD/DVD drives on SATA, SCSI or IDE controllers

For a more detailed information about the API, please refer to the API documentation.

To keep in mind when running your apps

Dynamic library loading

In order for Go to find libvix when running your compiled binary, a govix path has to be added to the LD_LIBRARY_PATH environment variable. Example:

  • OSX: export DYLD_LIBRARY_PATH=${GOPATH}/src/github.com/hooklift/govix/vendor/libvix
  • Linux: export LD_LIBRARY_PATH=${GOPATH}/src/github.com/hooklift/govix/vendor/libvix
  • Windows: append the path to the PATH environment variable

Be aware that the previous example assumes $GOPATH only has one path set.

Debugging

Enabling debug logs

echo "vix.debugLevel = \"9\"" >> ~/Library/Preferences/VMware\ Fusion/config

Logs

  • OSX: ~/Library/Logs/VMware/*.log
  • Linux: /tmp/vmware-<username>/vix-<pid>.log
  • Windows: %TEMP%\vmware-<username>\vix-<pid>.log

Multithreading

The Vix library is intended for use by multi-threaded clients. Vix shared objects are managed by the Vix library to avoid conflicts between threads. Clients need only be responsible for protecting user-defined shared data.

VMware VIX EULA

As noted in the End User License Agreement, the VIX API allows you to build and distribute your own applications. To facilitate this, the following files are designated as redistributable for the purpose of that agreement:

  • VixAllProducts.lib
  • VixAllProductsd.lib
  • VixAllProductsDyn.lib
  • vix.lib and vix.dll
  • vixCOM.dll
  • gvmomi-vix-1.13.1.dll
  • libvixAllProducts.so
  • libvix.so
  • libgvmomi-vix-1.13.1.so.0
  • vixwrapper-config.txt
  • manifest.txt
  • compiled perl modules resulting from building the contents of vix-perl.tar.gz or vix-perl.zip

Redistribution of the open source libraries included with the VIX API is governed by their respective open source license agreements.

Source: http://blogs.vmware.com/vix/2010/05/redistibutable-vix-api-client-libraries.html

Resources

FAQs

Package last updated on 04 Jul 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc