ionoscloud.compute.BootDeviceSelection
Explore with Pulumi AI
Manages the selection of a boot device for IonosCloud Servers.
Example Usage
The boot device of a ionoscloud.compute.Server
, ionoscloud.compute.VCPUServer
or ionoscloud.compute.CubeServer
can be selected with this resource.
Deleting this resource will revert the boot device back to the default volume, which is the first inline volume created together with the server.
This resource also allows switching between a volume
and a ionoscloud.compute.getImage
CDROM. Note that CDROM images are detached after they are no longer set as boot devices.
Select an external volume
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
const exampleServer = new ionoscloud.compute.Server("example", {
name: "Server Example",
availabilityZone: "ZONE_2",
imageName: "ubuntu:latest",
cores: 2,
ram: 2048,
imagePassword: serverImagePassword.result,
datacenterId: exampleIonoscloudDatacenter.id,
volume: {
name: "Inline Updated",
size: 20,
diskType: "SSD Standard",
bus: "VIRTIO",
availabilityZone: "AUTO",
},
nic: {
lan: exampleIonoscloudLan.id,
name: "Nic Example",
dhcp: true,
firewallActive: true,
},
});
const exampleVolume = new ionoscloud.compute.Volume("example", {
serverId: exampleServer.id,
datacenterId: exampleIonoscloudDatacenter.id,
name: "External 1",
size: 10,
diskType: "HDD",
availabilityZone: "AUTO",
imageName: "debian:latest",
imagePassword: serverImagePassword.result,
});
const example = new ionoscloud.compute.BootDeviceSelection("example", {
datacenterId: exampleIonoscloudDatacenter.id,
serverId: exampleServer.id,
bootDeviceId: exampleVolume.id,
});
import pulumi
import pulumi_ionoscloud as ionoscloud
example_server = ionoscloud.compute.Server("example",
name="Server Example",
availability_zone="ZONE_2",
image_name="ubuntu:latest",
cores=2,
ram=2048,
image_password=server_image_password["result"],
datacenter_id=example_ionoscloud_datacenter["id"],
volume={
"name": "Inline Updated",
"size": 20,
"disk_type": "SSD Standard",
"bus": "VIRTIO",
"availability_zone": "AUTO",
},
nic={
"lan": example_ionoscloud_lan["id"],
"name": "Nic Example",
"dhcp": True,
"firewall_active": True,
})
example_volume = ionoscloud.compute.Volume("example",
server_id=example_server.id,
datacenter_id=example_ionoscloud_datacenter["id"],
name="External 1",
size=10,
disk_type="HDD",
availability_zone="AUTO",
image_name="debian:latest",
image_password=server_image_password["result"])
example = ionoscloud.compute.BootDeviceSelection("example",
datacenter_id=example_ionoscloud_datacenter["id"],
server_id=example_server.id,
boot_device_id=example_volume.id)
package main
import (
"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleServer, err := compute.NewServer(ctx, "example", &compute.ServerArgs{
Name: pulumi.String("Server Example"),
AvailabilityZone: pulumi.String("ZONE_2"),
ImageName: pulumi.String("ubuntu:latest"),
Cores: pulumi.Int(2),
Ram: pulumi.Int(2048),
ImagePassword: pulumi.Any(serverImagePassword.Result),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Volume: &compute.ServerVolumeArgs{
Name: pulumi.String("Inline Updated"),
Size: pulumi.Int(20),
DiskType: pulumi.String("SSD Standard"),
Bus: pulumi.String("VIRTIO"),
AvailabilityZone: pulumi.String("AUTO"),
},
Nic: &compute.ServerNicArgs{
Lan: pulumi.Any(exampleIonoscloudLan.Id),
Name: pulumi.String("Nic Example"),
Dhcp: pulumi.Bool(true),
FirewallActive: pulumi.Bool(true),
},
})
if err != nil {
return err
}
exampleVolume, err := compute.NewVolume(ctx, "example", &compute.VolumeArgs{
ServerId: exampleServer.ID(),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Name: pulumi.String("External 1"),
Size: pulumi.Int(10),
DiskType: pulumi.String("HDD"),
AvailabilityZone: pulumi.String("AUTO"),
ImageName: pulumi.String("debian:latest"),
ImagePassword: pulumi.Any(serverImagePassword.Result),
})
if err != nil {
return err
}
_, err = compute.NewBootDeviceSelection(ctx, "example", &compute.BootDeviceSelectionArgs{
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
ServerId: exampleServer.ID(),
BootDeviceId: exampleVolume.ID(),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
return await Deployment.RunAsync(() =>
{
var exampleServer = new Ionoscloud.Compute.Server("example", new()
{
Name = "Server Example",
AvailabilityZone = "ZONE_2",
ImageName = "ubuntu:latest",
Cores = 2,
Ram = 2048,
ImagePassword = serverImagePassword.Result,
DatacenterId = exampleIonoscloudDatacenter.Id,
Volume = new Ionoscloud.Compute.Inputs.ServerVolumeArgs
{
Name = "Inline Updated",
Size = 20,
DiskType = "SSD Standard",
Bus = "VIRTIO",
AvailabilityZone = "AUTO",
},
Nic = new Ionoscloud.Compute.Inputs.ServerNicArgs
{
Lan = exampleIonoscloudLan.Id,
Name = "Nic Example",
Dhcp = true,
FirewallActive = true,
},
});
var exampleVolume = new Ionoscloud.Compute.Volume("example", new()
{
ServerId = exampleServer.Id,
DatacenterId = exampleIonoscloudDatacenter.Id,
Name = "External 1",
Size = 10,
DiskType = "HDD",
AvailabilityZone = "AUTO",
ImageName = "debian:latest",
ImagePassword = serverImagePassword.Result,
});
var example = new Ionoscloud.Compute.BootDeviceSelection("example", new()
{
DatacenterId = exampleIonoscloudDatacenter.Id,
ServerId = exampleServer.Id,
BootDeviceId = exampleVolume.Id,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.compute.Server;
import com.pulumi.ionoscloud.compute.ServerArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerVolumeArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerNicArgs;
import com.pulumi.ionoscloud.compute.Volume;
import com.pulumi.ionoscloud.compute.VolumeArgs;
import com.pulumi.ionoscloud.compute.BootDeviceSelection;
import com.pulumi.ionoscloud.compute.BootDeviceSelectionArgs;
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 exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("Server Example")
.availabilityZone("ZONE_2")
.imageName("ubuntu:latest")
.cores(2)
.ram(2048)
.imagePassword(serverImagePassword.result())
.datacenterId(exampleIonoscloudDatacenter.id())
.volume(ServerVolumeArgs.builder()
.name("Inline Updated")
.size(20)
.diskType("SSD Standard")
.bus("VIRTIO")
.availabilityZone("AUTO")
.build())
.nic(ServerNicArgs.builder()
.lan(exampleIonoscloudLan.id())
.name("Nic Example")
.dhcp(true)
.firewallActive(true)
.build())
.build());
var exampleVolume = new Volume("exampleVolume", VolumeArgs.builder()
.serverId(exampleServer.id())
.datacenterId(exampleIonoscloudDatacenter.id())
.name("External 1")
.size(10)
.diskType("HDD")
.availabilityZone("AUTO")
.imageName("debian:latest")
.imagePassword(serverImagePassword.result())
.build());
var example = new BootDeviceSelection("example", BootDeviceSelectionArgs.builder()
.datacenterId(exampleIonoscloudDatacenter.id())
.serverId(exampleServer.id())
.bootDeviceId(exampleVolume.id())
.build());
}
}
resources:
example:
type: ionoscloud:compute:BootDeviceSelection
properties:
datacenterId: ${exampleIonoscloudDatacenter.id}
serverId: ${exampleServer.id}
bootDeviceId: ${exampleVolume.id}
exampleServer:
type: ionoscloud:compute:Server
name: example
properties:
name: Server Example
availabilityZone: ZONE_2
imageName: ubuntu:latest
cores: 2
ram: 2048
imagePassword: ${serverImagePassword.result}
datacenterId: ${exampleIonoscloudDatacenter.id}
volume:
name: Inline Updated
size: 20
diskType: SSD Standard
bus: VIRTIO
availabilityZone: AUTO
nic:
lan: ${exampleIonoscloudLan.id}
name: Nic Example
dhcp: true
firewallActive: true
exampleVolume:
type: ionoscloud:compute:Volume
name: example
properties:
serverId: ${exampleServer.id}
datacenterId: ${exampleIonoscloudDatacenter.id}
name: External 1
size: 10
diskType: HDD
availabilityZone: AUTO
imageName: debian:latest
imagePassword: ${serverImagePassword.result}
Select an inline volume again
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
const exampleServer = new ionoscloud.compute.Server("example", {
name: "Server Example",
availabilityZone: "ZONE_2",
imageName: "ubuntu:latest",
cores: 2,
ram: 2048,
imagePassword: serverImagePassword.result,
datacenterId: exampleIonoscloudDatacenter.id,
volume: {
name: "Inline Updated",
size: 20,
diskType: "SSD Standard",
bus: "VIRTIO",
availabilityZone: "AUTO",
},
nic: {
lan: exampleIonoscloudLan.id,
name: "Nic Example",
dhcp: true,
firewallActive: true,
},
});
const example = new ionoscloud.compute.BootDeviceSelection("example", {
datacenterId: exampleIonoscloudDatacenter.id,
serverId: exampleServer.id,
bootDeviceId: exampleServer.inlineVolumeIds[0],
});
const exampleVolume = new ionoscloud.compute.Volume("example", {
serverId: exampleServer.id,
datacenterId: exampleIonoscloudDatacenter.id,
name: "External 1",
size: 10,
diskType: "HDD",
availabilityZone: "AUTO",
imageName: "debian:latest",
imagePassword: serverImagePassword.result,
});
import pulumi
import pulumi_ionoscloud as ionoscloud
example_server = ionoscloud.compute.Server("example",
name="Server Example",
availability_zone="ZONE_2",
image_name="ubuntu:latest",
cores=2,
ram=2048,
image_password=server_image_password["result"],
datacenter_id=example_ionoscloud_datacenter["id"],
volume={
"name": "Inline Updated",
"size": 20,
"disk_type": "SSD Standard",
"bus": "VIRTIO",
"availability_zone": "AUTO",
},
nic={
"lan": example_ionoscloud_lan["id"],
"name": "Nic Example",
"dhcp": True,
"firewall_active": True,
})
example = ionoscloud.compute.BootDeviceSelection("example",
datacenter_id=example_ionoscloud_datacenter["id"],
server_id=example_server.id,
boot_device_id=example_server.inline_volume_ids[0])
example_volume = ionoscloud.compute.Volume("example",
server_id=example_server.id,
datacenter_id=example_ionoscloud_datacenter["id"],
name="External 1",
size=10,
disk_type="HDD",
availability_zone="AUTO",
image_name="debian:latest",
image_password=server_image_password["result"])
package main
import (
"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleServer, err := compute.NewServer(ctx, "example", &compute.ServerArgs{
Name: pulumi.String("Server Example"),
AvailabilityZone: pulumi.String("ZONE_2"),
ImageName: pulumi.String("ubuntu:latest"),
Cores: pulumi.Int(2),
Ram: pulumi.Int(2048),
ImagePassword: pulumi.Any(serverImagePassword.Result),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Volume: &compute.ServerVolumeArgs{
Name: pulumi.String("Inline Updated"),
Size: pulumi.Int(20),
DiskType: pulumi.String("SSD Standard"),
Bus: pulumi.String("VIRTIO"),
AvailabilityZone: pulumi.String("AUTO"),
},
Nic: &compute.ServerNicArgs{
Lan: pulumi.Any(exampleIonoscloudLan.Id),
Name: pulumi.String("Nic Example"),
Dhcp: pulumi.Bool(true),
FirewallActive: pulumi.Bool(true),
},
})
if err != nil {
return err
}
_, err = compute.NewBootDeviceSelection(ctx, "example", &compute.BootDeviceSelectionArgs{
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
ServerId: exampleServer.ID(),
BootDeviceId: exampleServer.InlineVolumeIds.ApplyT(func(inlineVolumeIds []string) (string, error) {
return inlineVolumeIds[0], nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
_, err = compute.NewVolume(ctx, "example", &compute.VolumeArgs{
ServerId: exampleServer.ID(),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Name: pulumi.String("External 1"),
Size: pulumi.Int(10),
DiskType: pulumi.String("HDD"),
AvailabilityZone: pulumi.String("AUTO"),
ImageName: pulumi.String("debian:latest"),
ImagePassword: pulumi.Any(serverImagePassword.Result),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
return await Deployment.RunAsync(() =>
{
var exampleServer = new Ionoscloud.Compute.Server("example", new()
{
Name = "Server Example",
AvailabilityZone = "ZONE_2",
ImageName = "ubuntu:latest",
Cores = 2,
Ram = 2048,
ImagePassword = serverImagePassword.Result,
DatacenterId = exampleIonoscloudDatacenter.Id,
Volume = new Ionoscloud.Compute.Inputs.ServerVolumeArgs
{
Name = "Inline Updated",
Size = 20,
DiskType = "SSD Standard",
Bus = "VIRTIO",
AvailabilityZone = "AUTO",
},
Nic = new Ionoscloud.Compute.Inputs.ServerNicArgs
{
Lan = exampleIonoscloudLan.Id,
Name = "Nic Example",
Dhcp = true,
FirewallActive = true,
},
});
var example = new Ionoscloud.Compute.BootDeviceSelection("example", new()
{
DatacenterId = exampleIonoscloudDatacenter.Id,
ServerId = exampleServer.Id,
BootDeviceId = exampleServer.InlineVolumeIds.Apply(inlineVolumeIds => inlineVolumeIds[0]),
});
var exampleVolume = new Ionoscloud.Compute.Volume("example", new()
{
ServerId = exampleServer.Id,
DatacenterId = exampleIonoscloudDatacenter.Id,
Name = "External 1",
Size = 10,
DiskType = "HDD",
AvailabilityZone = "AUTO",
ImageName = "debian:latest",
ImagePassword = serverImagePassword.Result,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.compute.Server;
import com.pulumi.ionoscloud.compute.ServerArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerVolumeArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerNicArgs;
import com.pulumi.ionoscloud.compute.BootDeviceSelection;
import com.pulumi.ionoscloud.compute.BootDeviceSelectionArgs;
import com.pulumi.ionoscloud.compute.Volume;
import com.pulumi.ionoscloud.compute.VolumeArgs;
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 exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("Server Example")
.availabilityZone("ZONE_2")
.imageName("ubuntu:latest")
.cores(2)
.ram(2048)
.imagePassword(serverImagePassword.result())
.datacenterId(exampleIonoscloudDatacenter.id())
.volume(ServerVolumeArgs.builder()
.name("Inline Updated")
.size(20)
.diskType("SSD Standard")
.bus("VIRTIO")
.availabilityZone("AUTO")
.build())
.nic(ServerNicArgs.builder()
.lan(exampleIonoscloudLan.id())
.name("Nic Example")
.dhcp(true)
.firewallActive(true)
.build())
.build());
var example = new BootDeviceSelection("example", BootDeviceSelectionArgs.builder()
.datacenterId(exampleIonoscloudDatacenter.id())
.serverId(exampleServer.id())
.bootDeviceId(exampleServer.inlineVolumeIds().applyValue(inlineVolumeIds -> inlineVolumeIds[0]))
.build());
var exampleVolume = new Volume("exampleVolume", VolumeArgs.builder()
.serverId(exampleServer.id())
.datacenterId(exampleIonoscloudDatacenter.id())
.name("External 1")
.size(10)
.diskType("HDD")
.availabilityZone("AUTO")
.imageName("debian:latest")
.imagePassword(serverImagePassword.result())
.build());
}
}
resources:
example:
type: ionoscloud:compute:BootDeviceSelection
properties:
datacenterId: ${exampleIonoscloudDatacenter.id}
serverId: ${exampleServer.id}
bootDeviceId: ${exampleServer.inlineVolumeIds[0]}
exampleServer:
type: ionoscloud:compute:Server
name: example
properties:
name: Server Example
availabilityZone: ZONE_2
imageName: ubuntu:latest
cores: 2
ram: 2048
imagePassword: ${serverImagePassword.result}
datacenterId: ${exampleIonoscloudDatacenter.id}
volume:
name: Inline Updated
size: 20
diskType: SSD Standard
bus: VIRTIO
availabilityZone: AUTO
nic:
lan: ${exampleIonoscloudLan.id}
name: Nic Example
dhcp: true
firewallActive: true
exampleVolume:
type: ionoscloud:compute:Volume
name: example
properties:
serverId: ${exampleServer.id}
datacenterId: ${exampleIonoscloudDatacenter.id}
name: External 1
size: 10
diskType: HDD
availabilityZone: AUTO
imageName: debian:latest
imagePassword: ${serverImagePassword.result}
Select a CDROM image
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
import * as ionoscloud from "@pulumi/ionoscloud";
const exampleServer = new ionoscloud.compute.Server("example", {
name: "Server Example",
availabilityZone: "ZONE_2",
imageName: "ubuntu:latest",
cores: 2,
ram: 2048,
imagePassword: serverImagePassword.result,
datacenterId: exampleIonoscloudDatacenter.id,
volume: {
name: "Inline Updated",
size: 20,
diskType: "SSD Standard",
bus: "VIRTIO",
availabilityZone: "AUTO",
},
nic: {
lan: exampleIonoscloudLan.id,
name: "Nic Example",
dhcp: true,
firewallActive: true,
},
});
const example = ionoscloud.compute.getImage({
name: "ubuntu-20.04",
location: "de/txl",
type: "CDROM",
});
const exampleBootDeviceSelection = new ionoscloud.compute.BootDeviceSelection("example", {
datacenterId: exampleIonoscloudDatacenter.id,
serverId: exampleServer.inlineVolumeIds[0],
bootDeviceId: example.then(example => example.id),
});
const exampleVolume = new ionoscloud.compute.Volume("example", {
serverId: exampleServer.id,
datacenterId: exampleIonoscloudDatacenter.id,
name: "External 1",
size: 10,
diskType: "HDD",
availabilityZone: "AUTO",
imageName: "debian:latest",
imagePassword: serverImagePassword.result,
});
import pulumi
import pulumi_ionoscloud as ionoscloud
example_server = ionoscloud.compute.Server("example",
name="Server Example",
availability_zone="ZONE_2",
image_name="ubuntu:latest",
cores=2,
ram=2048,
image_password=server_image_password["result"],
datacenter_id=example_ionoscloud_datacenter["id"],
volume={
"name": "Inline Updated",
"size": 20,
"disk_type": "SSD Standard",
"bus": "VIRTIO",
"availability_zone": "AUTO",
},
nic={
"lan": example_ionoscloud_lan["id"],
"name": "Nic Example",
"dhcp": True,
"firewall_active": True,
})
example = ionoscloud.compute.get_image(name="ubuntu-20.04",
location="de/txl",
type="CDROM")
example_boot_device_selection = ionoscloud.compute.BootDeviceSelection("example",
datacenter_id=example_ionoscloud_datacenter["id"],
server_id=example_server.inline_volume_ids[0],
boot_device_id=example.id)
example_volume = ionoscloud.compute.Volume("example",
server_id=example_server.id,
datacenter_id=example_ionoscloud_datacenter["id"],
name="External 1",
size=10,
disk_type="HDD",
availability_zone="AUTO",
image_name="debian:latest",
image_password=server_image_password["result"])
package main
import (
"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleServer, err := compute.NewServer(ctx, "example", &compute.ServerArgs{
Name: pulumi.String("Server Example"),
AvailabilityZone: pulumi.String("ZONE_2"),
ImageName: pulumi.String("ubuntu:latest"),
Cores: pulumi.Int(2),
Ram: pulumi.Int(2048),
ImagePassword: pulumi.Any(serverImagePassword.Result),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Volume: &compute.ServerVolumeArgs{
Name: pulumi.String("Inline Updated"),
Size: pulumi.Int(20),
DiskType: pulumi.String("SSD Standard"),
Bus: pulumi.String("VIRTIO"),
AvailabilityZone: pulumi.String("AUTO"),
},
Nic: &compute.ServerNicArgs{
Lan: pulumi.Any(exampleIonoscloudLan.Id),
Name: pulumi.String("Nic Example"),
Dhcp: pulumi.Bool(true),
FirewallActive: pulumi.Bool(true),
},
})
if err != nil {
return err
}
example, err := compute.GetImage(ctx, &compute.GetImageArgs{
Name: pulumi.StringRef("ubuntu-20.04"),
Location: pulumi.StringRef("de/txl"),
Type: pulumi.StringRef("CDROM"),
}, nil)
if err != nil {
return err
}
_, err = compute.NewBootDeviceSelection(ctx, "example", &compute.BootDeviceSelectionArgs{
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
ServerId: exampleServer.InlineVolumeIds.ApplyT(func(inlineVolumeIds []string) (string, error) {
return inlineVolumeIds[0], nil
}).(pulumi.StringOutput),
BootDeviceId: pulumi.String(example.Id),
})
if err != nil {
return err
}
_, err = compute.NewVolume(ctx, "example", &compute.VolumeArgs{
ServerId: exampleServer.ID(),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Name: pulumi.String("External 1"),
Size: pulumi.Int(10),
DiskType: pulumi.String("HDD"),
AvailabilityZone: pulumi.String("AUTO"),
ImageName: pulumi.String("debian:latest"),
ImagePassword: pulumi.Any(serverImagePassword.Result),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
using Ionoscloud = Pulumi.Ionoscloud;
return await Deployment.RunAsync(() =>
{
var exampleServer = new Ionoscloud.Compute.Server("example", new()
{
Name = "Server Example",
AvailabilityZone = "ZONE_2",
ImageName = "ubuntu:latest",
Cores = 2,
Ram = 2048,
ImagePassword = serverImagePassword.Result,
DatacenterId = exampleIonoscloudDatacenter.Id,
Volume = new Ionoscloud.Compute.Inputs.ServerVolumeArgs
{
Name = "Inline Updated",
Size = 20,
DiskType = "SSD Standard",
Bus = "VIRTIO",
AvailabilityZone = "AUTO",
},
Nic = new Ionoscloud.Compute.Inputs.ServerNicArgs
{
Lan = exampleIonoscloudLan.Id,
Name = "Nic Example",
Dhcp = true,
FirewallActive = true,
},
});
var example = Ionoscloud.Compute.GetImage.Invoke(new()
{
Name = "ubuntu-20.04",
Location = "de/txl",
Type = "CDROM",
});
var exampleBootDeviceSelection = new Ionoscloud.Compute.BootDeviceSelection("example", new()
{
DatacenterId = exampleIonoscloudDatacenter.Id,
ServerId = exampleServer.InlineVolumeIds.Apply(inlineVolumeIds => inlineVolumeIds[0]),
BootDeviceId = example.Apply(getImageResult => getImageResult.Id),
});
var exampleVolume = new Ionoscloud.Compute.Volume("example", new()
{
ServerId = exampleServer.Id,
DatacenterId = exampleIonoscloudDatacenter.Id,
Name = "External 1",
Size = 10,
DiskType = "HDD",
AvailabilityZone = "AUTO",
ImageName = "debian:latest",
ImagePassword = serverImagePassword.Result,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.compute.Server;
import com.pulumi.ionoscloud.compute.ServerArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerVolumeArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerNicArgs;
import com.pulumi.ionoscloud.compute.ComputeFunctions;
import com.pulumi.ionoscloud.compute.inputs.GetImageArgs;
import com.pulumi.ionoscloud.compute.BootDeviceSelection;
import com.pulumi.ionoscloud.compute.BootDeviceSelectionArgs;
import com.pulumi.ionoscloud.compute.Volume;
import com.pulumi.ionoscloud.compute.VolumeArgs;
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 exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("Server Example")
.availabilityZone("ZONE_2")
.imageName("ubuntu:latest")
.cores(2)
.ram(2048)
.imagePassword(serverImagePassword.result())
.datacenterId(exampleIonoscloudDatacenter.id())
.volume(ServerVolumeArgs.builder()
.name("Inline Updated")
.size(20)
.diskType("SSD Standard")
.bus("VIRTIO")
.availabilityZone("AUTO")
.build())
.nic(ServerNicArgs.builder()
.lan(exampleIonoscloudLan.id())
.name("Nic Example")
.dhcp(true)
.firewallActive(true)
.build())
.build());
final var example = ComputeFunctions.getImage(GetImageArgs.builder()
.name("ubuntu-20.04")
.location("de/txl")
.type("CDROM")
.build());
var exampleBootDeviceSelection = new BootDeviceSelection("exampleBootDeviceSelection", BootDeviceSelectionArgs.builder()
.datacenterId(exampleIonoscloudDatacenter.id())
.serverId(exampleServer.inlineVolumeIds().applyValue(inlineVolumeIds -> inlineVolumeIds[0]))
.bootDeviceId(example.applyValue(getImageResult -> getImageResult.id()))
.build());
var exampleVolume = new Volume("exampleVolume", VolumeArgs.builder()
.serverId(exampleServer.id())
.datacenterId(exampleIonoscloudDatacenter.id())
.name("External 1")
.size(10)
.diskType("HDD")
.availabilityZone("AUTO")
.imageName("debian:latest")
.imagePassword(serverImagePassword.result())
.build());
}
}
resources:
exampleBootDeviceSelection:
type: ionoscloud:compute:BootDeviceSelection
name: example
properties:
datacenterId: ${exampleIonoscloudDatacenter.id}
serverId: ${exampleServer.inlineVolumeIds[0]}
bootDeviceId: ${example.id}
exampleServer:
type: ionoscloud:compute:Server
name: example
properties:
name: Server Example
availabilityZone: ZONE_2
imageName: ubuntu:latest
cores: 2
ram: 2048
imagePassword: ${serverImagePassword.result}
datacenterId: ${exampleIonoscloudDatacenter.id}
volume:
name: Inline Updated
size: 20
diskType: SSD Standard
bus: VIRTIO
availabilityZone: AUTO
nic:
lan: ${exampleIonoscloudLan.id}
name: Nic Example
dhcp: true
firewallActive: true
exampleVolume:
type: ionoscloud:compute:Volume
name: example
properties:
serverId: ${exampleServer.id}
datacenterId: ${exampleIonoscloudDatacenter.id}
name: External 1
size: 10
diskType: HDD
availabilityZone: AUTO
imageName: debian:latest
imagePassword: ${serverImagePassword.result}
variables:
example:
fn::invoke:
function: ionoscloud:compute:getImage
arguments:
name: ubuntu-20.04
location: de/txl
type: CDROM
Perform a network boot
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
import * as ionoscloud from "@pulumi/ionoscloud";
const exampleServer = new ionoscloud.compute.Server("example", {
name: "Server Example",
availabilityZone: "ZONE_2",
imageName: "ubuntu:latest",
cores: 2,
ram: 2048,
imagePassword: serverImagePassword.result,
datacenterId: exampleIonoscloudDatacenter.id,
volume: {
name: "Inline volume",
size: 20,
diskType: "SSD Standard",
bus: "VIRTIO",
availabilityZone: "AUTO",
},
nic: {
lan: exampleIonoscloudLan.id,
name: "Nic Example",
dhcp: true,
firewallActive: true,
},
});
const exampleBootDeviceSelection = new ionoscloud.compute.BootDeviceSelection("example", {
datacenterId: exampleIonoscloudDatacenter.id,
serverId: exampleServer.inlineVolumeIds[0],
});
const exampleVolume = new ionoscloud.compute.Volume("example", {
serverId: exampleServer.id,
datacenterId: exampleIonoscloudDatacenter.id,
name: "External 1",
size: 10,
diskType: "HDD",
availabilityZone: "AUTO",
imageName: "debian:latest",
imagePassword: serverImagePassword.result,
});
const example = ionoscloud.compute.getImage({
name: "ubuntu-20.04",
location: "de/txl",
type: "CDROM",
});
import pulumi
import pulumi_ionoscloud as ionoscloud
example_server = ionoscloud.compute.Server("example",
name="Server Example",
availability_zone="ZONE_2",
image_name="ubuntu:latest",
cores=2,
ram=2048,
image_password=server_image_password["result"],
datacenter_id=example_ionoscloud_datacenter["id"],
volume={
"name": "Inline volume",
"size": 20,
"disk_type": "SSD Standard",
"bus": "VIRTIO",
"availability_zone": "AUTO",
},
nic={
"lan": example_ionoscloud_lan["id"],
"name": "Nic Example",
"dhcp": True,
"firewall_active": True,
})
example_boot_device_selection = ionoscloud.compute.BootDeviceSelection("example",
datacenter_id=example_ionoscloud_datacenter["id"],
server_id=example_server.inline_volume_ids[0])
example_volume = ionoscloud.compute.Volume("example",
server_id=example_server.id,
datacenter_id=example_ionoscloud_datacenter["id"],
name="External 1",
size=10,
disk_type="HDD",
availability_zone="AUTO",
image_name="debian:latest",
image_password=server_image_password["result"])
example = ionoscloud.compute.get_image(name="ubuntu-20.04",
location="de/txl",
type="CDROM")
package main
import (
"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleServer, err := compute.NewServer(ctx, "example", &compute.ServerArgs{
Name: pulumi.String("Server Example"),
AvailabilityZone: pulumi.String("ZONE_2"),
ImageName: pulumi.String("ubuntu:latest"),
Cores: pulumi.Int(2),
Ram: pulumi.Int(2048),
ImagePassword: pulumi.Any(serverImagePassword.Result),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Volume: &compute.ServerVolumeArgs{
Name: pulumi.String("Inline volume"),
Size: pulumi.Int(20),
DiskType: pulumi.String("SSD Standard"),
Bus: pulumi.String("VIRTIO"),
AvailabilityZone: pulumi.String("AUTO"),
},
Nic: &compute.ServerNicArgs{
Lan: pulumi.Any(exampleIonoscloudLan.Id),
Name: pulumi.String("Nic Example"),
Dhcp: pulumi.Bool(true),
FirewallActive: pulumi.Bool(true),
},
})
if err != nil {
return err
}
_, err = compute.NewBootDeviceSelection(ctx, "example", &compute.BootDeviceSelectionArgs{
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
ServerId: exampleServer.InlineVolumeIds.ApplyT(func(inlineVolumeIds []string) (string, error) {
return inlineVolumeIds[0], nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
_, err = compute.NewVolume(ctx, "example", &compute.VolumeArgs{
ServerId: exampleServer.ID(),
DatacenterId: pulumi.Any(exampleIonoscloudDatacenter.Id),
Name: pulumi.String("External 1"),
Size: pulumi.Int(10),
DiskType: pulumi.String("HDD"),
AvailabilityZone: pulumi.String("AUTO"),
ImageName: pulumi.String("debian:latest"),
ImagePassword: pulumi.Any(serverImagePassword.Result),
})
if err != nil {
return err
}
_, err = compute.GetImage(ctx, &compute.GetImageArgs{
Name: pulumi.StringRef("ubuntu-20.04"),
Location: pulumi.StringRef("de/txl"),
Type: pulumi.StringRef("CDROM"),
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
using Ionoscloud = Pulumi.Ionoscloud;
return await Deployment.RunAsync(() =>
{
var exampleServer = new Ionoscloud.Compute.Server("example", new()
{
Name = "Server Example",
AvailabilityZone = "ZONE_2",
ImageName = "ubuntu:latest",
Cores = 2,
Ram = 2048,
ImagePassword = serverImagePassword.Result,
DatacenterId = exampleIonoscloudDatacenter.Id,
Volume = new Ionoscloud.Compute.Inputs.ServerVolumeArgs
{
Name = "Inline volume",
Size = 20,
DiskType = "SSD Standard",
Bus = "VIRTIO",
AvailabilityZone = "AUTO",
},
Nic = new Ionoscloud.Compute.Inputs.ServerNicArgs
{
Lan = exampleIonoscloudLan.Id,
Name = "Nic Example",
Dhcp = true,
FirewallActive = true,
},
});
var exampleBootDeviceSelection = new Ionoscloud.Compute.BootDeviceSelection("example", new()
{
DatacenterId = exampleIonoscloudDatacenter.Id,
ServerId = exampleServer.InlineVolumeIds.Apply(inlineVolumeIds => inlineVolumeIds[0]),
});
var exampleVolume = new Ionoscloud.Compute.Volume("example", new()
{
ServerId = exampleServer.Id,
DatacenterId = exampleIonoscloudDatacenter.Id,
Name = "External 1",
Size = 10,
DiskType = "HDD",
AvailabilityZone = "AUTO",
ImageName = "debian:latest",
ImagePassword = serverImagePassword.Result,
});
var example = Ionoscloud.Compute.GetImage.Invoke(new()
{
Name = "ubuntu-20.04",
Location = "de/txl",
Type = "CDROM",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.compute.Server;
import com.pulumi.ionoscloud.compute.ServerArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerVolumeArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerNicArgs;
import com.pulumi.ionoscloud.compute.BootDeviceSelection;
import com.pulumi.ionoscloud.compute.BootDeviceSelectionArgs;
import com.pulumi.ionoscloud.compute.Volume;
import com.pulumi.ionoscloud.compute.VolumeArgs;
import com.pulumi.ionoscloud.compute.ComputeFunctions;
import com.pulumi.ionoscloud.compute.inputs.GetImageArgs;
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 exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("Server Example")
.availabilityZone("ZONE_2")
.imageName("ubuntu:latest")
.cores(2)
.ram(2048)
.imagePassword(serverImagePassword.result())
.datacenterId(exampleIonoscloudDatacenter.id())
.volume(ServerVolumeArgs.builder()
.name("Inline volume")
.size(20)
.diskType("SSD Standard")
.bus("VIRTIO")
.availabilityZone("AUTO")
.build())
.nic(ServerNicArgs.builder()
.lan(exampleIonoscloudLan.id())
.name("Nic Example")
.dhcp(true)
.firewallActive(true)
.build())
.build());
var exampleBootDeviceSelection = new BootDeviceSelection("exampleBootDeviceSelection", BootDeviceSelectionArgs.builder()
.datacenterId(exampleIonoscloudDatacenter.id())
.serverId(exampleServer.inlineVolumeIds().applyValue(inlineVolumeIds -> inlineVolumeIds[0]))
.build());
var exampleVolume = new Volume("exampleVolume", VolumeArgs.builder()
.serverId(exampleServer.id())
.datacenterId(exampleIonoscloudDatacenter.id())
.name("External 1")
.size(10)
.diskType("HDD")
.availabilityZone("AUTO")
.imageName("debian:latest")
.imagePassword(serverImagePassword.result())
.build());
final var example = ComputeFunctions.getImage(GetImageArgs.builder()
.name("ubuntu-20.04")
.location("de/txl")
.type("CDROM")
.build());
}
}
resources:
exampleBootDeviceSelection:
type: ionoscloud:compute:BootDeviceSelection
name: example
properties:
datacenterId: ${exampleIonoscloudDatacenter.id}
serverId: ${exampleServer.inlineVolumeIds[0]}
exampleServer:
type: ionoscloud:compute:Server
name: example
properties:
name: Server Example
availabilityZone: ZONE_2
imageName: ubuntu:latest
cores: 2
ram: 2048
imagePassword: ${serverImagePassword.result}
datacenterId: ${exampleIonoscloudDatacenter.id}
volume:
name: Inline volume
size: 20
diskType: SSD Standard
bus: VIRTIO
availabilityZone: AUTO
nic:
lan: ${exampleIonoscloudLan.id}
name: Nic Example
dhcp: true
firewallActive: true
exampleVolume:
type: ionoscloud:compute:Volume
name: example
properties:
serverId: ${exampleServer.id}
datacenterId: ${exampleIonoscloudDatacenter.id}
name: External 1
size: 10
diskType: HDD
availabilityZone: AUTO
imageName: debian:latest
imagePassword: ${serverImagePassword.result}
variables:
example:
fn::invoke:
function: ionoscloud:compute:getImage
arguments:
name: ubuntu-20.04
location: de/txl
type: CDROM
Create BootDeviceSelection Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new BootDeviceSelection(name: string, args: BootDeviceSelectionArgs, opts?: CustomResourceOptions);
@overload
def BootDeviceSelection(resource_name: str,
args: BootDeviceSelectionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def BootDeviceSelection(resource_name: str,
opts: Optional[ResourceOptions] = None,
datacenter_id: Optional[str] = None,
server_id: Optional[str] = None,
boot_device_id: Optional[str] = None)
func NewBootDeviceSelection(ctx *Context, name string, args BootDeviceSelectionArgs, opts ...ResourceOption) (*BootDeviceSelection, error)
public BootDeviceSelection(string name, BootDeviceSelectionArgs args, CustomResourceOptions? opts = null)
public BootDeviceSelection(String name, BootDeviceSelectionArgs args)
public BootDeviceSelection(String name, BootDeviceSelectionArgs args, CustomResourceOptions options)
type: ionoscloud:compute:BootDeviceSelection
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 BootDeviceSelectionArgs
- 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 BootDeviceSelectionArgs
- 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 BootDeviceSelectionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args BootDeviceSelectionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args BootDeviceSelectionArgs
- 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 bootDeviceSelectionResource = new Ionoscloud.Compute.BootDeviceSelection("bootDeviceSelectionResource", new()
{
DatacenterId = "string",
ServerId = "string",
BootDeviceId = "string",
});
example, err := compute.NewBootDeviceSelection(ctx, "bootDeviceSelectionResource", &compute.BootDeviceSelectionArgs{
DatacenterId: pulumi.String("string"),
ServerId: pulumi.String("string"),
BootDeviceId: pulumi.String("string"),
})
var bootDeviceSelectionResource = new BootDeviceSelection("bootDeviceSelectionResource", BootDeviceSelectionArgs.builder()
.datacenterId("string")
.serverId("string")
.bootDeviceId("string")
.build());
boot_device_selection_resource = ionoscloud.compute.BootDeviceSelection("bootDeviceSelectionResource",
datacenter_id="string",
server_id="string",
boot_device_id="string")
const bootDeviceSelectionResource = new ionoscloud.compute.BootDeviceSelection("bootDeviceSelectionResource", {
datacenterId: "string",
serverId: "string",
bootDeviceId: "string",
});
type: ionoscloud:compute:BootDeviceSelection
properties:
bootDeviceId: string
datacenterId: string
serverId: string
BootDeviceSelection 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 BootDeviceSelection resource accepts the following input properties:
- Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Server
Id string - [string] The ID of a server.
- Boot
Device stringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Server
Id string - [string] The ID of a server.
- Boot
Device stringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter
Id String - [string] The ID of a Virtual Data Center.
- server
Id String - [string] The ID of a server.
- boot
Device StringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter
Id string - [string] The ID of a Virtual Data Center.
- server
Id string - [string] The ID of a server.
- boot
Device stringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter_
id str - [string] The ID of a Virtual Data Center.
- server_
id str - [string] The ID of a server.
- boot_
device_ strid - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter
Id String - [string] The ID of a Virtual Data Center.
- server
Id String - [string] The ID of a server.
- boot
Device StringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
Outputs
All input properties are implicitly available as output properties. Additionally, the BootDeviceSelection resource produces the following output properties:
- Default
Boot stringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- Id string
- The provider-assigned unique ID for this managed resource.
- Default
Boot stringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- Id string
- The provider-assigned unique ID for this managed resource.
- default
Boot StringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- id String
- The provider-assigned unique ID for this managed resource.
- default
Boot stringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- id string
- The provider-assigned unique ID for this managed resource.
- default_
boot_ strvolume_ id - ID of the first attached volume of the Server, which will be the default boot volume.
- id str
- The provider-assigned unique ID for this managed resource.
- default
Boot StringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing BootDeviceSelection Resource
Get an existing BootDeviceSelection 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?: BootDeviceSelectionState, opts?: CustomResourceOptions): BootDeviceSelection
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
boot_device_id: Optional[str] = None,
datacenter_id: Optional[str] = None,
default_boot_volume_id: Optional[str] = None,
server_id: Optional[str] = None) -> BootDeviceSelection
func GetBootDeviceSelection(ctx *Context, name string, id IDInput, state *BootDeviceSelectionState, opts ...ResourceOption) (*BootDeviceSelection, error)
public static BootDeviceSelection Get(string name, Input<string> id, BootDeviceSelectionState? state, CustomResourceOptions? opts = null)
public static BootDeviceSelection get(String name, Output<String> id, BootDeviceSelectionState state, CustomResourceOptions options)
resources: _: type: ionoscloud:compute:BootDeviceSelection 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.
- Boot
Device stringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Default
Boot stringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- Server
Id string - [string] The ID of a server.
- Boot
Device stringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Default
Boot stringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- Server
Id string - [string] The ID of a server.
- boot
Device StringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter
Id String - [string] The ID of a Virtual Data Center.
- default
Boot StringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- server
Id String - [string] The ID of a server.
- boot
Device stringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter
Id string - [string] The ID of a Virtual Data Center.
- default
Boot stringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- server
Id string - [string] The ID of a server.
- boot_
device_ strid - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter_
id str - [string] The ID of a Virtual Data Center.
- default_
boot_ strvolume_ id - ID of the first attached volume of the Server, which will be the default boot volume.
- server_
id str - [string] The ID of a server.
- boot
Device StringId - [string] The ID of a bootable device such as a volume or an image data source. If this field is omitted from the configuration, the VM will be restarted with no primary boot device, and it will enter the PXE shell for network booting. Note: If the network booting process started by the PXE shell fails, the VM will still boot into the image of the attached storage as a fallback. This behavior imitates the "Boot from Network" option from DCD.
- datacenter
Id String - [string] The ID of a Virtual Data Center.
- default
Boot StringVolume Id - ID of the first attached volume of the Server, which will be the default boot volume.
- server
Id String - [string] The ID of a server.
Package Details
- Repository
- ionoscloud ionos-cloud/pulumi-ionoscloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
ionoscloud
Terraform Provider.