1. Packages
  2. Packages
  3. Nutanix
  4. API Docs
  5. VmGcUpdateV2
Viewing docs for Nutanix v0.13.0
published on Tuesday, Apr 28, 2026 by Piers Karsenbarg
nutanix logo
Viewing docs for Nutanix v0.13.0
published on Tuesday, Apr 28, 2026 by Piers Karsenbarg

    Provides a Nutanix Virtual Machine resource to Create a virtual machine guest customization update.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as nutanix from "@pierskarsenbarg/nutanix";
    
    const vm_list = nutanix.getVirtualMachinesV2({});
    const vm_gc_update = new nutanix.VmGcUpdateV2("vm-gc-update", {
        extId: vm_list.then(vm_list => vm_list.vms?.[0]?.data?.extId),
        configs: [{
            cloudInits: [{
                cloudInitScripts: [{
                    userDatas: [{
                        value: "IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gV29ybGQiCg==",
                    }],
                }],
            }],
        }],
    });
    
    import pulumi
    import pulumi_nutanix as nutanix
    
    vm_list = nutanix.get_virtual_machines_v2()
    vm_gc_update = nutanix.VmGcUpdateV2("vm-gc-update",
        ext_id=vm_list.vms[0].data["extId"],
        configs=[{
            "cloud_inits": [{
                "cloud_init_scripts": [{
                    "user_datas": [{
                        "value": "IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gV29ybGQiCg==",
                    }],
                }],
            }],
        }])
    
    package main
    
    import (
    	"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		vm_list, err := nutanix.GetVirtualMachinesV2(ctx, &nutanix.GetVirtualMachinesV2Args{}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = nutanix.NewVmGcUpdateV2(ctx, "vm-gc-update", &nutanix.VmGcUpdateV2Args{
    			ExtId: pulumi.String(pulumi.Any(vm_list.Vms[0].Data.ExtId)),
    			Configs: nutanix.VmGcUpdateV2ConfigArray{
    				&nutanix.VmGcUpdateV2ConfigArgs{
    					CloudInits: nutanix.VmGcUpdateV2ConfigCloudInitArray{
    						&nutanix.VmGcUpdateV2ConfigCloudInitArgs{
    							CloudInitScripts: nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptArray{
    								&nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptArgs{
    									UserDatas: nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArray{
    										&nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArgs{
    											Value: pulumi.String("IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gV29ybGQiCg=="),
    										},
    									},
    								},
    							},
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Nutanix = PiersKarsenbarg.Nutanix;
    
    return await Deployment.RunAsync(() => 
    {
        var vm_list = Nutanix.Index.GetVirtualMachinesV2.Invoke();
    
        var vm_gc_update = new Nutanix.Index.VmGcUpdateV2("vm-gc-update", new()
        {
            ExtId = vm_list.Apply(vm_list => vm_list.Apply(getVirtualMachinesV2Result => getVirtualMachinesV2Result.Vms[0]?.Data?.ExtId)),
            Configs = new[]
            {
                new Nutanix.Inputs.VmGcUpdateV2ConfigArgs
                {
                    CloudInits = new[]
                    {
                        new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitArgs
                        {
                            CloudInitScripts = new[]
                            {
                                new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptArgs
                                {
                                    UserDatas = new[]
                                    {
                                        new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArgs
                                        {
                                            Value = "IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gV29ybGQiCg==",
                                        },
                                    },
                                },
                            },
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.nutanix.NutanixFunctions;
    import com.pulumi.nutanix.inputs.GetVirtualMachinesV2Args;
    import com.pulumi.nutanix.VmGcUpdateV2;
    import com.pulumi.nutanix.VmGcUpdateV2Args;
    import com.pulumi.nutanix.inputs.VmGcUpdateV2ConfigArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var vm-list = NutanixFunctions.getVirtualMachinesV2(GetVirtualMachinesV2Args.builder()
                .build());
    
            var vm_gc_update = new VmGcUpdateV2("vm-gc-update", VmGcUpdateV2Args.builder()
                .extId(vm_list.vms()[0].data().extId())
                .configs(VmGcUpdateV2ConfigArgs.builder()
                    .cloudInits(VmGcUpdateV2ConfigCloudInitArgs.builder()
                        .cloudInitScripts(VmGcUpdateV2ConfigCloudInitCloudInitScriptArgs.builder()
                            .userDatas(VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArgs.builder()
                                .value("IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gV29ybGQiCg==")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      vm-gc-update:
        type: nutanix:VmGcUpdateV2
        properties:
          extId: ${["vm-list"].vms[0].data.extId}
          configs:
            - cloudInits:
                - cloudInitScripts:
                    - userDatas:
                        - value: IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gV29ybGQiCg==
    variables:
      vm-list:
        fn::invoke:
          function: nutanix:getVirtualMachinesV2
          arguments: {}
    

    Create VmGcUpdateV2 Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new VmGcUpdateV2(name: string, args: VmGcUpdateV2Args, opts?: CustomResourceOptions);
    @overload
    def VmGcUpdateV2(resource_name: str,
                     args: VmGcUpdateV2Args,
                     opts: Optional[ResourceOptions] = None)
    
    @overload
    def VmGcUpdateV2(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     ext_id: Optional[str] = None,
                     configs: Optional[Sequence[VmGcUpdateV2ConfigArgs]] = None)
    func NewVmGcUpdateV2(ctx *Context, name string, args VmGcUpdateV2Args, opts ...ResourceOption) (*VmGcUpdateV2, error)
    public VmGcUpdateV2(string name, VmGcUpdateV2Args args, CustomResourceOptions? opts = null)
    public VmGcUpdateV2(String name, VmGcUpdateV2Args args)
    public VmGcUpdateV2(String name, VmGcUpdateV2Args args, CustomResourceOptions options)
    
    type: nutanix:VmGcUpdateV2
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args VmGcUpdateV2Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args VmGcUpdateV2Args
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args VmGcUpdateV2Args
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VmGcUpdateV2Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VmGcUpdateV2Args
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var vmGcUpdateV2Resource = new Nutanix.VmGcUpdateV2("vmGcUpdateV2Resource", new()
    {
        ExtId = "string",
        Configs = new[]
        {
            new Nutanix.Inputs.VmGcUpdateV2ConfigArgs
            {
                CloudInits = new[]
                {
                    new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitArgs
                    {
                        CloudInitScripts = new[]
                        {
                            new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptArgs
                            {
                                CustomKeys = new[]
                                {
                                    new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyArgs
                                    {
                                        KeyValuePairs = new[]
                                        {
                                            new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePairArgs
                                            {
                                                Name = "string",
                                                Value = "string",
                                            },
                                        },
                                    },
                                },
                                UserDatas = new[]
                                {
                                    new Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArgs
                                    {
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        DatasourceType = "string",
                        Metadata = "string",
                    },
                },
                Syspreps = new[]
                {
                    new Nutanix.Inputs.VmGcUpdateV2ConfigSysprepArgs
                    {
                        InstallType = "string",
                        SysprepScripts = new[]
                        {
                            new Nutanix.Inputs.VmGcUpdateV2ConfigSysprepSysprepScriptArgs
                            {
                                CustomKeyValues = new[]
                                {
                                    new Nutanix.Inputs.VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueArgs
                                    {
                                        KeyValuePairs = new[]
                                        {
                                            new Nutanix.Inputs.VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePairArgs
                                            {
                                                Name = "string",
                                                Value = "string",
                                            },
                                        },
                                    },
                                },
                                UnattendXmls = new[]
                                {
                                    new Nutanix.Inputs.VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXmlArgs
                                    {
                                        Value = "string",
                                    },
                                },
                            },
                        },
                    },
                },
            },
        },
    });
    
    example, err := nutanix.NewVmGcUpdateV2(ctx, "vmGcUpdateV2Resource", &nutanix.VmGcUpdateV2Args{
    	ExtId: pulumi.String("string"),
    	Configs: nutanix.VmGcUpdateV2ConfigArray{
    		&nutanix.VmGcUpdateV2ConfigArgs{
    			CloudInits: nutanix.VmGcUpdateV2ConfigCloudInitArray{
    				&nutanix.VmGcUpdateV2ConfigCloudInitArgs{
    					CloudInitScripts: nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptArray{
    						&nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptArgs{
    							CustomKeys: nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyArray{
    								&nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyArgs{
    									KeyValuePairs: nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePairArray{
    										&nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePairArgs{
    											Name:  pulumi.String("string"),
    											Value: pulumi.String("string"),
    										},
    									},
    								},
    							},
    							UserDatas: nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArray{
    								&nutanix.VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArgs{
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					DatasourceType: pulumi.String("string"),
    					Metadata:       pulumi.String("string"),
    				},
    			},
    			Syspreps: nutanix.VmGcUpdateV2ConfigSysprepArray{
    				&nutanix.VmGcUpdateV2ConfigSysprepArgs{
    					InstallType: pulumi.String("string"),
    					SysprepScripts: nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptArray{
    						&nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptArgs{
    							CustomKeyValues: nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueArray{
    								&nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueArgs{
    									KeyValuePairs: nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePairArray{
    										&nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePairArgs{
    											Name:  pulumi.String("string"),
    											Value: pulumi.String("string"),
    										},
    									},
    								},
    							},
    							UnattendXmls: nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXmlArray{
    								&nutanix.VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXmlArgs{
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    				},
    			},
    		},
    	},
    })
    
    var vmGcUpdateV2Resource = new VmGcUpdateV2("vmGcUpdateV2Resource", VmGcUpdateV2Args.builder()
        .extId("string")
        .configs(VmGcUpdateV2ConfigArgs.builder()
            .cloudInits(VmGcUpdateV2ConfigCloudInitArgs.builder()
                .cloudInitScripts(VmGcUpdateV2ConfigCloudInitCloudInitScriptArgs.builder()
                    .customKeys(VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyArgs.builder()
                        .keyValuePairs(VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePairArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .build())
                    .userDatas(VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArgs.builder()
                        .value("string")
                        .build())
                    .build())
                .datasourceType("string")
                .metadata("string")
                .build())
            .syspreps(VmGcUpdateV2ConfigSysprepArgs.builder()
                .installType("string")
                .sysprepScripts(VmGcUpdateV2ConfigSysprepSysprepScriptArgs.builder()
                    .customKeyValues(VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueArgs.builder()
                        .keyValuePairs(VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePairArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .build())
                    .unattendXmls(VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXmlArgs.builder()
                        .value("string")
                        .build())
                    .build())
                .build())
            .build())
        .build());
    
    vm_gc_update_v2_resource = nutanix.VmGcUpdateV2("vmGcUpdateV2Resource",
        ext_id="string",
        configs=[{
            "cloud_inits": [{
                "cloud_init_scripts": [{
                    "custom_keys": [{
                        "key_value_pairs": [{
                            "name": "string",
                            "value": "string",
                        }],
                    }],
                    "user_datas": [{
                        "value": "string",
                    }],
                }],
                "datasource_type": "string",
                "metadata": "string",
            }],
            "syspreps": [{
                "install_type": "string",
                "sysprep_scripts": [{
                    "custom_key_values": [{
                        "key_value_pairs": [{
                            "name": "string",
                            "value": "string",
                        }],
                    }],
                    "unattend_xmls": [{
                        "value": "string",
                    }],
                }],
            }],
        }])
    
    const vmGcUpdateV2Resource = new nutanix.VmGcUpdateV2("vmGcUpdateV2Resource", {
        extId: "string",
        configs: [{
            cloudInits: [{
                cloudInitScripts: [{
                    customKeys: [{
                        keyValuePairs: [{
                            name: "string",
                            value: "string",
                        }],
                    }],
                    userDatas: [{
                        value: "string",
                    }],
                }],
                datasourceType: "string",
                metadata: "string",
            }],
            syspreps: [{
                installType: "string",
                sysprepScripts: [{
                    customKeyValues: [{
                        keyValuePairs: [{
                            name: "string",
                            value: "string",
                        }],
                    }],
                    unattendXmls: [{
                        value: "string",
                    }],
                }],
            }],
        }],
    });
    
    type: nutanix:VmGcUpdateV2
    properties:
        configs:
            - cloudInits:
                - cloudInitScripts:
                    - customKeys:
                        - keyValuePairs:
                            - name: string
                              value: string
                      userDatas:
                        - value: string
                  datasourceType: string
                  metadata: string
              syspreps:
                - installType: string
                  sysprepScripts:
                    - customKeyValues:
                        - keyValuePairs:
                            - name: string
                              value: string
                      unattendXmls:
                        - value: string
        extId: string
    

    VmGcUpdateV2 Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The VmGcUpdateV2 resource accepts the following input properties:

    ExtId string
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    Configs List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2Config>
    • (Optional) The Nutanix Guest Tools customization settings.
    ExtId string
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    Configs []VmGcUpdateV2ConfigArgs
    • (Optional) The Nutanix Guest Tools customization settings.
    extId String
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs List<VmGcUpdateV2Config>
    • (Optional) The Nutanix Guest Tools customization settings.
    extId string
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs VmGcUpdateV2Config[]
    • (Optional) The Nutanix Guest Tools customization settings.
    ext_id str
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs Sequence[VmGcUpdateV2ConfigArgs]
    • (Optional) The Nutanix Guest Tools customization settings.
    extId String
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs List<Property Map>
    • (Optional) The Nutanix Guest Tools customization settings.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VmGcUpdateV2 resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing VmGcUpdateV2 Resource

    Get an existing VmGcUpdateV2 resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: VmGcUpdateV2State, opts?: CustomResourceOptions): VmGcUpdateV2
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            configs: Optional[Sequence[VmGcUpdateV2ConfigArgs]] = None,
            ext_id: Optional[str] = None) -> VmGcUpdateV2
    func GetVmGcUpdateV2(ctx *Context, name string, id IDInput, state *VmGcUpdateV2State, opts ...ResourceOption) (*VmGcUpdateV2, error)
    public static VmGcUpdateV2 Get(string name, Input<string> id, VmGcUpdateV2State? state, CustomResourceOptions? opts = null)
    public static VmGcUpdateV2 get(String name, Output<String> id, VmGcUpdateV2State state, CustomResourceOptions options)
    resources:  _:    type: nutanix:VmGcUpdateV2    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Configs List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2Config>
    • (Optional) The Nutanix Guest Tools customization settings.
    ExtId string
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    Configs []VmGcUpdateV2ConfigArgs
    • (Optional) The Nutanix Guest Tools customization settings.
    ExtId string
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs List<VmGcUpdateV2Config>
    • (Optional) The Nutanix Guest Tools customization settings.
    extId String
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs VmGcUpdateV2Config[]
    • (Optional) The Nutanix Guest Tools customization settings.
    extId string
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs Sequence[VmGcUpdateV2ConfigArgs]
    • (Optional) The Nutanix Guest Tools customization settings.
    ext_id str
    • (Required) The globally unique identifier of a VM. It should be of type UUID.
    configs List<Property Map>
    • (Optional) The Nutanix Guest Tools customization settings.
    extId String
    • (Required) The globally unique identifier of a VM. It should be of type UUID.

    Supporting Types

    VmGcUpdateV2Config, VmGcUpdateV2ConfigArgs

    CloudInits List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigCloudInit>
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    Syspreps List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigSysprep>
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    CloudInits []VmGcUpdateV2ConfigCloudInit
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    Syspreps []VmGcUpdateV2ConfigSysprep
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    cloudInits List<VmGcUpdateV2ConfigCloudInit>
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    syspreps List<VmGcUpdateV2ConfigSysprep>
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    cloudInits VmGcUpdateV2ConfigCloudInit[]
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    syspreps VmGcUpdateV2ConfigSysprep[]
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    cloud_inits Sequence[VmGcUpdateV2ConfigCloudInit]
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    syspreps Sequence[VmGcUpdateV2ConfigSysprep]
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    cloudInits List<Property Map>
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
    syspreps List<Property Map>
    • (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloudInit should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.

    VmGcUpdateV2ConfigCloudInit, VmGcUpdateV2ConfigCloudInitArgs

    CloudInitScripts List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScript>
    • (Optional) The script to use for cloud-init.
    DatasourceType string
    • (Optional) Type of datasource. Default: CONFIG_DRIVE_V2Default is CONFIG_DRIVE_V2. Valid values are:
    • CONFIG_DRIVE_V2 The type of datasource for cloud-init is Config Drive V2.
    Metadata string
    The contents of the metaData configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
    CloudInitScripts []VmGcUpdateV2ConfigCloudInitCloudInitScript
    • (Optional) The script to use for cloud-init.
    DatasourceType string
    • (Optional) Type of datasource. Default: CONFIG_DRIVE_V2Default is CONFIG_DRIVE_V2. Valid values are:
    • CONFIG_DRIVE_V2 The type of datasource for cloud-init is Config Drive V2.
    Metadata string
    The contents of the metaData configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
    cloudInitScripts List<VmGcUpdateV2ConfigCloudInitCloudInitScript>
    • (Optional) The script to use for cloud-init.
    datasourceType String
    • (Optional) Type of datasource. Default: CONFIG_DRIVE_V2Default is CONFIG_DRIVE_V2. Valid values are:
    • CONFIG_DRIVE_V2 The type of datasource for cloud-init is Config Drive V2.
    metadata String
    The contents of the metaData configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
    cloudInitScripts VmGcUpdateV2ConfigCloudInitCloudInitScript[]
    • (Optional) The script to use for cloud-init.
    datasourceType string
    • (Optional) Type of datasource. Default: CONFIG_DRIVE_V2Default is CONFIG_DRIVE_V2. Valid values are:
    • CONFIG_DRIVE_V2 The type of datasource for cloud-init is Config Drive V2.
    metadata string
    The contents of the metaData configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
    cloud_init_scripts Sequence[VmGcUpdateV2ConfigCloudInitCloudInitScript]
    • (Optional) The script to use for cloud-init.
    datasource_type str
    • (Optional) Type of datasource. Default: CONFIG_DRIVE_V2Default is CONFIG_DRIVE_V2. Valid values are:
    • CONFIG_DRIVE_V2 The type of datasource for cloud-init is Config Drive V2.
    metadata str
    The contents of the metaData configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
    cloudInitScripts List<Property Map>
    • (Optional) The script to use for cloud-init.
    datasourceType String
    • (Optional) Type of datasource. Default: CONFIG_DRIVE_V2Default is CONFIG_DRIVE_V2. Valid values are:
    • CONFIG_DRIVE_V2 The type of datasource for cloud-init is Config Drive V2.
    metadata String
    The contents of the metaData configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.

    VmGcUpdateV2ConfigCloudInitCloudInitScript, VmGcUpdateV2ConfigCloudInitCloudInitScriptArgs

    CustomKeys List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey>
    UserDatas List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData>
    • (Optional) The contents of the userData configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
    CustomKeys []VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey
    UserDatas []VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData
    • (Optional) The contents of the userData configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
    customKeys List<VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey>
    userDatas List<VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData>
    • (Optional) The contents of the userData configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
    customKeys VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey[]
    userDatas VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData[]
    • (Optional) The contents of the userData configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
    custom_keys Sequence[VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey]
    user_datas Sequence[VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData]
    • (Optional) The contents of the userData configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
    customKeys List<Property Map>
    userDatas List<Property Map>
    • (Optional) The contents of the userData configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.

    VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey, VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyArgs

    KeyValuePairs []VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair
    • (Optional) The list of the individual KeyValuePair elements.
    keyValuePairs List<VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair>
    • (Optional) The list of the individual KeyValuePair elements.
    keyValuePairs VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair[]
    • (Optional) The list of the individual KeyValuePair elements.
    key_value_pairs Sequence[VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair]
    • (Optional) The list of the individual KeyValuePair elements.
    keyValuePairs List<Property Map>
    • (Optional) The list of the individual KeyValuePair elements.

    VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair, VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePairArgs

    Name string
    • (Optional) The key of this key-value pair
    Value string
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    Name string
    • (Optional) The key of this key-value pair
    Value string
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name String
    • (Optional) The key of this key-value pair
    value String
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name string
    • (Optional) The key of this key-value pair
    value string
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name str
    • (Optional) The key of this key-value pair
    value str
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name String
    • (Optional) The key of this key-value pair
    value String
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData, VmGcUpdateV2ConfigCloudInitCloudInitScriptUserDataArgs

    Value string
    • (Optional) The value for the cloud-init user_data.
    Value string
    • (Optional) The value for the cloud-init user_data.
    value String
    • (Optional) The value for the cloud-init user_data.
    value string
    • (Optional) The value for the cloud-init user_data.
    value str
    • (Optional) The value for the cloud-init user_data.
    value String
    • (Optional) The value for the cloud-init user_data.

    VmGcUpdateV2ConfigSysprep, VmGcUpdateV2ConfigSysprepArgs

    InstallType string
    • (Optional) Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is PREPARED. Valid values are:
    • PREPARED is done when sysprep is used to finalize Windows installation from an installed Windows and file name it is searching unattend.xml for unattendXml parameter
    • FRESH is done when sysprep is used to install Windows from ISO and file name it is searching autounattend.xml for unattendXml parameter
    SysprepScripts List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigSysprepSysprepScript>
    InstallType string
    • (Optional) Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is PREPARED. Valid values are:
    • PREPARED is done when sysprep is used to finalize Windows installation from an installed Windows and file name it is searching unattend.xml for unattendXml parameter
    • FRESH is done when sysprep is used to install Windows from ISO and file name it is searching autounattend.xml for unattendXml parameter
    SysprepScripts []VmGcUpdateV2ConfigSysprepSysprepScript
    installType String
    • (Optional) Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is PREPARED. Valid values are:
    • PREPARED is done when sysprep is used to finalize Windows installation from an installed Windows and file name it is searching unattend.xml for unattendXml parameter
    • FRESH is done when sysprep is used to install Windows from ISO and file name it is searching autounattend.xml for unattendXml parameter
    sysprepScripts List<VmGcUpdateV2ConfigSysprepSysprepScript>
    installType string
    • (Optional) Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is PREPARED. Valid values are:
    • PREPARED is done when sysprep is used to finalize Windows installation from an installed Windows and file name it is searching unattend.xml for unattendXml parameter
    • FRESH is done when sysprep is used to install Windows from ISO and file name it is searching autounattend.xml for unattendXml parameter
    sysprepScripts VmGcUpdateV2ConfigSysprepSysprepScript[]
    install_type str
    • (Optional) Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is PREPARED. Valid values are:
    • PREPARED is done when sysprep is used to finalize Windows installation from an installed Windows and file name it is searching unattend.xml for unattendXml parameter
    • FRESH is done when sysprep is used to install Windows from ISO and file name it is searching autounattend.xml for unattendXml parameter
    sysprep_scripts Sequence[VmGcUpdateV2ConfigSysprepSysprepScript]
    installType String
    • (Optional) Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is PREPARED. Valid values are:
    • PREPARED is done when sysprep is used to finalize Windows installation from an installed Windows and file name it is searching unattend.xml for unattendXml parameter
    • FRESH is done when sysprep is used to install Windows from ISO and file name it is searching autounattend.xml for unattendXml parameter
    sysprepScripts List<Property Map>

    VmGcUpdateV2ConfigSysprepSysprepScript, VmGcUpdateV2ConfigSysprepSysprepScriptArgs

    CustomKeyValues List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue>
    • (Optional) Generic key value pair used for custom attributes in cloud init.
    UnattendXmls List<PiersKarsenbarg.Nutanix.Inputs.VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml>
    • (Optional) Generic key value pair used for custom attributes.
    CustomKeyValues []VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue
    • (Optional) Generic key value pair used for custom attributes in cloud init.
    UnattendXmls []VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml
    • (Optional) Generic key value pair used for custom attributes.
    customKeyValues List<VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue>
    • (Optional) Generic key value pair used for custom attributes in cloud init.
    unattendXmls List<VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml>
    • (Optional) Generic key value pair used for custom attributes.
    customKeyValues VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue[]
    • (Optional) Generic key value pair used for custom attributes in cloud init.
    unattendXmls VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml[]
    • (Optional) Generic key value pair used for custom attributes.
    custom_key_values Sequence[VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue]
    • (Optional) Generic key value pair used for custom attributes in cloud init.
    unattend_xmls Sequence[VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml]
    • (Optional) Generic key value pair used for custom attributes.
    customKeyValues List<Property Map>
    • (Optional) Generic key value pair used for custom attributes in cloud init.
    unattendXmls List<Property Map>
    • (Optional) Generic key value pair used for custom attributes.

    VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue, VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueArgs

    KeyValuePairs []VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair
    • (Optional) The list of the individual KeyValuePair elements.
    keyValuePairs List<VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair>
    • (Optional) The list of the individual KeyValuePair elements.
    keyValuePairs VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair[]
    • (Optional) The list of the individual KeyValuePair elements.
    key_value_pairs Sequence[VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair]
    • (Optional) The list of the individual KeyValuePair elements.
    keyValuePairs List<Property Map>
    • (Optional) The list of the individual KeyValuePair elements.

    VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair, VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePairArgs

    Name string
    • (Optional) The key of this key-value pair
    Value string
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    Name string
    • (Optional) The key of this key-value pair
    Value string
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name String
    • (Optional) The key of this key-value pair
    value String
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name string
    • (Optional) The key of this key-value pair
    value string
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name str
    • (Optional) The key of this key-value pair
    value str
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    name String
    • (Optional) The key of this key-value pair
    value String
    • (Optional) The value associated with the key for this key-value pair.

    See detailed information in Nutanix Customize Gest VM V4.

    VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml, VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXmlArgs

    Value string
    Value string
    value String
    value string
    value str
    value String

    Package Details

    Repository
    nutanix pierskarsenbarg/pulumi-nutanix
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the nutanix Terraform Provider.
    nutanix logo
    Viewing docs for Nutanix v0.13.0
    published on Tuesday, Apr 28, 2026 by Piers Karsenbarg
      Try Pulumi Cloud free. Your team will thank you.