getHostPciDevice
The vsphere.getHostPciDevice
data source can be used to discover the DeviceID
of a vSphere host’s PCI device. This can then be used with
vsphere.VirtualMachine
’s pci_device_id
.
Example Usage
With Vendor ID And Class ID
using Pulumi;
using VSphere = Pulumi.VSphere;
class MyStack : Stack
{
public MyStack()
{
var datacenter = Output.Create(VSphere.GetDatacenter.InvokeAsync(new VSphere.GetDatacenterArgs
{
Name = "dc1",
}));
var host = datacenter.Apply(datacenter => Output.Create(VSphere.GetHost.InvokeAsync(new VSphere.GetHostArgs
{
Name = "esxi1",
DatacenterId = datacenter.Id,
})));
var dev = host.Apply(host => Output.Create(VSphere.GetHostPciDevice.InvokeAsync(new VSphere.GetHostPciDeviceArgs
{
HostId = host.Id,
ClassId = "123",
VendorId = "456",
})));
}
}
package main
import (
"github.com/pulumi/pulumi-vsphere/sdk/v2/go/vsphere"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
opt0 := "dc1"
datacenter, err := vsphere.LookupDatacenter(ctx, &vsphere.LookupDatacenterArgs{
Name: &opt0,
}, nil)
if err != nil {
return err
}
opt1 := "esxi1"
host, err := vsphere.LookupHost(ctx, &vsphere.LookupHostArgs{
Name: &opt1,
DatacenterId: datacenter.Id,
}, nil)
if err != nil {
return err
}
opt2 := "123"
opt3 := "456"
_, err = vsphere.GetHostPciDevice(ctx, &vsphere.GetHostPciDeviceArgs{
HostId: host.Id,
ClassId: &opt2,
VendorId: &opt3,
}, nil)
if err != nil {
return err
}
return nil
})
}
import pulumi
import pulumi_vsphere as vsphere
datacenter = vsphere.get_datacenter(name="dc1")
host = vsphere.get_host(name="esxi1",
datacenter_id=datacenter.id)
dev = vsphere.get_host_pci_device(host_id=host.id,
class_id="123",
vendor_id="456")
import * as pulumi from "@pulumi/pulumi";
import * as vsphere from "@pulumi/vsphere";
const datacenter = vsphere.getDatacenter({
name: "dc1",
});
const host = datacenter.then(datacenter => vsphere.getHost({
name: "esxi1",
datacenterId: datacenter.id,
}));
const dev = host.then(host => vsphere.getHostPciDevice({
hostId: host.id,
classId: 123,
vendorId: 456,
}));
Using getHostPciDevice
function getHostPciDevice(args: GetHostPciDeviceArgs, opts?: InvokeOptions): Promise<GetHostPciDeviceResult>
def get_host_pci_device(class_id: Optional[str] = None, host_id: Optional[str] = None, name_regex: Optional[str] = None, vendor_id: Optional[str] = None, opts: Optional[InvokeOptions] = None) -> GetHostPciDeviceResult
func GetHostPciDevice(ctx *Context, args *GetHostPciDeviceArgs, opts ...InvokeOption) (*GetHostPciDeviceResult, error)
Note: This function is named
GetHostPciDevice
in the Go SDK.
public static class GetHostPciDevice {
public static Task<GetHostPciDeviceResult> InvokeAsync(GetHostPciDeviceArgs args, InvokeOptions? opts = null)
}
The following arguments are supported:
- host_
id str The [managed object reference ID][docs-about-morefs] of a host.
- class_
id str The hexadecimal PCI device class ID
- name_
regex str A regular expression that will be used to match the host PCI device name.
- vendor_
id str The hexadecimal PCI device vendor ID.
getHostPciDevice Result
The following output properties are available:
Package Details
- Repository
- https://github.com/pulumi/pulumi-vsphere
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
vsphere
Terraform Provider.