Nutanix CreateVm

Nutanix CreateVm

Certified
Enterprise Edition

Create AHV VM (optionally power on)

Create a Nutanix AHV VM via the VMM v4 API using a full VM payload; can power on immediately, optionally wait for an IP, and returns the async task extId.

yaml
type: io.kestra.plugin.ee.nutanix.ahv.CreateVm

Create an AHV VM

yaml
id: nutanix_create_vm
namespace: company.team
tasks:
  - id: create_vm
    type: io.kestra.plugin.ee.nutanix.ahv.CreateVm
    host: "{{ secret('NUTANIX_HOST') }}"
    username: "{{ secret('NUTANIX_USERNAME') }}"
    password: "{{ secret('NUTANIX_PASSWORD') }}"
    vm:
      name: "kestra-demo"
      description: "VM created by Kestra"
      cluster:
        extId: "{{ secret('NUTANIX_CLUSTER_EXT_ID') }}"
      resources:
        numSockets: 1
        numCoresPerSocket: 2
        memorySizeBytes: 2147483648
        disks: []
Properties

Prism Central host

Required Nutanix Prism Central host or IP address.

VM definition

Full AHV VM payload compatible with the VMM v4 API.

Definitions
clusterobject
descriptionstring
extIdstring
ipstring
namestring
resources
disksarray
SubTypeobject
memorySizeBytesinteger
nicsarray
SubTypeobject
numCoresPerSocketinteger
numSocketsinteger
numThreadsPerCoreinteger

Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset failure behavior

Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150

Password

Prism Central password; required when no token is provided.

Default9440

Prism Central port

API port for Prism Central; defaults to 9440.

Defaultfalse

Power on

Whether to power on the VM as part of the creation request; defaults to false.

Defaulthttps

Scheme

HTTP scheme (https default) for the Prism Central API.

Bearer token

Bearer token for Prism Central; when set, username/password are optional.

Username

Prism Central username; required when no token is provided.

Defaulttrue

Verify SSL

Whether to verify SSL certificates; defaults to true. Disabling this (setting to false) causes the client to trust all certificates without validation, exposing connections to man-in-the-middle attacks. Only set to false for trusted, isolated test environments, never in production.

Defaultfalse

Wait for VM creation synchronously

Whether to wait for the VM to be created and return its IP address. When enabled, the task will poll for the VM by name and return the first IPv4 address found. Only works with powerOn set to true (the IP will be available only once the VM is powered on).

DefaultPT5S

Wait interval

How long to pause between IP address polls when wait is enabled, default 5 seconds.

DefaultPT5M

Wait timeout

How long to keep polling for the VM IP address when wait is enabled, default 5 minutes. Polling occupies a worker thread for this long, so lower it if the worker pool is contended.

Task extId

ExtId of the asynchronous VM creation task.

Timestamp

The timestamp (in milliseconds since epoch) when the operation completed.

VM

Minimal VM payload including the IP address when wait is enabled.

Definitions
clusterobject
descriptionstring
extIdstring
ipstring
namestring
resources
disksarray
SubTypeobject
memorySizeBytesinteger
nicsarray
SubTypeobject
numCoresPerSocketinteger
numSocketsinteger
numThreadsPerCoreinteger