Library/Service to interact with ESX server.
Go to file
spsobole 795fb3f916 Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
api/cloud Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
cmd Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
configs Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
esx Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
pkg Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
service Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
Makefile Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
README.md Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
go.mod Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
go.sum Initial server for cloudinit images 2023-06-24 13:57:08 -06:00
server.json.example Initial server for cloudinit images 2023-06-24 13:57:08 -06:00

README.md

esxlib

Library/Service to interact with ESX server that allows us to use cloud init based images for quickly launching VMs

Where to get images:

Setup

See configs/ubuntu-lunar.cloudinit.tmpl, configs/ubuntu-lunar.esx.tmpl

The .esxtmpl file is the VMware Vm definition template The .cloudinit.tmpl is the cloudinit file template

Change them to your needs, they are pretty basic and should work by default

Then configure the server:
cp server.example.json to server.json fill in your details and the slugs you want to present. Slugs are used to fill in the esx.tmpl file

Make sure that ssh is enabled on your esx server. And that wherever you are running cmd/serviced can ssh to it. (I typically run serviced on the hypervisor itself)

SSH is needed because without a commercial license we can't use the VIM API to create vms.