1. Packages
  2. Opennebula Provider
  3. API Docs
  4. Template
opennebula 1.4.1 published on Monday, Apr 14, 2025 by opennebula

opennebula.Template

Explore with Pulumi AI

Provides an OpenNebula template resource.

This resource allows you to manage templates on your OpenNebula clusters. When applied, a new template is created. When destroyed, this template is removed.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as opennebula from "@pulumi/opennebula";

const example = new opennebula.Template("example", {
    description: "VM template",
    cpu: 1,
    vcpu: 1,
    memory: 1024,
    group: "terraform",
    permissions: "660",
    context: {
        NETWORK: "YES",
        HOSTNAME: "$NAME",
        START_SCRIPT: "yum upgrade",
    },
    graphics: {
        type: "VNC",
        listen: "0.0.0.0",
        keymap: "fr",
    },
    os: {
        arch: "x86_64",
        boot: "disk0",
    },
    cpumodel: {
        model: "host-passthrough",
    },
    disks: [{
        imageId: opennebula_image.example.id,
        size: 10000,
        target: "vda",
        driver: "qcow2",
    }],
    nics: [{
        model: "virtio",
        networkId: _var.vnetid,
        securityGroups: [opennebula_security_group.example.id],
    }],
    vmgroup: {
        vmgroupId: 42,
        role: "vmgroup-role",
    },
    schedRequirements: "FREE_CPU > 60",
    userInputs: {
        BLOG_TITLE: "M|text|Blog Title",
    },
    tags: {
        environment: "example",
    },
    templateSections: [{
        name: "example",
        elements: {
            key1: "value1",
        },
    }],
});
Copy
import pulumi
import pulumi_opennebula as opennebula

example = opennebula.Template("example",
    description="VM template",
    cpu=1,
    vcpu=1,
    memory=1024,
    group="terraform",
    permissions="660",
    context={
        "NETWORK": "YES",
        "HOSTNAME": "$NAME",
        "START_SCRIPT": "yum upgrade",
    },
    graphics={
        "type": "VNC",
        "listen": "0.0.0.0",
        "keymap": "fr",
    },
    os={
        "arch": "x86_64",
        "boot": "disk0",
    },
    cpumodel={
        "model": "host-passthrough",
    },
    disks=[{
        "image_id": opennebula_image["example"]["id"],
        "size": 10000,
        "target": "vda",
        "driver": "qcow2",
    }],
    nics=[{
        "model": "virtio",
        "network_id": var["vnetid"],
        "security_groups": [opennebula_security_group["example"]["id"]],
    }],
    vmgroup={
        "vmgroup_id": 42,
        "role": "vmgroup-role",
    },
    sched_requirements="FREE_CPU > 60",
    user_inputs={
        "BLOG_TITLE": "M|text|Blog Title",
    },
    tags={
        "environment": "example",
    },
    template_sections=[{
        "name": "example",
        "elements": {
            "key1": "value1",
        },
    }])
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/opennebula/opennebula"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := opennebula.NewTemplate(ctx, "example", &opennebula.TemplateArgs{
			Description: pulumi.String("VM template"),
			Cpu:         pulumi.Float64(1),
			Vcpu:        pulumi.Float64(1),
			Memory:      pulumi.Float64(1024),
			Group:       pulumi.String("terraform"),
			Permissions: pulumi.String("660"),
			Context: pulumi.StringMap{
				"NETWORK":      pulumi.String("YES"),
				"HOSTNAME":     pulumi.String("$NAME"),
				"START_SCRIPT": pulumi.String("yum upgrade"),
			},
			Graphics: &opennebula.TemplateGraphicsArgs{
				Type:   pulumi.String("VNC"),
				Listen: pulumi.String("0.0.0.0"),
				Keymap: pulumi.String("fr"),
			},
			Os: &opennebula.TemplateOsArgs{
				Arch: pulumi.String("x86_64"),
				Boot: pulumi.String("disk0"),
			},
			Cpumodel: &opennebula.TemplateCpumodelArgs{
				Model: pulumi.String("host-passthrough"),
			},
			Disks: opennebula.TemplateDiskArray{
				&opennebula.TemplateDiskArgs{
					ImageId: pulumi.Any(opennebula_image.Example.Id),
					Size:    pulumi.Float64(10000),
					Target:  pulumi.String("vda"),
					Driver:  pulumi.String("qcow2"),
				},
			},
			Nics: opennebula.TemplateNicArray{
				&opennebula.TemplateNicArgs{
					Model:     pulumi.String("virtio"),
					NetworkId: pulumi.Any(_var.Vnetid),
					SecurityGroups: pulumi.Float64Array{
						opennebula_security_group.Example.Id,
					},
				},
			},
			Vmgroup: &opennebula.TemplateVmgroupArgs{
				VmgroupId: pulumi.Float64(42),
				Role:      pulumi.String("vmgroup-role"),
			},
			SchedRequirements: pulumi.String("FREE_CPU > 60"),
			UserInputs: pulumi.StringMap{
				"BLOG_TITLE": pulumi.String("M|text|Blog Title"),
			},
			Tags: pulumi.StringMap{
				"environment": pulumi.String("example"),
			},
			TemplateSections: opennebula.TemplateTemplateSectionArray{
				&opennebula.TemplateTemplateSectionArgs{
					Name: pulumi.String("example"),
					Elements: pulumi.StringMap{
						"key1": pulumi.String("value1"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Opennebula = Pulumi.Opennebula;

return await Deployment.RunAsync(() => 
{
    var example = new Opennebula.Template("example", new()
    {
        Description = "VM template",
        Cpu = 1,
        Vcpu = 1,
        Memory = 1024,
        Group = "terraform",
        Permissions = "660",
        Context = 
        {
            { "NETWORK", "YES" },
            { "HOSTNAME", "$NAME" },
            { "START_SCRIPT", "yum upgrade" },
        },
        Graphics = new Opennebula.Inputs.TemplateGraphicsArgs
        {
            Type = "VNC",
            Listen = "0.0.0.0",
            Keymap = "fr",
        },
        Os = new Opennebula.Inputs.TemplateOsArgs
        {
            Arch = "x86_64",
            Boot = "disk0",
        },
        Cpumodel = new Opennebula.Inputs.TemplateCpumodelArgs
        {
            Model = "host-passthrough",
        },
        Disks = new[]
        {
            new Opennebula.Inputs.TemplateDiskArgs
            {
                ImageId = opennebula_image.Example.Id,
                Size = 10000,
                Target = "vda",
                Driver = "qcow2",
            },
        },
        Nics = new[]
        {
            new Opennebula.Inputs.TemplateNicArgs
            {
                Model = "virtio",
                NetworkId = @var.Vnetid,
                SecurityGroups = new[]
                {
                    opennebula_security_group.Example.Id,
                },
            },
        },
        Vmgroup = new Opennebula.Inputs.TemplateVmgroupArgs
        {
            VmgroupId = 42,
            Role = "vmgroup-role",
        },
        SchedRequirements = "FREE_CPU > 60",
        UserInputs = 
        {
            { "BLOG_TITLE", "M|text|Blog Title" },
        },
        Tags = 
        {
            { "environment", "example" },
        },
        TemplateSections = new[]
        {
            new Opennebula.Inputs.TemplateTemplateSectionArgs
            {
                Name = "example",
                Elements = 
                {
                    { "key1", "value1" },
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.opennebula.Template;
import com.pulumi.opennebula.TemplateArgs;
import com.pulumi.opennebula.inputs.TemplateGraphicsArgs;
import com.pulumi.opennebula.inputs.TemplateOsArgs;
import com.pulumi.opennebula.inputs.TemplateCpumodelArgs;
import com.pulumi.opennebula.inputs.TemplateDiskArgs;
import com.pulumi.opennebula.inputs.TemplateNicArgs;
import com.pulumi.opennebula.inputs.TemplateVmgroupArgs;
import com.pulumi.opennebula.inputs.TemplateTemplateSectionArgs;
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) {
        var example = new Template("example", TemplateArgs.builder()
            .description("VM template")
            .cpu(1)
            .vcpu(1)
            .memory(1024)
            .group("terraform")
            .permissions("660")
            .context(Map.ofEntries(
                Map.entry("NETWORK", "YES"),
                Map.entry("HOSTNAME", "$NAME"),
                Map.entry("START_SCRIPT", "yum upgrade")
            ))
            .graphics(TemplateGraphicsArgs.builder()
                .type("VNC")
                .listen("0.0.0.0")
                .keymap("fr")
                .build())
            .os(TemplateOsArgs.builder()
                .arch("x86_64")
                .boot("disk0")
                .build())
            .cpumodel(TemplateCpumodelArgs.builder()
                .model("host-passthrough")
                .build())
            .disks(TemplateDiskArgs.builder()
                .imageId(opennebula_image.example().id())
                .size(10000)
                .target("vda")
                .driver("qcow2")
                .build())
            .nics(TemplateNicArgs.builder()
                .model("virtio")
                .networkId(var_.vnetid())
                .securityGroups(opennebula_security_group.example().id())
                .build())
            .vmgroup(TemplateVmgroupArgs.builder()
                .vmgroupId(42)
                .role("vmgroup-role")
                .build())
            .schedRequirements("FREE_CPU > 60")
            .userInputs(Map.of("BLOG_TITLE", "M|text|Blog Title"))
            .tags(Map.of("environment", "example"))
            .templateSections(TemplateTemplateSectionArgs.builder()
                .name("example")
                .elements(Map.of("key1", "value1"))
                .build())
            .build());

    }
}
Copy
resources:
  example:
    type: opennebula:Template
    properties:
      description: VM template
      cpu: 1
      vcpu: 1
      memory: 1024
      group: terraform
      permissions: '660'
      context:
        NETWORK: YES
        HOSTNAME: $NAME
        START_SCRIPT: yum upgrade
      graphics:
        type: VNC
        listen: 0.0.0.0
        keymap: fr
      os:
        arch: x86_64
        boot: disk0
      cpumodel:
        model: host-passthrough
      disks:
        - imageId: ${opennebula_image.example.id}
          size: 10000
          target: vda
          driver: qcow2
      nics:
        - model: virtio
          networkId: ${var.vnetid}
          securityGroups:
            - ${opennebula_security_group.example.id}
      vmgroup:
        vmgroupId: 42
        role: vmgroup-role
      schedRequirements: FREE_CPU > 60
      userInputs:
        BLOG_TITLE: M|text|Blog Title
      tags:
        environment: example
      templateSections:
        - name: example
          elements:
            key1: value1
Copy

Create Template Resource

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

Constructor syntax

new Template(name: string, args?: TemplateArgs, opts?: CustomResourceOptions);
@overload
def Template(resource_name: str,
             args: Optional[TemplateArgs] = None,
             opts: Optional[ResourceOptions] = None)

@overload
def Template(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             context: Optional[Mapping[str, str]] = None,
             cpu: Optional[float] = None,
             cpumodel: Optional[TemplateCpumodelArgs] = None,
             description: Optional[str] = None,
             disks: Optional[Sequence[TemplateDiskArgs]] = None,
             features: Optional[Sequence[TemplateFeatureArgs]] = None,
             graphics: Optional[TemplateGraphicsArgs] = None,
             group: Optional[str] = None,
             lock: Optional[str] = None,
             memory: Optional[float] = None,
             name: Optional[str] = None,
             nics: Optional[Sequence[TemplateNicArgs]] = None,
             os: Optional[TemplateOsArgs] = None,
             permissions: Optional[str] = None,
             raw: Optional[TemplateRawArgs] = None,
             sched_ds_requirements: Optional[str] = None,
             sched_requirements: Optional[str] = None,
             tags: Optional[Mapping[str, str]] = None,
             template_id: Optional[str] = None,
             template_sections: Optional[Sequence[TemplateTemplateSectionArgs]] = None,
             user_inputs: Optional[Mapping[str, str]] = None,
             vcpu: Optional[float] = None,
             vmgroup: Optional[TemplateVmgroupArgs] = None)
func NewTemplate(ctx *Context, name string, args *TemplateArgs, opts ...ResourceOption) (*Template, error)
public Template(string name, TemplateArgs? args = null, CustomResourceOptions? opts = null)
public Template(String name, TemplateArgs args)
public Template(String name, TemplateArgs args, CustomResourceOptions options)
type: opennebula:Template
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args TemplateArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args TemplateArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args TemplateArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args TemplateArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. TemplateArgs
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 templateResource = new Opennebula.Template("templateResource", new()
{
    Context = 
    {
        { "string", "string" },
    },
    Cpu = 0,
    Cpumodel = new Opennebula.Inputs.TemplateCpumodelArgs
    {
        Model = "string",
    },
    Description = "string",
    Disks = new[]
    {
        new Opennebula.Inputs.TemplateDiskArgs
        {
            Cache = "string",
            DevPrefix = "string",
            Discard = "string",
            Driver = "string",
            ImageId = 0,
            Io = "string",
            Size = 0,
            Target = "string",
            VolatileFormat = "string",
            VolatileType = "string",
        },
    },
    Features = new[]
    {
        new Opennebula.Inputs.TemplateFeatureArgs
        {
            Acpi = "string",
            Apic = "string",
            GuestAgent = "string",
            Hyperv = "string",
            Iothreads = "string",
            Localtime = "string",
            Pae = "string",
            VirtioScsiQueues = "string",
        },
    },
    Graphics = new Opennebula.Inputs.TemplateGraphicsArgs
    {
        Listen = "string",
        Type = "string",
        Keymap = "string",
        Passwd = "string",
        Port = "string",
        RandomPasswd = false,
    },
    Group = "string",
    Lock = "string",
    Memory = 0,
    Name = "string",
    Nics = new[]
    {
        new Opennebula.Inputs.TemplateNicArgs
        {
            Dns = "string",
            Gateway = "string",
            Ip = "string",
            Mac = "string",
            Method = "string",
            Model = "string",
            Network = "string",
            NetworkId = 0,
            NetworkModeAuto = false,
            PhysicalDevice = "string",
            SchedRank = "string",
            SchedRequirements = "string",
            SecurityGroups = new[]
            {
                0,
            },
            VirtioQueues = "string",
        },
    },
    Os = new Opennebula.Inputs.TemplateOsArgs
    {
        Arch = "string",
        Boot = "string",
    },
    Permissions = "string",
    Raw = new Opennebula.Inputs.TemplateRawArgs
    {
        Data = "string",
        Type = "string",
    },
    SchedDsRequirements = "string",
    SchedRequirements = "string",
    Tags = 
    {
        { "string", "string" },
    },
    TemplateId = "string",
    TemplateSections = new[]
    {
        new Opennebula.Inputs.TemplateTemplateSectionArgs
        {
            Name = "string",
            Elements = 
            {
                { "string", "string" },
            },
        },
    },
    UserInputs = 
    {
        { "string", "string" },
    },
    Vcpu = 0,
    Vmgroup = new Opennebula.Inputs.TemplateVmgroupArgs
    {
        Role = "string",
        VmgroupId = 0,
    },
});
Copy
example, err := opennebula.NewTemplate(ctx, "templateResource", &opennebula.TemplateArgs{
Context: pulumi.StringMap{
"string": pulumi.String("string"),
},
Cpu: pulumi.Float64(0),
Cpumodel: &.TemplateCpumodelArgs{
Model: pulumi.String("string"),
},
Description: pulumi.String("string"),
Disks: .TemplateDiskArray{
&.TemplateDiskArgs{
Cache: pulumi.String("string"),
DevPrefix: pulumi.String("string"),
Discard: pulumi.String("string"),
Driver: pulumi.String("string"),
ImageId: pulumi.Float64(0),
Io: pulumi.String("string"),
Size: pulumi.Float64(0),
Target: pulumi.String("string"),
VolatileFormat: pulumi.String("string"),
VolatileType: pulumi.String("string"),
},
},
Features: .TemplateFeatureArray{
&.TemplateFeatureArgs{
Acpi: pulumi.String("string"),
Apic: pulumi.String("string"),
GuestAgent: pulumi.String("string"),
Hyperv: pulumi.String("string"),
Iothreads: pulumi.String("string"),
Localtime: pulumi.String("string"),
Pae: pulumi.String("string"),
VirtioScsiQueues: pulumi.String("string"),
},
},
Graphics: &.TemplateGraphicsArgs{
Listen: pulumi.String("string"),
Type: pulumi.String("string"),
Keymap: pulumi.String("string"),
Passwd: pulumi.String("string"),
Port: pulumi.String("string"),
RandomPasswd: pulumi.Bool(false),
},
Group: pulumi.String("string"),
Lock: pulumi.String("string"),
Memory: pulumi.Float64(0),
Name: pulumi.String("string"),
Nics: .TemplateNicArray{
&.TemplateNicArgs{
Dns: pulumi.String("string"),
Gateway: pulumi.String("string"),
Ip: pulumi.String("string"),
Mac: pulumi.String("string"),
Method: pulumi.String("string"),
Model: pulumi.String("string"),
Network: pulumi.String("string"),
NetworkId: pulumi.Float64(0),
NetworkModeAuto: pulumi.Bool(false),
PhysicalDevice: pulumi.String("string"),
SchedRank: pulumi.String("string"),
SchedRequirements: pulumi.String("string"),
SecurityGroups: pulumi.Float64Array{
pulumi.Float64(0),
},
VirtioQueues: pulumi.String("string"),
},
},
Os: &.TemplateOsArgs{
Arch: pulumi.String("string"),
Boot: pulumi.String("string"),
},
Permissions: pulumi.String("string"),
Raw: &.TemplateRawArgs{
Data: pulumi.String("string"),
Type: pulumi.String("string"),
},
SchedDsRequirements: pulumi.String("string"),
SchedRequirements: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
TemplateId: pulumi.String("string"),
TemplateSections: .TemplateTemplateSectionArray{
&.TemplateTemplateSectionArgs{
Name: pulumi.String("string"),
Elements: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
},
UserInputs: pulumi.StringMap{
"string": pulumi.String("string"),
},
Vcpu: pulumi.Float64(0),
Vmgroup: &.TemplateVmgroupArgs{
Role: pulumi.String("string"),
VmgroupId: pulumi.Float64(0),
},
})
Copy
var templateResource = new Template("templateResource", TemplateArgs.builder()
    .context(Map.of("string", "string"))
    .cpu(0)
    .cpumodel(TemplateCpumodelArgs.builder()
        .model("string")
        .build())
    .description("string")
    .disks(TemplateDiskArgs.builder()
        .cache("string")
        .devPrefix("string")
        .discard("string")
        .driver("string")
        .imageId(0)
        .io("string")
        .size(0)
        .target("string")
        .volatileFormat("string")
        .volatileType("string")
        .build())
    .features(TemplateFeatureArgs.builder()
        .acpi("string")
        .apic("string")
        .guestAgent("string")
        .hyperv("string")
        .iothreads("string")
        .localtime("string")
        .pae("string")
        .virtioScsiQueues("string")
        .build())
    .graphics(TemplateGraphicsArgs.builder()
        .listen("string")
        .type("string")
        .keymap("string")
        .passwd("string")
        .port("string")
        .randomPasswd(false)
        .build())
    .group("string")
    .lock("string")
    .memory(0)
    .name("string")
    .nics(TemplateNicArgs.builder()
        .dns("string")
        .gateway("string")
        .ip("string")
        .mac("string")
        .method("string")
        .model("string")
        .network("string")
        .networkId(0)
        .networkModeAuto(false)
        .physicalDevice("string")
        .schedRank("string")
        .schedRequirements("string")
        .securityGroups(0)
        .virtioQueues("string")
        .build())
    .os(TemplateOsArgs.builder()
        .arch("string")
        .boot("string")
        .build())
    .permissions("string")
    .raw(TemplateRawArgs.builder()
        .data("string")
        .type("string")
        .build())
    .schedDsRequirements("string")
    .schedRequirements("string")
    .tags(Map.of("string", "string"))
    .templateId("string")
    .templateSections(TemplateTemplateSectionArgs.builder()
        .name("string")
        .elements(Map.of("string", "string"))
        .build())
    .userInputs(Map.of("string", "string"))
    .vcpu(0)
    .vmgroup(TemplateVmgroupArgs.builder()
        .role("string")
        .vmgroupId(0)
        .build())
    .build());
Copy
template_resource = opennebula.Template("templateResource",
    context={
        "string": "string",
    },
    cpu=0,
    cpumodel={
        "model": "string",
    },
    description="string",
    disks=[{
        "cache": "string",
        "dev_prefix": "string",
        "discard": "string",
        "driver": "string",
        "image_id": 0,
        "io": "string",
        "size": 0,
        "target": "string",
        "volatile_format": "string",
        "volatile_type": "string",
    }],
    features=[{
        "acpi": "string",
        "apic": "string",
        "guest_agent": "string",
        "hyperv": "string",
        "iothreads": "string",
        "localtime": "string",
        "pae": "string",
        "virtio_scsi_queues": "string",
    }],
    graphics={
        "listen": "string",
        "type": "string",
        "keymap": "string",
        "passwd": "string",
        "port": "string",
        "random_passwd": False,
    },
    group="string",
    lock="string",
    memory=0,
    name="string",
    nics=[{
        "dns": "string",
        "gateway": "string",
        "ip": "string",
        "mac": "string",
        "method": "string",
        "model": "string",
        "network": "string",
        "network_id": 0,
        "network_mode_auto": False,
        "physical_device": "string",
        "sched_rank": "string",
        "sched_requirements": "string",
        "security_groups": [0],
        "virtio_queues": "string",
    }],
    os={
        "arch": "string",
        "boot": "string",
    },
    permissions="string",
    raw={
        "data": "string",
        "type": "string",
    },
    sched_ds_requirements="string",
    sched_requirements="string",
    tags={
        "string": "string",
    },
    template_id="string",
    template_sections=[{
        "name": "string",
        "elements": {
            "string": "string",
        },
    }],
    user_inputs={
        "string": "string",
    },
    vcpu=0,
    vmgroup={
        "role": "string",
        "vmgroup_id": 0,
    })
Copy
const templateResource = new opennebula.Template("templateResource", {
    context: {
        string: "string",
    },
    cpu: 0,
    cpumodel: {
        model: "string",
    },
    description: "string",
    disks: [{
        cache: "string",
        devPrefix: "string",
        discard: "string",
        driver: "string",
        imageId: 0,
        io: "string",
        size: 0,
        target: "string",
        volatileFormat: "string",
        volatileType: "string",
    }],
    features: [{
        acpi: "string",
        apic: "string",
        guestAgent: "string",
        hyperv: "string",
        iothreads: "string",
        localtime: "string",
        pae: "string",
        virtioScsiQueues: "string",
    }],
    graphics: {
        listen: "string",
        type: "string",
        keymap: "string",
        passwd: "string",
        port: "string",
        randomPasswd: false,
    },
    group: "string",
    lock: "string",
    memory: 0,
    name: "string",
    nics: [{
        dns: "string",
        gateway: "string",
        ip: "string",
        mac: "string",
        method: "string",
        model: "string",
        network: "string",
        networkId: 0,
        networkModeAuto: false,
        physicalDevice: "string",
        schedRank: "string",
        schedRequirements: "string",
        securityGroups: [0],
        virtioQueues: "string",
    }],
    os: {
        arch: "string",
        boot: "string",
    },
    permissions: "string",
    raw: {
        data: "string",
        type: "string",
    },
    schedDsRequirements: "string",
    schedRequirements: "string",
    tags: {
        string: "string",
    },
    templateId: "string",
    templateSections: [{
        name: "string",
        elements: {
            string: "string",
        },
    }],
    userInputs: {
        string: "string",
    },
    vcpu: 0,
    vmgroup: {
        role: "string",
        vmgroupId: 0,
    },
});
Copy
type: opennebula:Template
properties:
    context:
        string: string
    cpu: 0
    cpumodel:
        model: string
    description: string
    disks:
        - cache: string
          devPrefix: string
          discard: string
          driver: string
          imageId: 0
          io: string
          size: 0
          target: string
          volatileFormat: string
          volatileType: string
    features:
        - acpi: string
          apic: string
          guestAgent: string
          hyperv: string
          iothreads: string
          localtime: string
          pae: string
          virtioScsiQueues: string
    graphics:
        keymap: string
        listen: string
        passwd: string
        port: string
        randomPasswd: false
        type: string
    group: string
    lock: string
    memory: 0
    name: string
    nics:
        - dns: string
          gateway: string
          ip: string
          mac: string
          method: string
          model: string
          network: string
          networkId: 0
          networkModeAuto: false
          physicalDevice: string
          schedRank: string
          schedRequirements: string
          securityGroups:
            - 0
          virtioQueues: string
    os:
        arch: string
        boot: string
    permissions: string
    raw:
        data: string
        type: string
    schedDsRequirements: string
    schedRequirements: string
    tags:
        string: string
    templateId: string
    templateSections:
        - elements:
            string: string
          name: string
    userInputs:
        string: string
    vcpu: 0
    vmgroup:
        role: string
        vmgroupId: 0
Copy

Template 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 Template resource accepts the following input properties:

Context Dictionary<string, string>
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
Cpu double
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
Cpumodel TemplateCpumodel
See CPUmodel parameters below for details.
Description string
The description of the template.
Disks List<TemplateDisk>
Can be specified multiple times to attach several disks. See Disks parameters below for details.
Features List<TemplateFeature>
See Features parameters below for details.
Graphics TemplateGraphics
See Graphics parameters below for details.
Group string
Name of the group which owns the template. Defaults to the caller primary group.
Lock string
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
Memory double
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
Name string
The name of the virtual machine template.
Nics List<TemplateNic>
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
Os TemplateOs
See OS parameters below for details.
Permissions string
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
Raw TemplateRaw
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
SchedDsRequirements string
Storage placement requirements to deploy the resource following specific rule.
SchedRequirements string
Scheduling requirements to deploy the resource following specific rule
Tags Dictionary<string, string>
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
TemplateId string
ID of the template.
TemplateSections List<TemplateTemplateSection>
Allow to add a custom vector. See Template section parameters
UserInputs Dictionary<string, string>
Ask the user instantiating the template to define the values described.
Vcpu double
Number of CPU cores presented to the VM.
Vmgroup TemplateVmgroup
See VM group parameters below for details. Changing this argument triggers a new resource.
Context map[string]string
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
Cpu float64
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
Cpumodel TemplateCpumodelArgs
See CPUmodel parameters below for details.
Description string
The description of the template.
Disks []TemplateDiskArgs
Can be specified multiple times to attach several disks. See Disks parameters below for details.
Features []TemplateFeatureArgs
See Features parameters below for details.
Graphics TemplateGraphicsArgs
See Graphics parameters below for details.
Group string
Name of the group which owns the template. Defaults to the caller primary group.
Lock string
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
Memory float64
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
Name string
The name of the virtual machine template.
Nics []TemplateNicArgs
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
Os TemplateOsArgs
See OS parameters below for details.
Permissions string
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
Raw TemplateRawArgs
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
SchedDsRequirements string
Storage placement requirements to deploy the resource following specific rule.
SchedRequirements string
Scheduling requirements to deploy the resource following specific rule
Tags map[string]string
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
TemplateId string
ID of the template.
TemplateSections []TemplateTemplateSectionArgs
Allow to add a custom vector. See Template section parameters
UserInputs map[string]string
Ask the user instantiating the template to define the values described.
Vcpu float64
Number of CPU cores presented to the VM.
Vmgroup TemplateVmgroupArgs
See VM group parameters below for details. Changing this argument triggers a new resource.
context Map<String,String>
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu Double
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel TemplateCpumodel
See CPUmodel parameters below for details.
description String
The description of the template.
disks List<TemplateDisk>
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features List<TemplateFeature>
See Features parameters below for details.
graphics TemplateGraphics
See Graphics parameters below for details.
group String
Name of the group which owns the template. Defaults to the caller primary group.
lock String
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory Double
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name String
The name of the virtual machine template.
nics List<TemplateNic>
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os TemplateOs
See OS parameters below for details.
permissions String
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw TemplateRaw
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
schedDsRequirements String
Storage placement requirements to deploy the resource following specific rule.
schedRequirements String
Scheduling requirements to deploy the resource following specific rule
tags Map<String,String>
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
templateId String
ID of the template.
templateSections List<TemplateTemplateSection>
Allow to add a custom vector. See Template section parameters
userInputs Map<String,String>
Ask the user instantiating the template to define the values described.
vcpu Double
Number of CPU cores presented to the VM.
vmgroup TemplateVmgroup
See VM group parameters below for details. Changing this argument triggers a new resource.
context {[key: string]: string}
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu number
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel TemplateCpumodel
See CPUmodel parameters below for details.
description string
The description of the template.
disks TemplateDisk[]
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features TemplateFeature[]
See Features parameters below for details.
graphics TemplateGraphics
See Graphics parameters below for details.
group string
Name of the group which owns the template. Defaults to the caller primary group.
lock string
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory number
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name string
The name of the virtual machine template.
nics TemplateNic[]
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os TemplateOs
See OS parameters below for details.
permissions string
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw TemplateRaw
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
schedDsRequirements string
Storage placement requirements to deploy the resource following specific rule.
schedRequirements string
Scheduling requirements to deploy the resource following specific rule
tags {[key: string]: string}
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
templateId string
ID of the template.
templateSections TemplateTemplateSection[]
Allow to add a custom vector. See Template section parameters
userInputs {[key: string]: string}
Ask the user instantiating the template to define the values described.
vcpu number
Number of CPU cores presented to the VM.
vmgroup TemplateVmgroup
See VM group parameters below for details. Changing this argument triggers a new resource.
context Mapping[str, str]
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu float
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel TemplateCpumodelArgs
See CPUmodel parameters below for details.
description str
The description of the template.
disks Sequence[TemplateDiskArgs]
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features Sequence[TemplateFeatureArgs]
See Features parameters below for details.
graphics TemplateGraphicsArgs
See Graphics parameters below for details.
group str
Name of the group which owns the template. Defaults to the caller primary group.
lock str
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory float
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name str
The name of the virtual machine template.
nics Sequence[TemplateNicArgs]
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os TemplateOsArgs
See OS parameters below for details.
permissions str
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw TemplateRawArgs
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
sched_ds_requirements str
Storage placement requirements to deploy the resource following specific rule.
sched_requirements str
Scheduling requirements to deploy the resource following specific rule
tags Mapping[str, str]
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
template_id str
ID of the template.
template_sections Sequence[TemplateTemplateSectionArgs]
Allow to add a custom vector. See Template section parameters
user_inputs Mapping[str, str]
Ask the user instantiating the template to define the values described.
vcpu float
Number of CPU cores presented to the VM.
vmgroup TemplateVmgroupArgs
See VM group parameters below for details. Changing this argument triggers a new resource.
context Map<String>
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu Number
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel Property Map
See CPUmodel parameters below for details.
description String
The description of the template.
disks List<Property Map>
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features List<Property Map>
See Features parameters below for details.
graphics Property Map
See Graphics parameters below for details.
group String
Name of the group which owns the template. Defaults to the caller primary group.
lock String
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory Number
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name String
The name of the virtual machine template.
nics List<Property Map>
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os Property Map
See OS parameters below for details.
permissions String
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw Property Map
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
schedDsRequirements String
Storage placement requirements to deploy the resource following specific rule.
schedRequirements String
Scheduling requirements to deploy the resource following specific rule
tags Map<String>
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
templateId String
ID of the template.
templateSections List<Property Map>
Allow to add a custom vector. See Template section parameters
userInputs Map<String>
Ask the user instantiating the template to define the values described.
vcpu Number
Number of CPU cores presented to the VM.
vmgroup Property Map
See VM group parameters below for details. Changing this argument triggers a new resource.

Outputs

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

DefaultTags Dictionary<string, string>
Default tags defined in the provider configuration.
Gid double
Group ID which owns the template.
Gname string
Group Name which owns the template.
Id string
The provider-assigned unique ID for this managed resource.
RegTime double
Registration time of the template.
TagsAll Dictionary<string, string>
Result of the applied default_tags and then resource tags.
Uid double
User ID whom owns the template.
Uname string
User Name whom owns the template.
DefaultTags map[string]string
Default tags defined in the provider configuration.
Gid float64
Group ID which owns the template.
Gname string
Group Name which owns the template.
Id string
The provider-assigned unique ID for this managed resource.
RegTime float64
Registration time of the template.
TagsAll map[string]string
Result of the applied default_tags and then resource tags.
Uid float64
User ID whom owns the template.
Uname string
User Name whom owns the template.
defaultTags Map<String,String>
Default tags defined in the provider configuration.
gid Double
Group ID which owns the template.
gname String
Group Name which owns the template.
id String
The provider-assigned unique ID for this managed resource.
regTime Double
Registration time of the template.
tagsAll Map<String,String>
Result of the applied default_tags and then resource tags.
uid Double
User ID whom owns the template.
uname String
User Name whom owns the template.
defaultTags {[key: string]: string}
Default tags defined in the provider configuration.
gid number
Group ID which owns the template.
gname string
Group Name which owns the template.
id string
The provider-assigned unique ID for this managed resource.
regTime number
Registration time of the template.
tagsAll {[key: string]: string}
Result of the applied default_tags and then resource tags.
uid number
User ID whom owns the template.
uname string
User Name whom owns the template.
default_tags Mapping[str, str]
Default tags defined in the provider configuration.
gid float
Group ID which owns the template.
gname str
Group Name which owns the template.
id str
The provider-assigned unique ID for this managed resource.
reg_time float
Registration time of the template.
tags_all Mapping[str, str]
Result of the applied default_tags and then resource tags.
uid float
User ID whom owns the template.
uname str
User Name whom owns the template.
defaultTags Map<String>
Default tags defined in the provider configuration.
gid Number
Group ID which owns the template.
gname String
Group Name which owns the template.
id String
The provider-assigned unique ID for this managed resource.
regTime Number
Registration time of the template.
tagsAll Map<String>
Result of the applied default_tags and then resource tags.
uid Number
User ID whom owns the template.
uname String
User Name whom owns the template.

Look up Existing Template Resource

Get an existing Template 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?: TemplateState, opts?: CustomResourceOptions): Template
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        context: Optional[Mapping[str, str]] = None,
        cpu: Optional[float] = None,
        cpumodel: Optional[TemplateCpumodelArgs] = None,
        default_tags: Optional[Mapping[str, str]] = None,
        description: Optional[str] = None,
        disks: Optional[Sequence[TemplateDiskArgs]] = None,
        features: Optional[Sequence[TemplateFeatureArgs]] = None,
        gid: Optional[float] = None,
        gname: Optional[str] = None,
        graphics: Optional[TemplateGraphicsArgs] = None,
        group: Optional[str] = None,
        lock: Optional[str] = None,
        memory: Optional[float] = None,
        name: Optional[str] = None,
        nics: Optional[Sequence[TemplateNicArgs]] = None,
        os: Optional[TemplateOsArgs] = None,
        permissions: Optional[str] = None,
        raw: Optional[TemplateRawArgs] = None,
        reg_time: Optional[float] = None,
        sched_ds_requirements: Optional[str] = None,
        sched_requirements: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None,
        template_id: Optional[str] = None,
        template_sections: Optional[Sequence[TemplateTemplateSectionArgs]] = None,
        uid: Optional[float] = None,
        uname: Optional[str] = None,
        user_inputs: Optional[Mapping[str, str]] = None,
        vcpu: Optional[float] = None,
        vmgroup: Optional[TemplateVmgroupArgs] = None) -> Template
func GetTemplate(ctx *Context, name string, id IDInput, state *TemplateState, opts ...ResourceOption) (*Template, error)
public static Template Get(string name, Input<string> id, TemplateState? state, CustomResourceOptions? opts = null)
public static Template get(String name, Output<String> id, TemplateState state, CustomResourceOptions options)
resources:  _:    type: opennebula:Template    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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:
Context Dictionary<string, string>
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
Cpu double
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
Cpumodel TemplateCpumodel
See CPUmodel parameters below for details.
DefaultTags Dictionary<string, string>
Default tags defined in the provider configuration.
Description string
The description of the template.
Disks List<TemplateDisk>
Can be specified multiple times to attach several disks. See Disks parameters below for details.
Features List<TemplateFeature>
See Features parameters below for details.
Gid double
Group ID which owns the template.
Gname string
Group Name which owns the template.
Graphics TemplateGraphics
See Graphics parameters below for details.
Group string
Name of the group which owns the template. Defaults to the caller primary group.
Lock string
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
Memory double
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
Name string
The name of the virtual machine template.
Nics List<TemplateNic>
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
Os TemplateOs
See OS parameters below for details.
Permissions string
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
Raw TemplateRaw
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
RegTime double
Registration time of the template.
SchedDsRequirements string
Storage placement requirements to deploy the resource following specific rule.
SchedRequirements string
Scheduling requirements to deploy the resource following specific rule
Tags Dictionary<string, string>
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
TagsAll Dictionary<string, string>
Result of the applied default_tags and then resource tags.
TemplateId string
ID of the template.
TemplateSections List<TemplateTemplateSection>
Allow to add a custom vector. See Template section parameters
Uid double
User ID whom owns the template.
Uname string
User Name whom owns the template.
UserInputs Dictionary<string, string>
Ask the user instantiating the template to define the values described.
Vcpu double
Number of CPU cores presented to the VM.
Vmgroup TemplateVmgroup
See VM group parameters below for details. Changing this argument triggers a new resource.
Context map[string]string
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
Cpu float64
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
Cpumodel TemplateCpumodelArgs
See CPUmodel parameters below for details.
DefaultTags map[string]string
Default tags defined in the provider configuration.
Description string
The description of the template.
Disks []TemplateDiskArgs
Can be specified multiple times to attach several disks. See Disks parameters below for details.
Features []TemplateFeatureArgs
See Features parameters below for details.
Gid float64
Group ID which owns the template.
Gname string
Group Name which owns the template.
Graphics TemplateGraphicsArgs
See Graphics parameters below for details.
Group string
Name of the group which owns the template. Defaults to the caller primary group.
Lock string
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
Memory float64
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
Name string
The name of the virtual machine template.
Nics []TemplateNicArgs
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
Os TemplateOsArgs
See OS parameters below for details.
Permissions string
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
Raw TemplateRawArgs
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
RegTime float64
Registration time of the template.
SchedDsRequirements string
Storage placement requirements to deploy the resource following specific rule.
SchedRequirements string
Scheduling requirements to deploy the resource following specific rule
Tags map[string]string
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
TagsAll map[string]string
Result of the applied default_tags and then resource tags.
TemplateId string
ID of the template.
TemplateSections []TemplateTemplateSectionArgs
Allow to add a custom vector. See Template section parameters
Uid float64
User ID whom owns the template.
Uname string
User Name whom owns the template.
UserInputs map[string]string
Ask the user instantiating the template to define the values described.
Vcpu float64
Number of CPU cores presented to the VM.
Vmgroup TemplateVmgroupArgs
See VM group parameters below for details. Changing this argument triggers a new resource.
context Map<String,String>
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu Double
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel TemplateCpumodel
See CPUmodel parameters below for details.
defaultTags Map<String,String>
Default tags defined in the provider configuration.
description String
The description of the template.
disks List<TemplateDisk>
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features List<TemplateFeature>
See Features parameters below for details.
gid Double
Group ID which owns the template.
gname String
Group Name which owns the template.
graphics TemplateGraphics
See Graphics parameters below for details.
group String
Name of the group which owns the template. Defaults to the caller primary group.
lock String
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory Double
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name String
The name of the virtual machine template.
nics List<TemplateNic>
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os TemplateOs
See OS parameters below for details.
permissions String
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw TemplateRaw
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
regTime Double
Registration time of the template.
schedDsRequirements String
Storage placement requirements to deploy the resource following specific rule.
schedRequirements String
Scheduling requirements to deploy the resource following specific rule
tags Map<String,String>
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
tagsAll Map<String,String>
Result of the applied default_tags and then resource tags.
templateId String
ID of the template.
templateSections List<TemplateTemplateSection>
Allow to add a custom vector. See Template section parameters
uid Double
User ID whom owns the template.
uname String
User Name whom owns the template.
userInputs Map<String,String>
Ask the user instantiating the template to define the values described.
vcpu Double
Number of CPU cores presented to the VM.
vmgroup TemplateVmgroup
See VM group parameters below for details. Changing this argument triggers a new resource.
context {[key: string]: string}
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu number
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel TemplateCpumodel
See CPUmodel parameters below for details.
defaultTags {[key: string]: string}
Default tags defined in the provider configuration.
description string
The description of the template.
disks TemplateDisk[]
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features TemplateFeature[]
See Features parameters below for details.
gid number
Group ID which owns the template.
gname string
Group Name which owns the template.
graphics TemplateGraphics
See Graphics parameters below for details.
group string
Name of the group which owns the template. Defaults to the caller primary group.
lock string
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory number
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name string
The name of the virtual machine template.
nics TemplateNic[]
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os TemplateOs
See OS parameters below for details.
permissions string
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw TemplateRaw
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
regTime number
Registration time of the template.
schedDsRequirements string
Storage placement requirements to deploy the resource following specific rule.
schedRequirements string
Scheduling requirements to deploy the resource following specific rule
tags {[key: string]: string}
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
tagsAll {[key: string]: string}
Result of the applied default_tags and then resource tags.
templateId string
ID of the template.
templateSections TemplateTemplateSection[]
Allow to add a custom vector. See Template section parameters
uid number
User ID whom owns the template.
uname string
User Name whom owns the template.
userInputs {[key: string]: string}
Ask the user instantiating the template to define the values described.
vcpu number
Number of CPU cores presented to the VM.
vmgroup TemplateVmgroup
See VM group parameters below for details. Changing this argument triggers a new resource.
context Mapping[str, str]
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu float
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel TemplateCpumodelArgs
See CPUmodel parameters below for details.
default_tags Mapping[str, str]
Default tags defined in the provider configuration.
description str
The description of the template.
disks Sequence[TemplateDiskArgs]
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features Sequence[TemplateFeatureArgs]
See Features parameters below for details.
gid float
Group ID which owns the template.
gname str
Group Name which owns the template.
graphics TemplateGraphicsArgs
See Graphics parameters below for details.
group str
Name of the group which owns the template. Defaults to the caller primary group.
lock str
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory float
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name str
The name of the virtual machine template.
nics Sequence[TemplateNicArgs]
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os TemplateOsArgs
See OS parameters below for details.
permissions str
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw TemplateRawArgs
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
reg_time float
Registration time of the template.
sched_ds_requirements str
Storage placement requirements to deploy the resource following specific rule.
sched_requirements str
Scheduling requirements to deploy the resource following specific rule
tags Mapping[str, str]
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
tags_all Mapping[str, str]
Result of the applied default_tags and then resource tags.
template_id str
ID of the template.
template_sections Sequence[TemplateTemplateSectionArgs]
Allow to add a custom vector. See Template section parameters
uid float
User ID whom owns the template.
uname str
User Name whom owns the template.
user_inputs Mapping[str, str]
Ask the user instantiating the template to define the values described.
vcpu float
Number of CPU cores presented to the VM.
vmgroup TemplateVmgroupArgs
See VM group parameters below for details. Changing this argument triggers a new resource.
context Map<String>
Array of free form key=value pairs, rendered and added to the CONTEXT variables for the VM. Recommended to include: NETWORK = "YES" and SET_HOSTNAME = "$NAME".
cpu Number
Amount of CPU shares assigned to the VM. Mandatory if template_****id is not set.
cpumodel Property Map
See CPUmodel parameters below for details.
defaultTags Map<String>
Default tags defined in the provider configuration.
description String
The description of the template.
disks List<Property Map>
Can be specified multiple times to attach several disks. See Disks parameters below for details.
features List<Property Map>
See Features parameters below for details.
gid Number
Group ID which owns the template.
gname String
Group Name which owns the template.
graphics Property Map
See Graphics parameters below for details.
group String
Name of the group which owns the template. Defaults to the caller primary group.
lock String
Lock the template with a specific lock level. Supported values: USE, MANAGE, ADMIN, ALL or UNLOCK.
memory Number
Amount of RAM assigned to the VM in MB. Mandatory if template_****id is not set.
name String
The name of the virtual machine template.
nics List<Property Map>
Can be specified multiple times to attach several NICs. See Nic parameters below for details.
os Property Map
See OS parameters below for details.
permissions String
Permissions applied on template. Defaults to the UMASK in OpenNebula (in UNIX Format: owner-group-other => Use-Manage-Admin).
raw Property Map
Allow to pass hypervisor level tuning content. See Raw parameters below for details.
regTime Number
Registration time of the template.
schedDsRequirements String
Storage placement requirements to deploy the resource following specific rule.
schedRequirements String
Scheduling requirements to deploy the resource following specific rule
tags Map<String>
Map of tags (key=value) assigned to the resource. Override matching tags present in the default_tags atribute when configured in the provider block. See tags usage related documentation for more information.
tagsAll Map<String>
Result of the applied default_tags and then resource tags.
templateId String
ID of the template.
templateSections List<Property Map>
Allow to add a custom vector. See Template section parameters
uid Number
User ID whom owns the template.
uname String
User Name whom owns the template.
userInputs Map<String>
Ask the user instantiating the template to define the values described.
vcpu Number
Number of CPU cores presented to the VM.
vmgroup Property Map
See VM group parameters below for details. Changing this argument triggers a new resource.

Supporting Types

TemplateCpumodel
, TemplateCpumodelArgs

Model This property is required. string
CPU model to be used on the virtual machine.
Model This property is required. string
CPU model to be used on the virtual machine.
model This property is required. String
CPU model to be used on the virtual machine.
model This property is required. string
CPU model to be used on the virtual machine.
model This property is required. str
CPU model to be used on the virtual machine.
model This property is required. String
CPU model to be used on the virtual machine.

TemplateDisk
, TemplateDiskArgs

Cache string
Selects the cache mechanism for the disk. Values are default, none, writethrough, writeback, directsync and unsafe.
DevPrefix string
Prefix for the emulated device this image will be mounted at. For instance, attribute of the Image will be used.
Discard string
Controls what’s done with with trim commands to the disk, the values can be ignore or discard.
Driver string
OpenNebula image driver.
ImageId double
ID of the image to attach to the virtual machine. Conflicts with volatile_type and volatile_format.
Io string
Set IO policy. Values are threads, native.
Size double
Size (in MB) of the image attached to the virtual machine. Not possible to change a cloned image size.
Target string
Target name device on the virtual machine. Depends of the image dev_prefix.
VolatileFormat string

Format of the volatile disk: raw or qcow2. Conflicts with image_id.

Minimum 1 item. Maximum 8 items.

VolatileType string
Type of the volatile disk: swap or fs. Type swap is not supported in vcenter. Conflicts with image_id.
Cache string
Selects the cache mechanism for the disk. Values are default, none, writethrough, writeback, directsync and unsafe.
DevPrefix string
Prefix for the emulated device this image will be mounted at. For instance, attribute of the Image will be used.
Discard string
Controls what’s done with with trim commands to the disk, the values can be ignore or discard.
Driver string
OpenNebula image driver.
ImageId float64
ID of the image to attach to the virtual machine. Conflicts with volatile_type and volatile_format.
Io string
Set IO policy. Values are threads, native.
Size float64
Size (in MB) of the image attached to the virtual machine. Not possible to change a cloned image size.
Target string
Target name device on the virtual machine. Depends of the image dev_prefix.
VolatileFormat string

Format of the volatile disk: raw or qcow2. Conflicts with image_id.

Minimum 1 item. Maximum 8 items.

VolatileType string
Type of the volatile disk: swap or fs. Type swap is not supported in vcenter. Conflicts with image_id.
cache String
Selects the cache mechanism for the disk. Values are default, none, writethrough, writeback, directsync and unsafe.
devPrefix String
Prefix for the emulated device this image will be mounted at. For instance, attribute of the Image will be used.
discard String
Controls what’s done with with trim commands to the disk, the values can be ignore or discard.
driver String
OpenNebula image driver.
imageId Double
ID of the image to attach to the virtual machine. Conflicts with volatile_type and volatile_format.
io String
Set IO policy. Values are threads, native.
size Double
Size (in MB) of the image attached to the virtual machine. Not possible to change a cloned image size.
target String
Target name device on the virtual machine. Depends of the image dev_prefix.
volatileFormat String

Format of the volatile disk: raw or qcow2. Conflicts with image_id.

Minimum 1 item. Maximum 8 items.

volatileType String
Type of the volatile disk: swap or fs. Type swap is not supported in vcenter. Conflicts with image_id.
cache string
Selects the cache mechanism for the disk. Values are default, none, writethrough, writeback, directsync and unsafe.
devPrefix string
Prefix for the emulated device this image will be mounted at. For instance, attribute of the Image will be used.
discard string
Controls what’s done with with trim commands to the disk, the values can be ignore or discard.
driver string
OpenNebula image driver.
imageId number
ID of the image to attach to the virtual machine. Conflicts with volatile_type and volatile_format.
io string
Set IO policy. Values are threads, native.
size number
Size (in MB) of the image attached to the virtual machine. Not possible to change a cloned image size.
target string
Target name device on the virtual machine. Depends of the image dev_prefix.
volatileFormat string

Format of the volatile disk: raw or qcow2. Conflicts with image_id.

Minimum 1 item. Maximum 8 items.

volatileType string
Type of the volatile disk: swap or fs. Type swap is not supported in vcenter. Conflicts with image_id.
cache str
Selects the cache mechanism for the disk. Values are default, none, writethrough, writeback, directsync and unsafe.
dev_prefix str
Prefix for the emulated device this image will be mounted at. For instance, attribute of the Image will be used.
discard str
Controls what’s done with with trim commands to the disk, the values can be ignore or discard.
driver str
OpenNebula image driver.
image_id float
ID of the image to attach to the virtual machine. Conflicts with volatile_type and volatile_format.
io str
Set IO policy. Values are threads, native.
size float
Size (in MB) of the image attached to the virtual machine. Not possible to change a cloned image size.
target str
Target name device on the virtual machine. Depends of the image dev_prefix.
volatile_format str

Format of the volatile disk: raw or qcow2. Conflicts with image_id.

Minimum 1 item. Maximum 8 items.

volatile_type str
Type of the volatile disk: swap or fs. Type swap is not supported in vcenter. Conflicts with image_id.
cache String
Selects the cache mechanism for the disk. Values are default, none, writethrough, writeback, directsync and unsafe.
devPrefix String
Prefix for the emulated device this image will be mounted at. For instance, attribute of the Image will be used.
discard String
Controls what’s done with with trim commands to the disk, the values can be ignore or discard.
driver String
OpenNebula image driver.
imageId Number
ID of the image to attach to the virtual machine. Conflicts with volatile_type and volatile_format.
io String
Set IO policy. Values are threads, native.
size Number
Size (in MB) of the image attached to the virtual machine. Not possible to change a cloned image size.
target String
Target name device on the virtual machine. Depends of the image dev_prefix.
volatileFormat String

Format of the volatile disk: raw or qcow2. Conflicts with image_id.

Minimum 1 item. Maximum 8 items.

volatileType String
Type of the volatile disk: swap or fs. Type swap is not supported in vcenter. Conflicts with image_id.

TemplateFeature
, TemplateFeatureArgs

Acpi string
Useful for power management, for example, with KVM guests it is required for graceful shutdown to work. (Can be YES or NO)
Apic string
Enables the advanced programmable IRQ management. Useful for SMP machines. (Can be YES or NO)
GuestAgent string
Enables the QEMU Guest Agent communication. This only creates the socket inside the VM, the Guest Agent itself must be installed and started in the VM. (Can be YES or NO)
Hyperv string
Add hyperv extensions to the VM. The options can be configured in the driver configuration, HYPERV_OPTIONS.
Iothreads string
umber of iothreads for virtio disks. By default threads will be assign to disk by round robin algorithm. Disk thread id can be forced by disk IOTHREAD attribute.
Localtime string
The guest clock will be synchronized to the host’s configured timezone when booted. Useful for Windows VMs. (Can be YES or NO)
Pae string
Physical address extension mode allows 32-bit guests to address more than 4 GB of memory.
VirtioScsiQueues string
Numer of vCPU queues for the virtio-scsi controller.
Acpi string
Useful for power management, for example, with KVM guests it is required for graceful shutdown to work. (Can be YES or NO)
Apic string
Enables the advanced programmable IRQ management. Useful for SMP machines. (Can be YES or NO)
GuestAgent string
Enables the QEMU Guest Agent communication. This only creates the socket inside the VM, the Guest Agent itself must be installed and started in the VM. (Can be YES or NO)
Hyperv string
Add hyperv extensions to the VM. The options can be configured in the driver configuration, HYPERV_OPTIONS.
Iothreads string
umber of iothreads for virtio disks. By default threads will be assign to disk by round robin algorithm. Disk thread id can be forced by disk IOTHREAD attribute.
Localtime string
The guest clock will be synchronized to the host’s configured timezone when booted. Useful for Windows VMs. (Can be YES or NO)
Pae string
Physical address extension mode allows 32-bit guests to address more than 4 GB of memory.
VirtioScsiQueues string
Numer of vCPU queues for the virtio-scsi controller.
acpi String
Useful for power management, for example, with KVM guests it is required for graceful shutdown to work. (Can be YES or NO)
apic String
Enables the advanced programmable IRQ management. Useful for SMP machines. (Can be YES or NO)
guestAgent String
Enables the QEMU Guest Agent communication. This only creates the socket inside the VM, the Guest Agent itself must be installed and started in the VM. (Can be YES or NO)
hyperv String
Add hyperv extensions to the VM. The options can be configured in the driver configuration, HYPERV_OPTIONS.
iothreads String
umber of iothreads for virtio disks. By default threads will be assign to disk by round robin algorithm. Disk thread id can be forced by disk IOTHREAD attribute.
localtime String
The guest clock will be synchronized to the host’s configured timezone when booted. Useful for Windows VMs. (Can be YES or NO)
pae String
Physical address extension mode allows 32-bit guests to address more than 4 GB of memory.
virtioScsiQueues String
Numer of vCPU queues for the virtio-scsi controller.
acpi string
Useful for power management, for example, with KVM guests it is required for graceful shutdown to work. (Can be YES or NO)
apic string
Enables the advanced programmable IRQ management. Useful for SMP machines. (Can be YES or NO)
guestAgent string
Enables the QEMU Guest Agent communication. This only creates the socket inside the VM, the Guest Agent itself must be installed and started in the VM. (Can be YES or NO)
hyperv string
Add hyperv extensions to the VM. The options can be configured in the driver configuration, HYPERV_OPTIONS.
iothreads string
umber of iothreads for virtio disks. By default threads will be assign to disk by round robin algorithm. Disk thread id can be forced by disk IOTHREAD attribute.
localtime string
The guest clock will be synchronized to the host’s configured timezone when booted. Useful for Windows VMs. (Can be YES or NO)
pae string
Physical address extension mode allows 32-bit guests to address more than 4 GB of memory.
virtioScsiQueues string
Numer of vCPU queues for the virtio-scsi controller.
acpi str
Useful for power management, for example, with KVM guests it is required for graceful shutdown to work. (Can be YES or NO)
apic str
Enables the advanced programmable IRQ management. Useful for SMP machines. (Can be YES or NO)
guest_agent str
Enables the QEMU Guest Agent communication. This only creates the socket inside the VM, the Guest Agent itself must be installed and started in the VM. (Can be YES or NO)
hyperv str
Add hyperv extensions to the VM. The options can be configured in the driver configuration, HYPERV_OPTIONS.
iothreads str
umber of iothreads for virtio disks. By default threads will be assign to disk by round robin algorithm. Disk thread id can be forced by disk IOTHREAD attribute.
localtime str
The guest clock will be synchronized to the host’s configured timezone when booted. Useful for Windows VMs. (Can be YES or NO)
pae str
Physical address extension mode allows 32-bit guests to address more than 4 GB of memory.
virtio_scsi_queues str
Numer of vCPU queues for the virtio-scsi controller.
acpi String
Useful for power management, for example, with KVM guests it is required for graceful shutdown to work. (Can be YES or NO)
apic String
Enables the advanced programmable IRQ management. Useful for SMP machines. (Can be YES or NO)
guestAgent String
Enables the QEMU Guest Agent communication. This only creates the socket inside the VM, the Guest Agent itself must be installed and started in the VM. (Can be YES or NO)
hyperv String
Add hyperv extensions to the VM. The options can be configured in the driver configuration, HYPERV_OPTIONS.
iothreads String
umber of iothreads for virtio disks. By default threads will be assign to disk by round robin algorithm. Disk thread id can be forced by disk IOTHREAD attribute.
localtime String
The guest clock will be synchronized to the host’s configured timezone when booted. Useful for Windows VMs. (Can be YES or NO)
pae String
Physical address extension mode allows 32-bit guests to address more than 4 GB of memory.
virtioScsiQueues String
Numer of vCPU queues for the virtio-scsi controller.

TemplateGraphics
, TemplateGraphicsArgs

Listen This property is required. string
Binding address.
Type This property is required. string
Generally set to VNC.
Keymap string
Keyboard mapping.
Passwd string
VNC's password, conflicts with random_passwd.
Port string
Binding Port.
RandomPasswd bool
Randomized VNC's password, conflicts with passwd.
Listen This property is required. string
Binding address.
Type This property is required. string
Generally set to VNC.
Keymap string
Keyboard mapping.
Passwd string
VNC's password, conflicts with random_passwd.
Port string
Binding Port.
RandomPasswd bool
Randomized VNC's password, conflicts with passwd.
listen This property is required. String
Binding address.
type This property is required. String
Generally set to VNC.
keymap String
Keyboard mapping.
passwd String
VNC's password, conflicts with random_passwd.
port String
Binding Port.
randomPasswd Boolean
Randomized VNC's password, conflicts with passwd.
listen This property is required. string
Binding address.
type This property is required. string
Generally set to VNC.
keymap string
Keyboard mapping.
passwd string
VNC's password, conflicts with random_passwd.
port string
Binding Port.
randomPasswd boolean
Randomized VNC's password, conflicts with passwd.
listen This property is required. str
Binding address.
type This property is required. str
Generally set to VNC.
keymap str
Keyboard mapping.
passwd str
VNC's password, conflicts with random_passwd.
port str
Binding Port.
random_passwd bool
Randomized VNC's password, conflicts with passwd.
listen This property is required. String
Binding address.
type This property is required. String
Generally set to VNC.
keymap String
Keyboard mapping.
passwd String
VNC's password, conflicts with random_passwd.
port String
Binding Port.
randomPasswd Boolean
Randomized VNC's password, conflicts with passwd.

TemplateNic
, TemplateNicArgs

Dns string
Gateway string
Ip string
IP of the virtual machine on this network.
Mac string
MAC of the virtual machine on this network.
Method string
Model string
Nic model driver. Example: virtio.
Network string
NetworkId double
ID of the virtual network to attach to the virtual machine.
NetworkModeAuto bool
A boolean letting the scheduler pick the Virtual Networks the VM NICs will be attached to.
PhysicalDevice string
Physical device hosting the virtual network.
SchedRank string

Arithmetic expression to sort the suitable Virtual Networks for this NIC, when network_mode_auto is true.

Minimum 1 item. Maximum 8 items.

SchedRequirements string
A boolean expression to select virtual networks (evaluates to true) to attach the NIC, when network_mode_auto is true.
SecurityGroups List<double>
List of security group IDs to use on the virtual network.
VirtioQueues string
Only if model is virtio
Dns string
Gateway string
Ip string
IP of the virtual machine on this network.
Mac string
MAC of the virtual machine on this network.
Method string
Model string
Nic model driver. Example: virtio.
Network string
NetworkId float64
ID of the virtual network to attach to the virtual machine.
NetworkModeAuto bool
A boolean letting the scheduler pick the Virtual Networks the VM NICs will be attached to.
PhysicalDevice string
Physical device hosting the virtual network.
SchedRank string

Arithmetic expression to sort the suitable Virtual Networks for this NIC, when network_mode_auto is true.

Minimum 1 item. Maximum 8 items.

SchedRequirements string
A boolean expression to select virtual networks (evaluates to true) to attach the NIC, when network_mode_auto is true.
SecurityGroups []float64
List of security group IDs to use on the virtual network.
VirtioQueues string
Only if model is virtio
dns String
gateway String
ip String
IP of the virtual machine on this network.
mac String
MAC of the virtual machine on this network.
method String
model String
Nic model driver. Example: virtio.
network String
networkId Double
ID of the virtual network to attach to the virtual machine.
networkModeAuto Boolean
A boolean letting the scheduler pick the Virtual Networks the VM NICs will be attached to.
physicalDevice String
Physical device hosting the virtual network.
schedRank String

Arithmetic expression to sort the suitable Virtual Networks for this NIC, when network_mode_auto is true.

Minimum 1 item. Maximum 8 items.

schedRequirements String
A boolean expression to select virtual networks (evaluates to true) to attach the NIC, when network_mode_auto is true.
securityGroups List<Double>
List of security group IDs to use on the virtual network.
virtioQueues String
Only if model is virtio
dns string
gateway string
ip string
IP of the virtual machine on this network.
mac string
MAC of the virtual machine on this network.
method string
model string
Nic model driver. Example: virtio.
network string
networkId number
ID of the virtual network to attach to the virtual machine.
networkModeAuto boolean
A boolean letting the scheduler pick the Virtual Networks the VM NICs will be attached to.
physicalDevice string
Physical device hosting the virtual network.
schedRank string

Arithmetic expression to sort the suitable Virtual Networks for this NIC, when network_mode_auto is true.

Minimum 1 item. Maximum 8 items.

schedRequirements string
A boolean expression to select virtual networks (evaluates to true) to attach the NIC, when network_mode_auto is true.
securityGroups number[]
List of security group IDs to use on the virtual network.
virtioQueues string
Only if model is virtio
dns str
gateway str
ip str
IP of the virtual machine on this network.
mac str
MAC of the virtual machine on this network.
method str
model str
Nic model driver. Example: virtio.
network str
network_id float
ID of the virtual network to attach to the virtual machine.
network_mode_auto bool
A boolean letting the scheduler pick the Virtual Networks the VM NICs will be attached to.
physical_device str
Physical device hosting the virtual network.
sched_rank str

Arithmetic expression to sort the suitable Virtual Networks for this NIC, when network_mode_auto is true.

Minimum 1 item. Maximum 8 items.

sched_requirements str
A boolean expression to select virtual networks (evaluates to true) to attach the NIC, when network_mode_auto is true.
security_groups Sequence[float]
List of security group IDs to use on the virtual network.
virtio_queues str
Only if model is virtio
dns String
gateway String
ip String
IP of the virtual machine on this network.
mac String
MAC of the virtual machine on this network.
method String
model String
Nic model driver. Example: virtio.
network String
networkId Number
ID of the virtual network to attach to the virtual machine.
networkModeAuto Boolean
A boolean letting the scheduler pick the Virtual Networks the VM NICs will be attached to.
physicalDevice String
Physical device hosting the virtual network.
schedRank String

Arithmetic expression to sort the suitable Virtual Networks for this NIC, when network_mode_auto is true.

Minimum 1 item. Maximum 8 items.

schedRequirements String
A boolean expression to select virtual networks (evaluates to true) to attach the NIC, when network_mode_auto is true.
securityGroups List<Number>
List of security group IDs to use on the virtual network.
virtioQueues String
Only if model is virtio

TemplateOs
, TemplateOsArgs

Arch This property is required. string
Hardware architecture of the Virtual machine. Must fit the host architecture.
Boot This property is required. string
OS disk to use to boot on.
Arch This property is required. string
Hardware architecture of the Virtual machine. Must fit the host architecture.
Boot This property is required. string
OS disk to use to boot on.
arch This property is required. String
Hardware architecture of the Virtual machine. Must fit the host architecture.
boot This property is required. String
OS disk to use to boot on.
arch This property is required. string
Hardware architecture of the Virtual machine. Must fit the host architecture.
boot This property is required. string
OS disk to use to boot on.
arch This property is required. str
Hardware architecture of the Virtual machine. Must fit the host architecture.
boot This property is required. str
OS disk to use to boot on.
arch This property is required. String
Hardware architecture of the Virtual machine. Must fit the host architecture.
boot This property is required. String
OS disk to use to boot on.

TemplateRaw
, TemplateRawArgs

Data This property is required. string
Raw data to pass to the hypervisor.
Type This property is required. string
Hypervisor. Supported values: kvm, lxd, vmware.
Data This property is required. string
Raw data to pass to the hypervisor.
Type This property is required. string
Hypervisor. Supported values: kvm, lxd, vmware.
data This property is required. String
Raw data to pass to the hypervisor.
type This property is required. String
Hypervisor. Supported values: kvm, lxd, vmware.
data This property is required. string
Raw data to pass to the hypervisor.
type This property is required. string
Hypervisor. Supported values: kvm, lxd, vmware.
data This property is required. str
Raw data to pass to the hypervisor.
type This property is required. str
Hypervisor. Supported values: kvm, lxd, vmware.
data This property is required. String
Raw data to pass to the hypervisor.
type This property is required. String
Hypervisor. Supported values: kvm, lxd, vmware.

TemplateTemplateSection
, TemplateTemplateSectionArgs

Name This property is required. string
The vector name.
Elements Dictionary<string, string>
Collection of custom tags.
Name This property is required. string
The vector name.
Elements map[string]string
Collection of custom tags.
name This property is required. String
The vector name.
elements Map<String,String>
Collection of custom tags.
name This property is required. string
The vector name.
elements {[key: string]: string}
Collection of custom tags.
name This property is required. str
The vector name.
elements Mapping[str, str]
Collection of custom tags.
name This property is required. String
The vector name.
elements Map<String>
Collection of custom tags.

TemplateVmgroup
, TemplateVmgroupArgs

Role This property is required. string
role of the VM group to use.
VmgroupId This property is required. double
ID of the VM group to use.
Role This property is required. string
role of the VM group to use.
VmgroupId This property is required. float64
ID of the VM group to use.
role This property is required. String
role of the VM group to use.
vmgroupId This property is required. Double
ID of the VM group to use.
role This property is required. string
role of the VM group to use.
vmgroupId This property is required. number
ID of the VM group to use.
role This property is required. str
role of the VM group to use.
vmgroup_id This property is required. float
ID of the VM group to use.
role This property is required. String
role of the VM group to use.
vmgroupId This property is required. Number
ID of the VM group to use.

Import

opennebula.Template can be imported using its ID:

terraform import opennebula_template.example 123
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
opennebula opennebula/terraform-provider-opennebula
License
Notes
This Pulumi package is based on the opennebula Terraform Provider.