Skip to content
Docs

Compute

ComputeVMs

resource nirvana_compute_vm

required Expand Collapse
os_image_name: String

Name of the OS Image to use for the VM.

project_id: String

Project ID to create the VM in.

region: String

Region the resource is in.

subnet_id: String

ID of the subnet to use for the VM.

boot_volume: Attributes

Boot volume for the VM.

size: Int64

Size of the Volume in GB.

type: String

Type of the Volume.

tags?: List[String]

Tags to attach to the Volume.

ssh_key: Attributes

Public SSH key configuration for the VM.

public_key: String

Public key to and use to access the VM.

instance_type: String

Instance type name.

name: String

Name of the VM.

public_ip_enabled: Bool

Whether to enable public IP for the VM.

optional Expand Collapse
data_volumes?: List[Attributes]

Data volumes for the VM.

name: String

Name of the Volume.

size: Int64

Size of the Volume in GB.

type: String

Type of the Volume.

tags?: List[String]

Tags to attach to the Volume.

tags?: List[String]

Tags to attach to the VM.

computed Expand Collapse
id: String

Unique identifier for the Operation.

boot_volume_id: String

ID of the boot volume attached to the VM.

created_at: Time

When the VM was created.

private_ip: String

Private IP of the VM.

public_ip: String

Public IP of the VM.

status: String

Status of the resource.

updated_at: Time

When the VM was updated.

vpc_id: String

ID of the VPC the VM is in.

vpc_name: String

Name of the VPC the VM is in.

data_volume_ids: List[String]

IDs of the data volumes attached to the VM.

cpu_config: Attributes

CPU configuration for the VM.

vcpu: Int64

Number of virtual CPUs.

memory_config: Attributes

Memory configuration for the VM.

size: Int64

Size of the memory in GB.

nirvana_compute_vm

resource "nirvana_compute_vm" "example_compute_vm" {
  boot_volume = {
    size = 100
    type = "abs"
    tags = ["production", "ethereum"]
  }
  instance_type = "n1-standard-8"
  name = "my-vm"
  os_image_name = "ubuntu-noble-2025-10-01"
  project_id = "123e4567-e89b-12d3-a456-426614174000"
  public_ip_enabled = true
  region = "us-sva-2"
  ssh_key = {
    public_key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDBIASkmwNiLcdlW6927Zjt1Hf7Kw/PpEZ4Zm+wU9wn2"
  }
  subnet_id = "123e4567-e89b-12d3-a456-426614174000"
  data_volumes = [{
    name = "my-data-volume"
    size = 100
    type = "abs"
    tags = ["production", "ethereum"]
  }]
  tags = ["production", "ethereum"]
}

data nirvana_compute_vm

optional Expand Collapse
vm_id?: String
find_one_by?: Attributes
project_id: String

Project ID of resources to request

computed Expand Collapse
id: String
boot_volume_id: String

ID of the boot volume attached to the VM.

created_at: Time

When the VM was created.

instance_type: String

Instance type name.

name: String

Name of the VM.

private_ip: String

Private IP of the VM.

project_id: String

Project ID the VM belongs to.

public_ip: String

Public IP of the VM.

public_ip_enabled: Bool

Whether the public IP is enabled for the VM.

region: String

Region the resource is in.

status: String

Status of the resource.

subnet_id: String

ID of the subnet the VM is in.

updated_at: Time

When the VM was updated.

vpc_id: String

ID of the VPC the VM is in.

vpc_name: String

Name of the VPC the VM is in.

data_volume_ids: List[String]

IDs of the data volumes attached to the VM.

tags: List[String]

Tags to attach to the VM.

cpu_config: Attributes

CPU configuration for the VM.

vcpu: Int64

Number of virtual CPUs.

memory_config: Attributes

Memory configuration for the VM.

size: Int64

Size of the memory in GB.

nirvana_compute_vm

data "nirvana_compute_vm" "example_compute_vm" {
  vm_id = "vm_id"
}

data nirvana_compute_vms

required Expand Collapse
project_id: String

Project ID of resources to request

optional Expand Collapse
max_items?: Int64

Max items to fetch, default: 1000

computed Expand Collapse
items: List[Attributes]

The items returned by the data source

id: String

Unique identifier for the VM.

boot_volume_id: String

ID of the boot volume attached to the VM.

cpu_config: Attributes

CPU configuration for the VM.

vcpu: Int64

Number of virtual CPUs.

created_at: Time

When the VM was created.

data_volume_ids: List[String]

IDs of the data volumes attached to the VM.

memory_config: Attributes

Memory configuration for the VM.

size: Int64

Size of the memory in GB.

name: String

Name of the VM.

private_ip: String

Private IP of the VM.

project_id: String

Project ID the VM belongs to.

public_ip: String

Public IP of the VM.

public_ip_enabled: Bool

Whether the public IP is enabled for the VM.

region: String

Region the resource is in.

status: String

Status of the resource.

subnet_id: String

ID of the subnet the VM is in.

tags: List[String]

Tags to attach to the VM.

updated_at: Time

When the VM was updated.

vpc_id: String

ID of the VPC the VM is in.

vpc_name: String

Name of the VPC the VM is in.

instance_type: String

Instance type name.

nirvana_compute_vms

data "nirvana_compute_vms" "example_compute_vms" {
  project_id = "project_id"
}

ComputeVMsOS Images

data nirvana_compute_vm_os_images

optional Expand Collapse
max_items?: Int64

Max items to fetch, default: 1000

computed Expand Collapse
items: List[Attributes]

The items returned by the data source

created_at: Time

When the OS Image was created.

display_name: String

Display name of the OS Image.

name: String

Name of the OS Image.

nirvana_compute_vm_os_images

data "nirvana_compute_vm_os_images" "example_compute_vm_os_images" {

}

ComputeVolumes

resource nirvana_compute_volume

required Expand Collapse
project_id: String

Project ID the Volume belongs to.

region: String

Region the resource is in.

type: String

Type of the Volume.

name: String

Name of the Volume.

size: Int64

Size of the Volume in GB.

optional Expand Collapse
vm_id?: String

ID of the VM the Volume is attached to.

tags?: List[String]

Tags to attach to the Volume.

computed Expand Collapse
id: String

Unique identifier for the Operation.

created_at: Time

When the Volume was created.

kind: String

Volume kind.

resource_id: String

ID of the resource that the Operation is acting on.

status: String

Status of the resource.

updated_at: Time

When the Volume was updated.

vm_name: String

Name of the VM the Volume is attached to.

details: Attributes

Structured details about what an operation is changing.

changes: Map[Attributes]

Map of changed field names to their from/to diffs. Keys depend on the parent operation’s kind+type.

from: String

Previous value.

to: String

New value.

nirvana_compute_volume

resource "nirvana_compute_volume" "example_compute_volume" {
  name = "my-data-volume"
  project_id = "123e4567-e89b-12d3-a456-426614174000"
  region = "us-sva-2"
  size = 100
  type = "abs"
  tags = ["production", "ethereum"]
  vm_id = "123e4567-e89b-12d3-a456-426614174000"
}

data nirvana_compute_volume

optional Expand Collapse
volume_id?: String
find_one_by?: Attributes
project_id: String

Project ID of resources to request

computed Expand Collapse
id: String
created_at: Time

When the Volume was created.

kind: String

Volume kind.

name: String

Name of the Volume.

project_id: String

Project ID the Volume belongs to.

region: String

Region the resource is in.

size: Int64

Size of the Volume in GB.

status: String

Status of the resource.

type: String

Type of the Volume.

updated_at: Time

When the Volume was updated.

vm_id: String

ID of the VM the Volume is attached to.

vm_name: String

Name of the VM the Volume is attached to.

tags: List[String]

Tags to attach to the Volume.

nirvana_compute_volume

data "nirvana_compute_volume" "example_compute_volume" {
  volume_id = "volume_id"
}

data nirvana_compute_volumes

required Expand Collapse
project_id: String

Project ID of resources to request

optional Expand Collapse
max_items?: Int64

Max items to fetch, default: 1000

computed Expand Collapse
items: List[Attributes]

The items returned by the data source

id: String

Unique identifier for the Volume.

created_at: Time

When the Volume was created.

kind: String

Volume kind.

name: String

Name of the Volume.

project_id: String

Project ID the Volume belongs to.

region: String

Region the resource is in.

size: Int64

Size of the Volume in GB.

status: String

Status of the resource.

tags: List[String]

Tags to attach to the Volume.

type: String

Type of the Volume.

updated_at: Time

When the Volume was updated.

vm_id: String

ID of the VM the Volume is attached to.

vm_name: String

Name of the VM the Volume is attached to.

nirvana_compute_volumes

data "nirvana_compute_volumes" "example_compute_volumes" {
  project_id = "project_id"
}