Add flag to disable OvfEnvironment transport
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Danny Bessems 2023-03-02 15:48:10 +01:00
parent 5c12ec5b93
commit a2028a7d3b
3 changed files with 12 additions and 8 deletions

View File

@ -3,7 +3,7 @@ type: kubernetes
name: 'Golang Build'
environment:
BINARY_VERSION: v0.5.0
BINARY_VERSION: v0.5.1
clone:
disable: true

View File

@ -31,6 +31,7 @@ var Commands struct {
Name string `short:"n" long:"name" description:"Name of virtual machine" required:"true"`
Datacenter string `long:"datacenter" description:"Name of datacenter" required:"true"`
Network string `long:"portgroup" description:"Name of network portgroup" required:"true"`
OvfTransport bool `long:"ovftransport" description:"Enable the OVF transport 'VMware Tools'" default:"true"`
} // `command:"virtualmachine" alias:"vm" description:"Configure a virtual machine for usage of Network Protocol Profiles"`
GuestOS struct {
} // `command:"guestos" alias:"os" description:"Configure guest OS network with allocated IP address"`
@ -71,7 +72,7 @@ func main() {
case "guestos", "os":
// TODO
case "virtualmachine", "vm":
if err := hypervisor.SetVirtualMachineProperties(ctx, clt, Commands.VirtualMachine.Datacenter, Commands.VirtualMachine.Name, Commands.VirtualMachine.Network); err != nil {
if err := hypervisor.SetVirtualMachineProperties(ctx, clt, Commands.VirtualMachine.Datacenter, Commands.VirtualMachine.Name, Commands.VirtualMachine.Network, Commands.VirtualMachine.OvfTransport); err != nil {
log.Fatalf("[ERROR] Could not apply vApp properties: %s", err)
}

View File

@ -16,7 +16,7 @@ type vAPPProperty struct {
Value string
}
func SetVirtualMachineProperties(ctx context.Context, clt *vim25.Client, datacenter, virtualmachine, network string) error {
func SetVirtualMachineProperties(ctx context.Context, clt *vim25.Client, datacenter, virtualmachine, network string, ovftransport bool) error {
finder := find.NewFinder(clt, true)
dc, err := finder.Datacenter(ctx, datacenter)
@ -33,9 +33,12 @@ func SetVirtualMachineProperties(ctx context.Context, clt *vim25.Client, datacen
var moref mo.VirtualMachine
vm.Properties(ctx, vm.Reference(), []string{"config.vAppConfig"}, &moref)
vappconfig := &types.VmConfigSpec{
vappconfig := &types.VmConfigSpec{}
if ovftransport == true {
vappconfig = &types.VmConfigSpec{
OvfEnvironmentTransport: []string{"com.vmware.guestInfo"},
}
}
currentvappproperties := moref.Config.VAppConfig.GetVmConfigInfo().Property
for _, vappproperty := range currentvappproperties {