hpegl.MetalHost
Explore with Pulumi AI
Provides Host resource. This allows Metal Host creation, deletion and update.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as hpegl from "@pulumi/hpegl";
const config = new pulumi.Config();
const location = config.get("location") || "USA:Central:AFCDCC1";
const hostActionAsync = config.getBoolean("hostActionAsync") || true;
const iscsiVolume = new hpegl.MetalVolume("iscsiVolume", {
    size: 5,
    shareable: true,
    flavor: "Fast",
    location: location,
    description: "Terraform shareable volume",
});
// Example of Host creation with implicit dependencies
const newssh1 = new hpegl.MetalSshKey("newssh1", {publicKey: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCv03o//GEQ9/6eI1qZleyBbSndg0n5AkcKVnf5D4fEjwkWrtSIJEnROqJddEAn2XYALAk9x1AcB4Nue3q4tDG17VeK3ODo0+9Dx0LYqUTawnFWmo4X80QKr658Jmt7Enmnk5x2IrUDcNwAzALVellkBbwq7QbYUu1swSycNlNhSfGizqo/lQCNIHXyeRQ8oJxOuZkbiturXHZL389blIrTeUo53xmwE1TolVS8QzZRN8ve1GjFvpC5dl6orzi6LXDcrDcbZaxlrW+YQqyaipFRAw1DyTalrfpqxtq/Y9+Elz5xgCnUaepHN6ha/k81wtI2rySHga6pMOcJKlxaRS5OfzdrWh7oi2tEAaiq2y3pTr9hROQ2OGcMNU5gxbVU2ymeXdHVsAHMCmyKvQe0g0/fJzmNA/excogFCWDN7Spy9s2V39IbEKttyXjD/dpave7re9eFzYHA1CBEnNjMuvJj0H4tnpAETdQ6UbnjbE4JYn5eKGvnJ2w1JTfSdMK8nMcxqo4HfHWuLFuntCV9GAlWIVIvJn1pYisY8kEOtN5w6QrLTfsei96/TfssAsfhrDrVtgcgNU3EvZlC6Uaaly7D0ISFeufsxkPswu+jGNUJvGEqDiqvt05lSEZWS5viR/TOROTlicaGN9dhez/fqHcj5cnuoK1pmibK5GT7/Yf1Gw== user1@quattronetworks.com"});
let terraHost: hpegl.MetalHost | undefined;
if (1 == true) {
    terraHost = new hpegl.MetalHost("terraHost", {
        image: "ubuntu@18.04-20201102",
        machineSize: "A2atpq",
        sshes: [newssh1.metalSshKeyId],
        networks: [
            "Public",
            "Storage",
        ],
        networkRoute: "Public",
        location: location,
        description: "Hello from Terraform",
        volumeAttachments: [iscsiVolume.metalVolumeId],
        hostActionAsync: hostActionAsync,
    });
}
//# uncomment below to override the 60m timeouts
//# see https://developer.hashicorp.com/terraform/plugin/sdkv2/resources/retries-and-customizable-timeouts
// timeouts {
//   create = "90m"
//   update = "5m"
//   delete = "5m"
// }
const newpnet1 = new hpegl.MetalNetwork("newpnet1", {
    description: "New private network 1 description",
    location: location,
    ipPool: {
        name: "npool",
        description: "New IP pool description",
        ipVer: "IPv4",
        baseIp: "10.0.0.0",
        netmask: "/24",
        defaultRoute: "10.0.0.1",
        sources: [{
            baseIp: "10.0.0.3",
            count: 10,
        }],
        dns: ["10.0.0.50"],
        proxy: "https://10.0.0.60",
        noProxy: "10.0.0.5",
        ntps: ["10.0.0.80"],
    },
});
let terraHostNewSsh: hpegl.MetalHost | undefined;
if (1 == true) {
    terraHostNewSsh = new hpegl.MetalHost("terraHostNewSsh", {
        image: "ubuntu@18.04-20201102",
        machineSize: "A2atpq",
        sshes: [newssh1.metalSshKeyId],
        networks: [
            "Public",
            newpnet1.name,
        ],
        networkRoute: "Public",
        networkUntagged: newpnet1.name,
        location: location,
        description: "Hello from Terraform",
        labels: {
            ServiceType: "BMaaS",
        },
        hostActionAsync: hostActionAsync,
    });
}
import pulumi
import pulumi_hpegl as hpegl
config = pulumi.Config()
location = config.get("location")
if location is None:
    location = "USA:Central:AFCDCC1"
host_action_async = config.get_bool("hostActionAsync")
if host_action_async is None:
    host_action_async = True
iscsi_volume = hpegl.MetalVolume("iscsiVolume",
    size=5,
    shareable=True,
    flavor="Fast",
    location=location,
    description="Terraform shareable volume")
# Example of Host creation with implicit dependencies
newssh1 = hpegl.MetalSshKey("newssh1", public_key="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCv03o//GEQ9/6eI1qZleyBbSndg0n5AkcKVnf5D4fEjwkWrtSIJEnROqJddEAn2XYALAk9x1AcB4Nue3q4tDG17VeK3ODo0+9Dx0LYqUTawnFWmo4X80QKr658Jmt7Enmnk5x2IrUDcNwAzALVellkBbwq7QbYUu1swSycNlNhSfGizqo/lQCNIHXyeRQ8oJxOuZkbiturXHZL389blIrTeUo53xmwE1TolVS8QzZRN8ve1GjFvpC5dl6orzi6LXDcrDcbZaxlrW+YQqyaipFRAw1DyTalrfpqxtq/Y9+Elz5xgCnUaepHN6ha/k81wtI2rySHga6pMOcJKlxaRS5OfzdrWh7oi2tEAaiq2y3pTr9hROQ2OGcMNU5gxbVU2ymeXdHVsAHMCmyKvQe0g0/fJzmNA/excogFCWDN7Spy9s2V39IbEKttyXjD/dpave7re9eFzYHA1CBEnNjMuvJj0H4tnpAETdQ6UbnjbE4JYn5eKGvnJ2w1JTfSdMK8nMcxqo4HfHWuLFuntCV9GAlWIVIvJn1pYisY8kEOtN5w6QrLTfsei96/TfssAsfhrDrVtgcgNU3EvZlC6Uaaly7D0ISFeufsxkPswu+jGNUJvGEqDiqvt05lSEZWS5viR/TOROTlicaGN9dhez/fqHcj5cnuoK1pmibK5GT7/Yf1Gw== user1@quattronetworks.com")
terra_host = None
if 1 == True:
    terra_host = hpegl.MetalHost("terraHost",
        image="ubuntu@18.04-20201102",
        machine_size="A2atpq",
        sshes=[newssh1.metal_ssh_key_id],
        networks=[
            "Public",
            "Storage",
        ],
        network_route="Public",
        location=location,
        description="Hello from Terraform",
        volume_attachments=[iscsi_volume.metal_volume_id],
        host_action_async=host_action_async)
## uncomment below to override the 60m timeouts
## see https://developer.hashicorp.com/terraform/plugin/sdkv2/resources/retries-and-customizable-timeouts
# timeouts {
#   create = "90m"
#   update = "5m"
#   delete = "5m"
# }
newpnet1 = hpegl.MetalNetwork("newpnet1",
    description="New private network 1 description",
    location=location,
    ip_pool={
        "name": "npool",
        "description": "New IP pool description",
        "ip_ver": "IPv4",
        "base_ip": "10.0.0.0",
        "netmask": "/24",
        "default_route": "10.0.0.1",
        "sources": [{
            "base_ip": "10.0.0.3",
            "count": 10,
        }],
        "dns": ["10.0.0.50"],
        "proxy": "https://10.0.0.60",
        "no_proxy": "10.0.0.5",
        "ntps": ["10.0.0.80"],
    })
terra_host_new_ssh = None
if 1 == True:
    terra_host_new_ssh = hpegl.MetalHost("terraHostNewSsh",
        image="ubuntu@18.04-20201102",
        machine_size="A2atpq",
        sshes=[newssh1.metal_ssh_key_id],
        networks=[
            "Public",
            newpnet1.name,
        ],
        network_route="Public",
        network_untagged=newpnet1.name,
        location=location,
        description="Hello from Terraform",
        labels={
            "ServiceType": "BMaaS",
        },
        host_action_async=host_action_async)
package main
import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/hpegl/hpegl"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		location := "USA:Central:AFCDCC1"
		if param := cfg.Get("location"); param != "" {
			location = param
		}
		hostActionAsync := true
		if param := cfg.GetBool("hostActionAsync"); param {
			hostActionAsync = param
		}
		iscsiVolume, err := hpegl.NewMetalVolume(ctx, "iscsiVolume", &hpegl.MetalVolumeArgs{
			Size:        pulumi.Float64(5),
			Shareable:   pulumi.Bool(true),
			Flavor:      pulumi.String("Fast"),
			Location:    pulumi.String(location),
			Description: pulumi.String("Terraform shareable volume"),
		})
		if err != nil {
			return err
		}
		// Example of Host creation with implicit dependencies
		newssh1, err := hpegl.NewMetalSshKey(ctx, "newssh1", &hpegl.MetalSshKeyArgs{
			PublicKey: pulumi.String("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCv03o//GEQ9/6eI1qZleyBbSndg0n5AkcKVnf5D4fEjwkWrtSIJEnROqJddEAn2XYALAk9x1AcB4Nue3q4tDG17VeK3ODo0+9Dx0LYqUTawnFWmo4X80QKr658Jmt7Enmnk5x2IrUDcNwAzALVellkBbwq7QbYUu1swSycNlNhSfGizqo/lQCNIHXyeRQ8oJxOuZkbiturXHZL389blIrTeUo53xmwE1TolVS8QzZRN8ve1GjFvpC5dl6orzi6LXDcrDcbZaxlrW+YQqyaipFRAw1DyTalrfpqxtq/Y9+Elz5xgCnUaepHN6ha/k81wtI2rySHga6pMOcJKlxaRS5OfzdrWh7oi2tEAaiq2y3pTr9hROQ2OGcMNU5gxbVU2ymeXdHVsAHMCmyKvQe0g0/fJzmNA/excogFCWDN7Spy9s2V39IbEKttyXjD/dpave7re9eFzYHA1CBEnNjMuvJj0H4tnpAETdQ6UbnjbE4JYn5eKGvnJ2w1JTfSdMK8nMcxqo4HfHWuLFuntCV9GAlWIVIvJn1pYisY8kEOtN5w6QrLTfsei96/TfssAsfhrDrVtgcgNU3EvZlC6Uaaly7D0ISFeufsxkPswu+jGNUJvGEqDiqvt05lSEZWS5viR/TOROTlicaGN9dhez/fqHcj5cnuoK1pmibK5GT7/Yf1Gw== user1@quattronetworks.com"),
		})
		if err != nil {
			return err
		}
		var terraHost []*hpegl.MetalHost
		for index := 0; index < 1 == true; index++ {
			key0 := index
			_ := index
			__res, err := hpegl.NewMetalHost(ctx, fmt.Sprintf("terraHost-%v", key0), &hpegl.MetalHostArgs{
				Image:       pulumi.String("ubuntu@18.04-20201102"),
				MachineSize: pulumi.String("A2atpq"),
				Sshes: pulumi.StringArray{
					newssh1.MetalSshKeyId,
				},
				Networks: pulumi.StringArray{
					pulumi.String("Public"),
					pulumi.String("Storage"),
				},
				NetworkRoute: pulumi.String("Public"),
				Location:     pulumi.String(location),
				Description:  pulumi.String("Hello from Terraform"),
				VolumeAttachments: pulumi.StringArray{
					iscsiVolume.MetalVolumeId,
				},
				HostActionAsync: pulumi.Bool(hostActionAsync),
			})
			if err != nil {
				return err
			}
			terraHost = append(terraHost, __res)
		}
		newpnet1, err := hpegl.NewMetalNetwork(ctx, "newpnet1", &hpegl.MetalNetworkArgs{
			Description: pulumi.String("New private network 1 description"),
			Location:    pulumi.String(location),
			IpPool: &hpegl.MetalNetworkIpPoolArgs{
				Name:         pulumi.String("npool"),
				Description:  pulumi.String("New IP pool description"),
				IpVer:        pulumi.String("IPv4"),
				BaseIp:       pulumi.String("10.0.0.0"),
				Netmask:      pulumi.String("/24"),
				DefaultRoute: pulumi.String("10.0.0.1"),
				Sources: hpegl.MetalNetworkIpPoolSourceArray{
					&hpegl.MetalNetworkIpPoolSourceArgs{
						BaseIp: pulumi.String("10.0.0.3"),
						Count:  pulumi.Float64(10),
					},
				},
				Dns: pulumi.StringArray{
					pulumi.String("10.0.0.50"),
				},
				Proxy:   pulumi.String("https://10.0.0.60"),
				NoProxy: pulumi.String("10.0.0.5"),
				Ntps: pulumi.StringArray{
					pulumi.String("10.0.0.80"),
				},
			},
		})
		if err != nil {
			return err
		}
		var terraHostNewSsh []*hpegl.MetalHost
		for index := 0; index < 1 == true; index++ {
			key0 := index
			_ := index
			__res, err := hpegl.NewMetalHost(ctx, fmt.Sprintf("terraHostNewSsh-%v", key0), &hpegl.MetalHostArgs{
				Image:       pulumi.String("ubuntu@18.04-20201102"),
				MachineSize: pulumi.String("A2atpq"),
				Sshes: pulumi.StringArray{
					newssh1.MetalSshKeyId,
				},
				Networks: pulumi.StringArray{
					pulumi.String("Public"),
					newpnet1.Name,
				},
				NetworkRoute:    pulumi.String("Public"),
				NetworkUntagged: newpnet1.Name,
				Location:        pulumi.String(location),
				Description:     pulumi.String("Hello from Terraform"),
				Labels: pulumi.StringMap{
					"ServiceType": pulumi.String("BMaaS"),
				},
				HostActionAsync: pulumi.Bool(hostActionAsync),
			})
			if err != nil {
				return err
			}
			terraHostNewSsh = append(terraHostNewSsh, __res)
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Hpegl = Pulumi.Hpegl;
return await Deployment.RunAsync(() => 
{
    var config = new Config();
    var location = config.Get("location") ?? "USA:Central:AFCDCC1";
    var hostActionAsync = config.GetBoolean("hostActionAsync") ?? true;
    var iscsiVolume = new Hpegl.MetalVolume("iscsiVolume", new()
    {
        Size = 5,
        Shareable = true,
        Flavor = "Fast",
        Location = location,
        Description = "Terraform shareable volume",
    });
    // Example of Host creation with implicit dependencies
    var newssh1 = new Hpegl.MetalSshKey("newssh1", new()
    {
        PublicKey = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCv03o//GEQ9/6eI1qZleyBbSndg0n5AkcKVnf5D4fEjwkWrtSIJEnROqJddEAn2XYALAk9x1AcB4Nue3q4tDG17VeK3ODo0+9Dx0LYqUTawnFWmo4X80QKr658Jmt7Enmnk5x2IrUDcNwAzALVellkBbwq7QbYUu1swSycNlNhSfGizqo/lQCNIHXyeRQ8oJxOuZkbiturXHZL389blIrTeUo53xmwE1TolVS8QzZRN8ve1GjFvpC5dl6orzi6LXDcrDcbZaxlrW+YQqyaipFRAw1DyTalrfpqxtq/Y9+Elz5xgCnUaepHN6ha/k81wtI2rySHga6pMOcJKlxaRS5OfzdrWh7oi2tEAaiq2y3pTr9hROQ2OGcMNU5gxbVU2ymeXdHVsAHMCmyKvQe0g0/fJzmNA/excogFCWDN7Spy9s2V39IbEKttyXjD/dpave7re9eFzYHA1CBEnNjMuvJj0H4tnpAETdQ6UbnjbE4JYn5eKGvnJ2w1JTfSdMK8nMcxqo4HfHWuLFuntCV9GAlWIVIvJn1pYisY8kEOtN5w6QrLTfsei96/TfssAsfhrDrVtgcgNU3EvZlC6Uaaly7D0ISFeufsxkPswu+jGNUJvGEqDiqvt05lSEZWS5viR/TOROTlicaGN9dhez/fqHcj5cnuoK1pmibK5GT7/Yf1Gw== user1@quattronetworks.com",
    });
    var terraHost = new List<Hpegl.MetalHost>();
    for (var rangeIndex = 0; rangeIndex < (1 == true); rangeIndex++)
    {
        var range = new { Value = rangeIndex };
        terraHost.Add(new Hpegl.MetalHost($"terraHost-{range.Value}", new()
        {
            Image = "ubuntu@18.04-20201102",
            MachineSize = "A2atpq",
            Sshes = new[]
            {
                newssh1.MetalSshKeyId,
            },
            Networks = new[]
            {
                "Public",
                "Storage",
            },
            NetworkRoute = "Public",
            Location = location,
            Description = "Hello from Terraform",
            VolumeAttachments = new[]
            {
                iscsiVolume.MetalVolumeId,
            },
            HostActionAsync = hostActionAsync,
        }));
    }
    //# uncomment below to override the 60m timeouts
    //# see https://developer.hashicorp.com/terraform/plugin/sdkv2/resources/retries-and-customizable-timeouts
    // timeouts {
    //   create = "90m"
    //   update = "5m"
    //   delete = "5m"
    // }
    var newpnet1 = new Hpegl.MetalNetwork("newpnet1", new()
    {
        Description = "New private network 1 description",
        Location = location,
        IpPool = new Hpegl.Inputs.MetalNetworkIpPoolArgs
        {
            Name = "npool",
            Description = "New IP pool description",
            IpVer = "IPv4",
            BaseIp = "10.0.0.0",
            Netmask = "/24",
            DefaultRoute = "10.0.0.1",
            Sources = new[]
            {
                new Hpegl.Inputs.MetalNetworkIpPoolSourceArgs
                {
                    BaseIp = "10.0.0.3",
                    Count = 10,
                },
            },
            Dns = new[]
            {
                "10.0.0.50",
            },
            Proxy = "https://10.0.0.60",
            NoProxy = "10.0.0.5",
            Ntps = new[]
            {
                "10.0.0.80",
            },
        },
    });
    var terraHostNewSsh = new List<Hpegl.MetalHost>();
    for (var rangeIndex = 0; rangeIndex < (1 == true); rangeIndex++)
    {
        var range = new { Value = rangeIndex };
        terraHostNewSsh.Add(new Hpegl.MetalHost($"terraHostNewSsh-{range.Value}", new()
        {
            Image = "ubuntu@18.04-20201102",
            MachineSize = "A2atpq",
            Sshes = new[]
            {
                newssh1.MetalSshKeyId,
            },
            Networks = new[]
            {
                "Public",
                newpnet1.Name,
            },
            NetworkRoute = "Public",
            NetworkUntagged = newpnet1.Name,
            Location = location,
            Description = "Hello from Terraform",
            Labels = 
            {
                { "ServiceType", "BMaaS" },
            },
            HostActionAsync = hostActionAsync,
        }));
    }
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.hpegl.MetalVolume;
import com.pulumi.hpegl.MetalVolumeArgs;
import com.pulumi.hpegl.MetalSshKey;
import com.pulumi.hpegl.MetalSshKeyArgs;
import com.pulumi.hpegl.MetalHost;
import com.pulumi.hpegl.MetalHostArgs;
import com.pulumi.hpegl.MetalNetwork;
import com.pulumi.hpegl.MetalNetworkArgs;
import com.pulumi.hpegl.inputs.MetalNetworkIpPoolArgs;
import com.pulumi.codegen.internal.KeyedValue;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var config = ctx.config();
        final var location = config.get("location").orElse("USA:Central:AFCDCC1");
        final var hostActionAsync = config.get("hostActionAsync").orElse(true);
        var iscsiVolume = new MetalVolume("iscsiVolume", MetalVolumeArgs.builder()
            .size(5)
            .shareable(true)
            .flavor("Fast")
            .location(location)
            .description("Terraform shareable volume")
            .build());
        // Example of Host creation with implicit dependencies
        var newssh1 = new MetalSshKey("newssh1", MetalSshKeyArgs.builder()
            .publicKey("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCv03o//GEQ9/6eI1qZleyBbSndg0n5AkcKVnf5D4fEjwkWrtSIJEnROqJddEAn2XYALAk9x1AcB4Nue3q4tDG17VeK3ODo0+9Dx0LYqUTawnFWmo4X80QKr658Jmt7Enmnk5x2IrUDcNwAzALVellkBbwq7QbYUu1swSycNlNhSfGizqo/lQCNIHXyeRQ8oJxOuZkbiturXHZL389blIrTeUo53xmwE1TolVS8QzZRN8ve1GjFvpC5dl6orzi6LXDcrDcbZaxlrW+YQqyaipFRAw1DyTalrfpqxtq/Y9+Elz5xgCnUaepHN6ha/k81wtI2rySHga6pMOcJKlxaRS5OfzdrWh7oi2tEAaiq2y3pTr9hROQ2OGcMNU5gxbVU2ymeXdHVsAHMCmyKvQe0g0/fJzmNA/excogFCWDN7Spy9s2V39IbEKttyXjD/dpave7re9eFzYHA1CBEnNjMuvJj0H4tnpAETdQ6UbnjbE4JYn5eKGvnJ2w1JTfSdMK8nMcxqo4HfHWuLFuntCV9GAlWIVIvJn1pYisY8kEOtN5w6QrLTfsei96/TfssAsfhrDrVtgcgNU3EvZlC6Uaaly7D0ISFeufsxkPswu+jGNUJvGEqDiqvt05lSEZWS5viR/TOROTlicaGN9dhez/fqHcj5cnuoK1pmibK5GT7/Yf1Gw== user1@quattronetworks.com")
            .build());
        for (var i = 0; i < (1 == true); i++) {
            new MetalHost("terraHost-" + i, MetalHostArgs.builder()
                .image("ubuntu@18.04-20201102")
                .machineSize("A2atpq")
                .sshes(newssh1.metalSshKeyId())
                .networks(                
                    "Public",
                    "Storage")
                .networkRoute("Public")
                .location(location)
                .description("Hello from Terraform")
                .volumeAttachments(iscsiVolume.metalVolumeId())
                .hostActionAsync(hostActionAsync)
                .build());
        
}
        //# uncomment below to override the 60m timeouts
        //# see https://developer.hashicorp.com/terraform/plugin/sdkv2/resources/retries-and-customizable-timeouts
        // timeouts {
        //   create = "90m"
        //   update = "5m"
        //   delete = "5m"
        // }
        var newpnet1 = new MetalNetwork("newpnet1", MetalNetworkArgs.builder()
            .description("New private network 1 description")
            .location(location)
            .ipPool(MetalNetworkIpPoolArgs.builder()
                .name("npool")
                .description("New IP pool description")
                .ipVer("IPv4")
                .baseIp("10.0.0.0")
                .netmask("/24")
                .defaultRoute("10.0.0.1")
                .sources(MetalNetworkIpPoolSourceArgs.builder()
                    .baseIp("10.0.0.3")
                    .count(10)
                    .build())
                .dns("10.0.0.50")
                .proxy("https://10.0.0.60")
                .noProxy("10.0.0.5")
                .ntps("10.0.0.80")
                .build())
            .build());
        for (var i = 0; i < (1 == true); i++) {
            new MetalHost("terraHostNewSsh-" + i, MetalHostArgs.builder()
                .image("ubuntu@18.04-20201102")
                .machineSize("A2atpq")
                .sshes(newssh1.metalSshKeyId())
                .networks(                
                    "Public",
                    newpnet1.name())
                .networkRoute("Public")
                .networkUntagged(newpnet1.name())
                .location(location)
                .description("Hello from Terraform")
                .labels(Map.of("ServiceType", "BMaaS"))
                .hostActionAsync(hostActionAsync)
                .build());
        
}
    }
}
configuration:
  location:
    type: string
    default: USA:Central:AFCDCC1
  hostActionAsync:
    type: bool
    default: true
resources:
  iscsiVolume:
    type: hpegl:MetalVolume
    properties:
      size: 5
      shareable: true
      flavor: Fast
      location: ${location}
      description: Terraform shareable volume
  terraHost:
    type: hpegl:MetalHost
    properties:
      image: ubuntu@18.04-20201102
      machineSize: A2atpq
      sshes:
        - ${newssh1.metalSshKeyId}
      networks:
        - Public
        - Storage
      networkRoute: Public
      location: ${location}
      description: Hello from Terraform
      volumeAttachments:
        - ${iscsiVolume.metalVolumeId}
      hostActionAsync: ${hostActionAsync}
    options: {}
  # Example of Host creation with implicit dependencies
  newssh1:
    type: hpegl:MetalSshKey
    properties:
      publicKey: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCv03o//GEQ9/6eI1qZleyBbSndg0n5AkcKVnf5D4fEjwkWrtSIJEnROqJddEAn2XYALAk9x1AcB4Nue3q4tDG17VeK3ODo0+9Dx0LYqUTawnFWmo4X80QKr658Jmt7Enmnk5x2IrUDcNwAzALVellkBbwq7QbYUu1swSycNlNhSfGizqo/lQCNIHXyeRQ8oJxOuZkbiturXHZL389blIrTeUo53xmwE1TolVS8QzZRN8ve1GjFvpC5dl6orzi6LXDcrDcbZaxlrW+YQqyaipFRAw1DyTalrfpqxtq/Y9+Elz5xgCnUaepHN6ha/k81wtI2rySHga6pMOcJKlxaRS5OfzdrWh7oi2tEAaiq2y3pTr9hROQ2OGcMNU5gxbVU2ymeXdHVsAHMCmyKvQe0g0/fJzmNA/excogFCWDN7Spy9s2V39IbEKttyXjD/dpave7re9eFzYHA1CBEnNjMuvJj0H4tnpAETdQ6UbnjbE4JYn5eKGvnJ2w1JTfSdMK8nMcxqo4HfHWuLFuntCV9GAlWIVIvJn1pYisY8kEOtN5w6QrLTfsei96/TfssAsfhrDrVtgcgNU3EvZlC6Uaaly7D0ISFeufsxkPswu+jGNUJvGEqDiqvt05lSEZWS5viR/TOROTlicaGN9dhez/fqHcj5cnuoK1pmibK5GT7/Yf1Gw== user1@quattronetworks.com
  newpnet1:
    type: hpegl:MetalNetwork
    properties:
      description: New private network 1 description
      location: ${location}
      ipPool:
        name: npool
        description: New IP pool description
        ipVer: IPv4
        baseIp: 10.0.0.0
        netmask: /24
        defaultRoute: 10.0.0.1
        sources:
          - baseIp: 10.0.0.3
            count: 10
        dns:
          - 10.0.0.50
        proxy: https://10.0.0.60
        noProxy: 10.0.0.5
        ntps:
          - 10.0.0.80
  terraHostNewSsh:
    type: hpegl:MetalHost
    properties:
      image: ubuntu@18.04-20201102
      machineSize: A2atpq
      sshes:
        - ${newssh1.metalSshKeyId}
      networks:
        - Public
        - ${newpnet1.name}
      networkRoute: Public
      networkUntagged: ${newpnet1.name}
      location: ${location}
      description: Hello from Terraform
      labels:
        ServiceType: BMaaS
      hostActionAsync: ${hostActionAsync}
    options: {}
Create MetalHost Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new MetalHost(name: string, args: MetalHostArgs, opts?: CustomResourceOptions);@overload
def MetalHost(resource_name: str,
              args: MetalHostArgs,
              opts: Optional[ResourceOptions] = None)
@overload
def MetalHost(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              location: Optional[str] = None,
              sshes: Optional[Sequence[str]] = None,
              networks: Optional[Sequence[str]] = None,
              image: Optional[str] = None,
              machine_size: Optional[str] = None,
              initiator_name: Optional[str] = None,
              labels: Optional[Mapping[str, str]] = None,
              allocated_ips: Optional[Sequence[str]] = None,
              metal_host_id: Optional[str] = None,
              name: Optional[str] = None,
              network_route: Optional[str] = None,
              network_untagged: Optional[str] = None,
              host_action_async: Optional[bool] = None,
              description: Optional[str] = None,
              timeouts: Optional[MetalHostTimeoutsArgs] = None,
              user_data: Optional[str] = None,
              volume_attachments: Optional[Sequence[str]] = None,
              volume_infos: Optional[Sequence[MetalHostVolumeInfoArgs]] = None)func NewMetalHost(ctx *Context, name string, args MetalHostArgs, opts ...ResourceOption) (*MetalHost, error)public MetalHost(string name, MetalHostArgs args, CustomResourceOptions? opts = null)
public MetalHost(String name, MetalHostArgs args)
public MetalHost(String name, MetalHostArgs args, CustomResourceOptions options)
type: hpegl:MetalHost
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args MetalHostArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args MetalHostArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args MetalHostArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args MetalHostArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args MetalHostArgs
- 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 metalHostResource = new Hpegl.MetalHost("metalHostResource", new()
{
    Location = "string",
    Sshes = new[]
    {
        "string",
    },
    Networks = new[]
    {
        "string",
    },
    Image = "string",
    MachineSize = "string",
    InitiatorName = "string",
    Labels = 
    {
        { "string", "string" },
    },
    AllocatedIps = new[]
    {
        "string",
    },
    MetalHostId = "string",
    Name = "string",
    NetworkRoute = "string",
    NetworkUntagged = "string",
    HostActionAsync = false,
    Description = "string",
    Timeouts = new Hpegl.Inputs.MetalHostTimeoutsArgs
    {
        Create = "string",
        Delete = "string",
        Update = "string",
    },
    UserData = "string",
    VolumeAttachments = new[]
    {
        "string",
    },
    VolumeInfos = new[]
    {
        new Hpegl.Inputs.MetalHostVolumeInfoArgs
        {
            Name = "string",
            DiscoveryIp = "string",
            Id = "string",
            TargetIqn = "string",
        },
    },
});
example, err := hpegl.NewMetalHost(ctx, "metalHostResource", &hpegl.MetalHostArgs{
	Location: pulumi.String("string"),
	Sshes: pulumi.StringArray{
		pulumi.String("string"),
	},
	Networks: pulumi.StringArray{
		pulumi.String("string"),
	},
	Image:         pulumi.String("string"),
	MachineSize:   pulumi.String("string"),
	InitiatorName: pulumi.String("string"),
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	AllocatedIps: pulumi.StringArray{
		pulumi.String("string"),
	},
	MetalHostId:     pulumi.String("string"),
	Name:            pulumi.String("string"),
	NetworkRoute:    pulumi.String("string"),
	NetworkUntagged: pulumi.String("string"),
	HostActionAsync: pulumi.Bool(false),
	Description:     pulumi.String("string"),
	Timeouts: &hpegl.MetalHostTimeoutsArgs{
		Create: pulumi.String("string"),
		Delete: pulumi.String("string"),
		Update: pulumi.String("string"),
	},
	UserData: pulumi.String("string"),
	VolumeAttachments: pulumi.StringArray{
		pulumi.String("string"),
	},
	VolumeInfos: hpegl.MetalHostVolumeInfoArray{
		&hpegl.MetalHostVolumeInfoArgs{
			Name:        pulumi.String("string"),
			DiscoveryIp: pulumi.String("string"),
			Id:          pulumi.String("string"),
			TargetIqn:   pulumi.String("string"),
		},
	},
})
var metalHostResource = new MetalHost("metalHostResource", MetalHostArgs.builder()
    .location("string")
    .sshes("string")
    .networks("string")
    .image("string")
    .machineSize("string")
    .initiatorName("string")
    .labels(Map.of("string", "string"))
    .allocatedIps("string")
    .metalHostId("string")
    .name("string")
    .networkRoute("string")
    .networkUntagged("string")
    .hostActionAsync(false)
    .description("string")
    .timeouts(MetalHostTimeoutsArgs.builder()
        .create("string")
        .delete("string")
        .update("string")
        .build())
    .userData("string")
    .volumeAttachments("string")
    .volumeInfos(MetalHostVolumeInfoArgs.builder()
        .name("string")
        .discoveryIp("string")
        .id("string")
        .targetIqn("string")
        .build())
    .build());
metal_host_resource = hpegl.MetalHost("metalHostResource",
    location="string",
    sshes=["string"],
    networks=["string"],
    image="string",
    machine_size="string",
    initiator_name="string",
    labels={
        "string": "string",
    },
    allocated_ips=["string"],
    metal_host_id="string",
    name="string",
    network_route="string",
    network_untagged="string",
    host_action_async=False,
    description="string",
    timeouts={
        "create": "string",
        "delete": "string",
        "update": "string",
    },
    user_data="string",
    volume_attachments=["string"],
    volume_infos=[{
        "name": "string",
        "discovery_ip": "string",
        "id": "string",
        "target_iqn": "string",
    }])
const metalHostResource = new hpegl.MetalHost("metalHostResource", {
    location: "string",
    sshes: ["string"],
    networks: ["string"],
    image: "string",
    machineSize: "string",
    initiatorName: "string",
    labels: {
        string: "string",
    },
    allocatedIps: ["string"],
    metalHostId: "string",
    name: "string",
    networkRoute: "string",
    networkUntagged: "string",
    hostActionAsync: false,
    description: "string",
    timeouts: {
        create: "string",
        "delete": "string",
        update: "string",
    },
    userData: "string",
    volumeAttachments: ["string"],
    volumeInfos: [{
        name: "string",
        discoveryIp: "string",
        id: "string",
        targetIqn: "string",
    }],
});
type: hpegl:MetalHost
properties:
    allocatedIps:
        - string
    description: string
    hostActionAsync: false
    image: string
    initiatorName: string
    labels:
        string: string
    location: string
    machineSize: string
    metalHostId: string
    name: string
    networkRoute: string
    networkUntagged: string
    networks:
        - string
    sshes:
        - string
    timeouts:
        create: string
        delete: string
        update: string
    userData: string
    volumeAttachments:
        - string
    volumeInfos:
        - discoveryIp: string
          id: string
          name: string
          targetIqn: string
MetalHost 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 MetalHost resource accepts the following input properties:
- Image string
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- Location string
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- MachineSize string
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- Networks List<string>
- List of network name e.g. ['Public', 'Private'].
- Sshes List<string>
- A list of SSH keys that will be pushed to the host.
- AllocatedIps List<string>
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- Description string
- A wordy description of the machine and purpose.
- HostAction boolAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- InitiatorName string
- The iSCSI initiator name for this host.
- Labels Dictionary<string, string>
- map of label name to label value for this host
- MetalHost stringId 
- The ID of this resource.
- Name string
- Any friendly name to identify the host that will become the OS hostname in lower case.
- NetworkRoute string
- Network selected for the default route
- NetworkUntagged string
- Untagged network
- Timeouts
MetalHost Timeouts 
- UserData string
- Any yaml compliant string that will be merged into cloud-init for this host.
- VolumeAttachments List<string>
- List of existing volume IDs
- VolumeInfos List<MetalHost Volume Info> 
- Information about volumes attached to this host.
- Image string
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- Location string
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- MachineSize string
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- Networks []string
- List of network name e.g. ['Public', 'Private'].
- Sshes []string
- A list of SSH keys that will be pushed to the host.
- AllocatedIps []string
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- Description string
- A wordy description of the machine and purpose.
- HostAction boolAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- InitiatorName string
- The iSCSI initiator name for this host.
- Labels map[string]string
- map of label name to label value for this host
- MetalHost stringId 
- The ID of this resource.
- Name string
- Any friendly name to identify the host that will become the OS hostname in lower case.
- NetworkRoute string
- Network selected for the default route
- NetworkUntagged string
- Untagged network
- Timeouts
MetalHost Timeouts Args 
- UserData string
- Any yaml compliant string that will be merged into cloud-init for this host.
- VolumeAttachments []string
- List of existing volume IDs
- VolumeInfos []MetalHost Volume Info Args 
- Information about volumes attached to this host.
- image String
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- location String
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- machineSize String
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- networks List<String>
- List of network name e.g. ['Public', 'Private'].
- sshes List<String>
- A list of SSH keys that will be pushed to the host.
- allocatedIps List<String>
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- description String
- A wordy description of the machine and purpose.
- hostAction BooleanAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- initiatorName String
- The iSCSI initiator name for this host.
- labels Map<String,String>
- map of label name to label value for this host
- metalHost StringId 
- The ID of this resource.
- name String
- Any friendly name to identify the host that will become the OS hostname in lower case.
- networkRoute String
- Network selected for the default route
- networkUntagged String
- Untagged network
- timeouts
MetalHost Timeouts 
- userData String
- Any yaml compliant string that will be merged into cloud-init for this host.
- volumeAttachments List<String>
- List of existing volume IDs
- volumeInfos List<MetalHost Volume Info> 
- Information about volumes attached to this host.
- image string
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- location string
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- machineSize string
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- networks string[]
- List of network name e.g. ['Public', 'Private'].
- sshes string[]
- A list of SSH keys that will be pushed to the host.
- allocatedIps string[]
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- description string
- A wordy description of the machine and purpose.
- hostAction booleanAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- initiatorName string
- The iSCSI initiator name for this host.
- labels {[key: string]: string}
- map of label name to label value for this host
- metalHost stringId 
- The ID of this resource.
- name string
- Any friendly name to identify the host that will become the OS hostname in lower case.
- networkRoute string
- Network selected for the default route
- networkUntagged string
- Untagged network
- timeouts
MetalHost Timeouts 
- userData string
- Any yaml compliant string that will be merged into cloud-init for this host.
- volumeAttachments string[]
- List of existing volume IDs
- volumeInfos MetalHost Volume Info[] 
- Information about volumes attached to this host.
- image str
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- location str
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- machine_size str
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- networks Sequence[str]
- List of network name e.g. ['Public', 'Private'].
- sshes Sequence[str]
- A list of SSH keys that will be pushed to the host.
- allocated_ips Sequence[str]
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- description str
- A wordy description of the machine and purpose.
- host_action_ boolasync 
- set true to do host create, update, and delete asynchronously. The default is true.
- initiator_name str
- The iSCSI initiator name for this host.
- labels Mapping[str, str]
- map of label name to label value for this host
- metal_host_ strid 
- The ID of this resource.
- name str
- Any friendly name to identify the host that will become the OS hostname in lower case.
- network_route str
- Network selected for the default route
- network_untagged str
- Untagged network
- timeouts
MetalHost Timeouts Args 
- user_data str
- Any yaml compliant string that will be merged into cloud-init for this host.
- volume_attachments Sequence[str]
- List of existing volume IDs
- volume_infos Sequence[MetalHost Volume Info Args] 
- Information about volumes attached to this host.
- image String
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- location String
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- machineSize String
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- networks List<String>
- List of network name e.g. ['Public', 'Private'].
- sshes List<String>
- A list of SSH keys that will be pushed to the host.
- allocatedIps List<String>
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- description String
- A wordy description of the machine and purpose.
- hostAction BooleanAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- initiatorName String
- The iSCSI initiator name for this host.
- labels Map<String>
- map of label name to label value for this host
- metalHost StringId 
- The ID of this resource.
- name String
- Any friendly name to identify the host that will become the OS hostname in lower case.
- networkRoute String
- Network selected for the default route
- networkUntagged String
- Untagged network
- timeouts Property Map
- userData String
- Any yaml compliant string that will be merged into cloud-init for this host.
- volumeAttachments List<String>
- List of existing volume IDs
- volumeInfos List<Property Map>
- Information about volumes attached to this host.
Outputs
All input properties are implicitly available as output properties. Additionally, the MetalHost resource produces the following output properties:
- ChapSecret string
- The iSCSI CHAP secret for this host.
- ChapUser string
- The iSCSI CHAP name for this host.
- Connections Dictionary<string, string>
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- ConnectionsGateway Dictionary<string, string>
- A map of network connection name to gateway IP address.
- ConnectionsSubnet Dictionary<string, string>
- A map of network connection name to subnet IP address.
- ConnectionsVlan Dictionary<string, double>
- A map of network connection name to VLAN ID.
- Id string
- The provider-assigned unique ID for this managed resource.
- LocationId string
- UUID of the location
- MachineSize stringId 
- Machine size ID
- NetworkIds List<string>
- List of network UUIDs.
- NetworkRoute stringId 
- Network ID of the default route
- NetworkUntagged stringId 
- Untagged network ID
- PortalComm boolOkay 
- The current portal communication state of the host
- PowerState string
- The current power state of the host
- SshIds List<string>
- State string
- The current state of the host
- SubState string
- The current state of the deployment
- SummaryStatus string
- The current health status of the host
- Wwpns List<string>
- FC HBA world wide port names.
- ChapSecret string
- The iSCSI CHAP secret for this host.
- ChapUser string
- The iSCSI CHAP name for this host.
- Connections map[string]string
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- ConnectionsGateway map[string]string
- A map of network connection name to gateway IP address.
- ConnectionsSubnet map[string]string
- A map of network connection name to subnet IP address.
- ConnectionsVlan map[string]float64
- A map of network connection name to VLAN ID.
- Id string
- The provider-assigned unique ID for this managed resource.
- LocationId string
- UUID of the location
- MachineSize stringId 
- Machine size ID
- NetworkIds []string
- List of network UUIDs.
- NetworkRoute stringId 
- Network ID of the default route
- NetworkUntagged stringId 
- Untagged network ID
- PortalComm boolOkay 
- The current portal communication state of the host
- PowerState string
- The current power state of the host
- SshIds []string
- State string
- The current state of the host
- SubState string
- The current state of the deployment
- SummaryStatus string
- The current health status of the host
- Wwpns []string
- FC HBA world wide port names.
- chapSecret String
- The iSCSI CHAP secret for this host.
- chapUser String
- The iSCSI CHAP name for this host.
- connections Map<String,String>
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connectionsGateway Map<String,String>
- A map of network connection name to gateway IP address.
- connectionsSubnet Map<String,String>
- A map of network connection name to subnet IP address.
- connectionsVlan Map<String,Double>
- A map of network connection name to VLAN ID.
- id String
- The provider-assigned unique ID for this managed resource.
- locationId String
- UUID of the location
- machineSize StringId 
- Machine size ID
- networkIds List<String>
- List of network UUIDs.
- networkRoute StringId 
- Network ID of the default route
- networkUntagged StringId 
- Untagged network ID
- portalComm BooleanOkay 
- The current portal communication state of the host
- powerState String
- The current power state of the host
- sshIds List<String>
- state String
- The current state of the host
- subState String
- The current state of the deployment
- summaryStatus String
- The current health status of the host
- wwpns List<String>
- FC HBA world wide port names.
- chapSecret string
- The iSCSI CHAP secret for this host.
- chapUser string
- The iSCSI CHAP name for this host.
- connections {[key: string]: string}
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connectionsGateway {[key: string]: string}
- A map of network connection name to gateway IP address.
- connectionsSubnet {[key: string]: string}
- A map of network connection name to subnet IP address.
- connectionsVlan {[key: string]: number}
- A map of network connection name to VLAN ID.
- id string
- The provider-assigned unique ID for this managed resource.
- locationId string
- UUID of the location
- machineSize stringId 
- Machine size ID
- networkIds string[]
- List of network UUIDs.
- networkRoute stringId 
- Network ID of the default route
- networkUntagged stringId 
- Untagged network ID
- portalComm booleanOkay 
- The current portal communication state of the host
- powerState string
- The current power state of the host
- sshIds string[]
- state string
- The current state of the host
- subState string
- The current state of the deployment
- summaryStatus string
- The current health status of the host
- wwpns string[]
- FC HBA world wide port names.
- chap_secret str
- The iSCSI CHAP secret for this host.
- chap_user str
- The iSCSI CHAP name for this host.
- connections Mapping[str, str]
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connections_gateway Mapping[str, str]
- A map of network connection name to gateway IP address.
- connections_subnet Mapping[str, str]
- A map of network connection name to subnet IP address.
- connections_vlan Mapping[str, float]
- A map of network connection name to VLAN ID.
- id str
- The provider-assigned unique ID for this managed resource.
- location_id str
- UUID of the location
- machine_size_ strid 
- Machine size ID
- network_ids Sequence[str]
- List of network UUIDs.
- network_route_ strid 
- Network ID of the default route
- network_untagged_ strid 
- Untagged network ID
- portal_comm_ boolokay 
- The current portal communication state of the host
- power_state str
- The current power state of the host
- ssh_ids Sequence[str]
- state str
- The current state of the host
- sub_state str
- The current state of the deployment
- summary_status str
- The current health status of the host
- wwpns Sequence[str]
- FC HBA world wide port names.
- chapSecret String
- The iSCSI CHAP secret for this host.
- chapUser String
- The iSCSI CHAP name for this host.
- connections Map<String>
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connectionsGateway Map<String>
- A map of network connection name to gateway IP address.
- connectionsSubnet Map<String>
- A map of network connection name to subnet IP address.
- connectionsVlan Map<Number>
- A map of network connection name to VLAN ID.
- id String
- The provider-assigned unique ID for this managed resource.
- locationId String
- UUID of the location
- machineSize StringId 
- Machine size ID
- networkIds List<String>
- List of network UUIDs.
- networkRoute StringId 
- Network ID of the default route
- networkUntagged StringId 
- Untagged network ID
- portalComm BooleanOkay 
- The current portal communication state of the host
- powerState String
- The current power state of the host
- sshIds List<String>
- state String
- The current state of the host
- subState String
- The current state of the deployment
- summaryStatus String
- The current health status of the host
- wwpns List<String>
- FC HBA world wide port names.
Look up Existing MetalHost Resource
Get an existing MetalHost 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?: MetalHostState, opts?: CustomResourceOptions): MetalHost@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        allocated_ips: Optional[Sequence[str]] = None,
        chap_secret: Optional[str] = None,
        chap_user: Optional[str] = None,
        connections: Optional[Mapping[str, str]] = None,
        connections_gateway: Optional[Mapping[str, str]] = None,
        connections_subnet: Optional[Mapping[str, str]] = None,
        connections_vlan: Optional[Mapping[str, float]] = None,
        description: Optional[str] = None,
        host_action_async: Optional[bool] = None,
        image: Optional[str] = None,
        initiator_name: Optional[str] = None,
        labels: Optional[Mapping[str, str]] = None,
        location: Optional[str] = None,
        location_id: Optional[str] = None,
        machine_size: Optional[str] = None,
        machine_size_id: Optional[str] = None,
        metal_host_id: Optional[str] = None,
        name: Optional[str] = None,
        network_ids: Optional[Sequence[str]] = None,
        network_route: Optional[str] = None,
        network_route_id: Optional[str] = None,
        network_untagged: Optional[str] = None,
        network_untagged_id: Optional[str] = None,
        networks: Optional[Sequence[str]] = None,
        portal_comm_okay: Optional[bool] = None,
        power_state: Optional[str] = None,
        ssh_ids: Optional[Sequence[str]] = None,
        sshes: Optional[Sequence[str]] = None,
        state: Optional[str] = None,
        sub_state: Optional[str] = None,
        summary_status: Optional[str] = None,
        timeouts: Optional[MetalHostTimeoutsArgs] = None,
        user_data: Optional[str] = None,
        volume_attachments: Optional[Sequence[str]] = None,
        volume_infos: Optional[Sequence[MetalHostVolumeInfoArgs]] = None,
        wwpns: Optional[Sequence[str]] = None) -> MetalHostfunc GetMetalHost(ctx *Context, name string, id IDInput, state *MetalHostState, opts ...ResourceOption) (*MetalHost, error)public static MetalHost Get(string name, Input<string> id, MetalHostState? state, CustomResourceOptions? opts = null)public static MetalHost get(String name, Output<String> id, MetalHostState state, CustomResourceOptions options)resources:  _:    type: hpegl:MetalHost    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- AllocatedIps List<string>
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- ChapSecret string
- The iSCSI CHAP secret for this host.
- ChapUser string
- The iSCSI CHAP name for this host.
- Connections Dictionary<string, string>
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- ConnectionsGateway Dictionary<string, string>
- A map of network connection name to gateway IP address.
- ConnectionsSubnet Dictionary<string, string>
- A map of network connection name to subnet IP address.
- ConnectionsVlan Dictionary<string, double>
- A map of network connection name to VLAN ID.
- Description string
- A wordy description of the machine and purpose.
- HostAction boolAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- Image string
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- InitiatorName string
- The iSCSI initiator name for this host.
- Labels Dictionary<string, string>
- map of label name to label value for this host
- Location string
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- LocationId string
- UUID of the location
- MachineSize string
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- MachineSize stringId 
- Machine size ID
- MetalHost stringId 
- The ID of this resource.
- Name string
- Any friendly name to identify the host that will become the OS hostname in lower case.
- NetworkIds List<string>
- List of network UUIDs.
- NetworkRoute string
- Network selected for the default route
- NetworkRoute stringId 
- Network ID of the default route
- NetworkUntagged string
- Untagged network
- NetworkUntagged stringId 
- Untagged network ID
- Networks List<string>
- List of network name e.g. ['Public', 'Private'].
- PortalComm boolOkay 
- The current portal communication state of the host
- PowerState string
- The current power state of the host
- SshIds List<string>
- Sshes List<string>
- A list of SSH keys that will be pushed to the host.
- State string
- The current state of the host
- SubState string
- The current state of the deployment
- SummaryStatus string
- The current health status of the host
- Timeouts
MetalHost Timeouts 
- UserData string
- Any yaml compliant string that will be merged into cloud-init for this host.
- VolumeAttachments List<string>
- List of existing volume IDs
- VolumeInfos List<MetalHost Volume Info> 
- Information about volumes attached to this host.
- Wwpns List<string>
- FC HBA world wide port names.
- AllocatedIps []string
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- ChapSecret string
- The iSCSI CHAP secret for this host.
- ChapUser string
- The iSCSI CHAP name for this host.
- Connections map[string]string
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- ConnectionsGateway map[string]string
- A map of network connection name to gateway IP address.
- ConnectionsSubnet map[string]string
- A map of network connection name to subnet IP address.
- ConnectionsVlan map[string]float64
- A map of network connection name to VLAN ID.
- Description string
- A wordy description of the machine and purpose.
- HostAction boolAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- Image string
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- InitiatorName string
- The iSCSI initiator name for this host.
- Labels map[string]string
- map of label name to label value for this host
- Location string
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- LocationId string
- UUID of the location
- MachineSize string
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- MachineSize stringId 
- Machine size ID
- MetalHost stringId 
- The ID of this resource.
- Name string
- Any friendly name to identify the host that will become the OS hostname in lower case.
- NetworkIds []string
- List of network UUIDs.
- NetworkRoute string
- Network selected for the default route
- NetworkRoute stringId 
- Network ID of the default route
- NetworkUntagged string
- Untagged network
- NetworkUntagged stringId 
- Untagged network ID
- Networks []string
- List of network name e.g. ['Public', 'Private'].
- PortalComm boolOkay 
- The current portal communication state of the host
- PowerState string
- The current power state of the host
- SshIds []string
- Sshes []string
- A list of SSH keys that will be pushed to the host.
- State string
- The current state of the host
- SubState string
- The current state of the deployment
- SummaryStatus string
- The current health status of the host
- Timeouts
MetalHost Timeouts Args 
- UserData string
- Any yaml compliant string that will be merged into cloud-init for this host.
- VolumeAttachments []string
- List of existing volume IDs
- VolumeInfos []MetalHost Volume Info Args 
- Information about volumes attached to this host.
- Wwpns []string
- FC HBA world wide port names.
- allocatedIps List<String>
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- chapSecret String
- The iSCSI CHAP secret for this host.
- chapUser String
- The iSCSI CHAP name for this host.
- connections Map<String,String>
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connectionsGateway Map<String,String>
- A map of network connection name to gateway IP address.
- connectionsSubnet Map<String,String>
- A map of network connection name to subnet IP address.
- connectionsVlan Map<String,Double>
- A map of network connection name to VLAN ID.
- description String
- A wordy description of the machine and purpose.
- hostAction BooleanAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- image String
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- initiatorName String
- The iSCSI initiator name for this host.
- labels Map<String,String>
- map of label name to label value for this host
- location String
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- locationId String
- UUID of the location
- machineSize String
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- machineSize StringId 
- Machine size ID
- metalHost StringId 
- The ID of this resource.
- name String
- Any friendly name to identify the host that will become the OS hostname in lower case.
- networkIds List<String>
- List of network UUIDs.
- networkRoute String
- Network selected for the default route
- networkRoute StringId 
- Network ID of the default route
- networkUntagged String
- Untagged network
- networkUntagged StringId 
- Untagged network ID
- networks List<String>
- List of network name e.g. ['Public', 'Private'].
- portalComm BooleanOkay 
- The current portal communication state of the host
- powerState String
- The current power state of the host
- sshIds List<String>
- sshes List<String>
- A list of SSH keys that will be pushed to the host.
- state String
- The current state of the host
- subState String
- The current state of the deployment
- summaryStatus String
- The current health status of the host
- timeouts
MetalHost Timeouts 
- userData String
- Any yaml compliant string that will be merged into cloud-init for this host.
- volumeAttachments List<String>
- List of existing volume IDs
- volumeInfos List<MetalHost Volume Info> 
- Information about volumes attached to this host.
- wwpns List<String>
- FC HBA world wide port names.
- allocatedIps string[]
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- chapSecret string
- The iSCSI CHAP secret for this host.
- chapUser string
- The iSCSI CHAP name for this host.
- connections {[key: string]: string}
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connectionsGateway {[key: string]: string}
- A map of network connection name to gateway IP address.
- connectionsSubnet {[key: string]: string}
- A map of network connection name to subnet IP address.
- connectionsVlan {[key: string]: number}
- A map of network connection name to VLAN ID.
- description string
- A wordy description of the machine and purpose.
- hostAction booleanAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- image string
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- initiatorName string
- The iSCSI initiator name for this host.
- labels {[key: string]: string}
- map of label name to label value for this host
- location string
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- locationId string
- UUID of the location
- machineSize string
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- machineSize stringId 
- Machine size ID
- metalHost stringId 
- The ID of this resource.
- name string
- Any friendly name to identify the host that will become the OS hostname in lower case.
- networkIds string[]
- List of network UUIDs.
- networkRoute string
- Network selected for the default route
- networkRoute stringId 
- Network ID of the default route
- networkUntagged string
- Untagged network
- networkUntagged stringId 
- Untagged network ID
- networks string[]
- List of network name e.g. ['Public', 'Private'].
- portalComm booleanOkay 
- The current portal communication state of the host
- powerState string
- The current power state of the host
- sshIds string[]
- sshes string[]
- A list of SSH keys that will be pushed to the host.
- state string
- The current state of the host
- subState string
- The current state of the deployment
- summaryStatus string
- The current health status of the host
- timeouts
MetalHost Timeouts 
- userData string
- Any yaml compliant string that will be merged into cloud-init for this host.
- volumeAttachments string[]
- List of existing volume IDs
- volumeInfos MetalHost Volume Info[] 
- Information about volumes attached to this host.
- wwpns string[]
- FC HBA world wide port names.
- allocated_ips Sequence[str]
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- chap_secret str
- The iSCSI CHAP secret for this host.
- chap_user str
- The iSCSI CHAP name for this host.
- connections Mapping[str, str]
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connections_gateway Mapping[str, str]
- A map of network connection name to gateway IP address.
- connections_subnet Mapping[str, str]
- A map of network connection name to subnet IP address.
- connections_vlan Mapping[str, float]
- A map of network connection name to VLAN ID.
- description str
- A wordy description of the machine and purpose.
- host_action_ boolasync 
- set true to do host create, update, and delete asynchronously. The default is true.
- image str
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- initiator_name str
- The iSCSI initiator name for this host.
- labels Mapping[str, str]
- map of label name to label value for this host
- location str
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- location_id str
- UUID of the location
- machine_size str
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- machine_size_ strid 
- Machine size ID
- metal_host_ strid 
- The ID of this resource.
- name str
- Any friendly name to identify the host that will become the OS hostname in lower case.
- network_ids Sequence[str]
- List of network UUIDs.
- network_route str
- Network selected for the default route
- network_route_ strid 
- Network ID of the default route
- network_untagged str
- Untagged network
- network_untagged_ strid 
- Untagged network ID
- networks Sequence[str]
- List of network name e.g. ['Public', 'Private'].
- portal_comm_ boolokay 
- The current portal communication state of the host
- power_state str
- The current power state of the host
- ssh_ids Sequence[str]
- sshes Sequence[str]
- A list of SSH keys that will be pushed to the host.
- state str
- The current state of the host
- sub_state str
- The current state of the deployment
- summary_status str
- The current health status of the host
- timeouts
MetalHost Timeouts Args 
- user_data str
- Any yaml compliant string that will be merged into cloud-init for this host.
- volume_attachments Sequence[str]
- List of existing volume IDs
- volume_infos Sequence[MetalHost Volume Info Args] 
- Information about volumes attached to this host.
- wwpns Sequence[str]
- FC HBA world wide port names.
- allocatedIps List<String>
- List of pre-allocated IP addresses in one-to-one correspondance wth Networks.
- chapSecret String
- The iSCSI CHAP secret for this host.
- chapUser String
- The iSCSI CHAP name for this host.
- connections Map<String>
- A map of network connection name to assigned IP addrese, eg {'Private':'10.83.0.17'}.
- connectionsGateway Map<String>
- A map of network connection name to gateway IP address.
- connectionsSubnet Map<String>
- A map of network connection name to subnet IP address.
- connectionsVlan Map<Number>
- A map of network connection name to VLAN ID.
- description String
- A wordy description of the machine and purpose.
- hostAction BooleanAsync 
- set true to do host create, update, and delete asynchronously. The default is true.
- image String
- A specific flavor and version in the form of flavor@version, eg 'ubuntu@18.04'.
- initiatorName String
- The iSCSI initiator name for this host.
- labels Map<String>
- map of label name to label value for this host
- location String
- The location of where the machine will be provisioned, of the form 'country:region:centre', eg 'USA:Texas:AUSL2'.
- locationId String
- UUID of the location
- machineSize String
- Some generic sizing information for the machine like 'Small', 'Very Large'.
- machineSize StringId 
- Machine size ID
- metalHost StringId 
- The ID of this resource.
- name String
- Any friendly name to identify the host that will become the OS hostname in lower case.
- networkIds List<String>
- List of network UUIDs.
- networkRoute String
- Network selected for the default route
- networkRoute StringId 
- Network ID of the default route
- networkUntagged String
- Untagged network
- networkUntagged StringId 
- Untagged network ID
- networks List<String>
- List of network name e.g. ['Public', 'Private'].
- portalComm BooleanOkay 
- The current portal communication state of the host
- powerState String
- The current power state of the host
- sshIds List<String>
- sshes List<String>
- A list of SSH keys that will be pushed to the host.
- state String
- The current state of the host
- subState String
- The current state of the deployment
- summaryStatus String
- The current health status of the host
- timeouts Property Map
- userData String
- Any yaml compliant string that will be merged into cloud-init for this host.
- volumeAttachments List<String>
- List of existing volume IDs
- volumeInfos List<Property Map>
- Information about volumes attached to this host.
- wwpns List<String>
- FC HBA world wide port names.
Supporting Types
MetalHostTimeouts, MetalHostTimeoutsArgs      
MetalHostVolumeInfo, MetalHostVolumeInfoArgs        
- Name string
- A friendly name of the volume attached.
- DiscoveryIp string
- iSCSI Discovery IP.
- Id string
- The ID the volume attached.
- TargetIqn string
- iSCSI Target IQN.
- Name string
- A friendly name of the volume attached.
- DiscoveryIp string
- iSCSI Discovery IP.
- Id string
- The ID the volume attached.
- TargetIqn string
- iSCSI Target IQN.
- name String
- A friendly name of the volume attached.
- discoveryIp String
- iSCSI Discovery IP.
- id String
- The ID the volume attached.
- targetIqn String
- iSCSI Target IQN.
- name string
- A friendly name of the volume attached.
- discoveryIp string
- iSCSI Discovery IP.
- id string
- The ID the volume attached.
- targetIqn string
- iSCSI Target IQN.
- name str
- A friendly name of the volume attached.
- discovery_ip str
- iSCSI Discovery IP.
- id str
- The ID the volume attached.
- target_iqn str
- iSCSI Target IQN.
- name String
- A friendly name of the volume attached.
- discoveryIp String
- iSCSI Discovery IP.
- id String
- The ID the volume attached.
- targetIqn String
- iSCSI Target IQN.
Package Details
- Repository
- hpegl hpe/terraform-provider-hpegl
- License
- Notes
- This Pulumi package is based on the hpeglTerraform Provider.