vsphere.getNetwork
Explore with Pulumi AI
The vsphere.getNetwork
data source can be used to discover the ID of a network
in vSphere. This can be any network that can be used as the backing for a
network interface for vsphere.VirtualMachine
or any other vSphere resource
that requires a network. This includes standard (host-based) port groups,
distributed port groups, or opaque networks such as those managed by NSX.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as vsphere from "@pulumi/vsphere";
const datacenter = vsphere.getDatacenter({
name: "dc-01",
});
const network = datacenter.then(datacenter => vsphere.getNetwork({
name: "VM Network",
datacenterId: datacenter.id,
}));
import pulumi
import pulumi_vsphere as vsphere
datacenter = vsphere.get_datacenter(name="dc-01")
network = vsphere.get_network(name="VM Network",
datacenter_id=datacenter.id)
package main
import (
"github.com/pulumi/pulumi-vsphere/sdk/v4/go/vsphere"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
datacenter, err := vsphere.LookupDatacenter(ctx, &vsphere.LookupDatacenterArgs{
Name: pulumi.StringRef("dc-01"),
}, nil)
if err != nil {
return err
}
_, err = vsphere.GetNetwork(ctx, &vsphere.GetNetworkArgs{
Name: "VM Network",
DatacenterId: pulumi.StringRef(datacenter.Id),
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using VSphere = Pulumi.VSphere;
return await Deployment.RunAsync(() =>
{
var datacenter = VSphere.GetDatacenter.Invoke(new()
{
Name = "dc-01",
});
var network = VSphere.GetNetwork.Invoke(new()
{
Name = "VM Network",
DatacenterId = datacenter.Apply(getDatacenterResult => getDatacenterResult.Id),
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vsphere.VsphereFunctions;
import com.pulumi.vsphere.inputs.GetDatacenterArgs;
import com.pulumi.vsphere.inputs.GetNetworkArgs;
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 datacenter = VsphereFunctions.getDatacenter(GetDatacenterArgs.builder()
.name("dc-01")
.build());
final var network = VsphereFunctions.getNetwork(GetNetworkArgs.builder()
.name("VM Network")
.datacenterId(datacenter.applyValue(getDatacenterResult -> getDatacenterResult.id()))
.build());
}
}
variables:
datacenter:
fn::invoke:
Function: vsphere:getDatacenter
Arguments:
name: dc-01
network:
fn::invoke:
Function: vsphere:getNetwork
Arguments:
name: VM Network
datacenterId: ${datacenter.id}
Using getNetwork
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getNetwork(args: GetNetworkArgs, opts?: InvokeOptions): Promise<GetNetworkResult>
function getNetworkOutput(args: GetNetworkOutputArgs, opts?: InvokeOptions): Output<GetNetworkResult>
def get_network(datacenter_id: Optional[str] = None,
distributed_virtual_switch_uuid: Optional[str] = None,
name: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetNetworkResult
def get_network_output(datacenter_id: Optional[pulumi.Input[str]] = None,
distributed_virtual_switch_uuid: Optional[pulumi.Input[str]] = None,
name: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetNetworkResult]
func GetNetwork(ctx *Context, args *GetNetworkArgs, opts ...InvokeOption) (*GetNetworkResult, error)
func GetNetworkOutput(ctx *Context, args *GetNetworkOutputArgs, opts ...InvokeOption) GetNetworkResultOutput
> Note: This function is named GetNetwork
in the Go SDK.
public static class GetNetwork
{
public static Task<GetNetworkResult> InvokeAsync(GetNetworkArgs args, InvokeOptions? opts = null)
public static Output<GetNetworkResult> Invoke(GetNetworkInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetNetworkResult> getNetwork(GetNetworkArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
function: vsphere:index/getNetwork:getNetwork
arguments:
# arguments dictionary
The following arguments are supported:
- Name string
- The name of the network. This can be a name or path.
- Datacenter
Id string - The managed object reference ID
of the datacenter the network is located in. This can be omitted if the
search path used in
name
is an absolute path. For default datacenters, use theid
attribute from an emptyvsphere.Datacenter
data source. - Distributed
Virtual stringSwitch Uuid - For distributed port group type network objects, the ID of the distributed virtual switch for which the port group belongs. It is useful to differentiate port groups with same name using the distributed virtual switch ID.
- Name string
- The name of the network. This can be a name or path.
- Datacenter
Id string - The managed object reference ID
of the datacenter the network is located in. This can be omitted if the
search path used in
name
is an absolute path. For default datacenters, use theid
attribute from an emptyvsphere.Datacenter
data source. - Distributed
Virtual stringSwitch Uuid - For distributed port group type network objects, the ID of the distributed virtual switch for which the port group belongs. It is useful to differentiate port groups with same name using the distributed virtual switch ID.
- name String
- The name of the network. This can be a name or path.
- datacenter
Id String - The managed object reference ID
of the datacenter the network is located in. This can be omitted if the
search path used in
name
is an absolute path. For default datacenters, use theid
attribute from an emptyvsphere.Datacenter
data source. - distributed
Virtual StringSwitch Uuid - For distributed port group type network objects, the ID of the distributed virtual switch for which the port group belongs. It is useful to differentiate port groups with same name using the distributed virtual switch ID.
- name string
- The name of the network. This can be a name or path.
- datacenter
Id string - The managed object reference ID
of the datacenter the network is located in. This can be omitted if the
search path used in
name
is an absolute path. For default datacenters, use theid
attribute from an emptyvsphere.Datacenter
data source. - distributed
Virtual stringSwitch Uuid - For distributed port group type network objects, the ID of the distributed virtual switch for which the port group belongs. It is useful to differentiate port groups with same name using the distributed virtual switch ID.
- name str
- The name of the network. This can be a name or path.
- datacenter_
id str - The managed object reference ID
of the datacenter the network is located in. This can be omitted if the
search path used in
name
is an absolute path. For default datacenters, use theid
attribute from an emptyvsphere.Datacenter
data source. - distributed_
virtual_ strswitch_ uuid - For distributed port group type network objects, the ID of the distributed virtual switch for which the port group belongs. It is useful to differentiate port groups with same name using the distributed virtual switch ID.
- name String
- The name of the network. This can be a name or path.
- datacenter
Id String - The managed object reference ID
of the datacenter the network is located in. This can be omitted if the
search path used in
name
is an absolute path. For default datacenters, use theid
attribute from an emptyvsphere.Datacenter
data source. - distributed
Virtual StringSwitch Uuid - For distributed port group type network objects, the ID of the distributed virtual switch for which the port group belongs. It is useful to differentiate port groups with same name using the distributed virtual switch ID.
getNetwork Result
The following output properties are available:
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Type string
- The managed object type for the discovered network. This will be one
of
DistributedVirtualPortgroup
for distributed port groups,Network
for standard (host-based) port groups, orOpaqueNetwork
for networks managed externally, such as those managed by NSX. - Datacenter
Id string - Distributed
Virtual stringSwitch Uuid
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Type string
- The managed object type for the discovered network. This will be one
of
DistributedVirtualPortgroup
for distributed port groups,Network
for standard (host-based) port groups, orOpaqueNetwork
for networks managed externally, such as those managed by NSX. - Datacenter
Id string - Distributed
Virtual stringSwitch Uuid
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- type String
- The managed object type for the discovered network. This will be one
of
DistributedVirtualPortgroup
for distributed port groups,Network
for standard (host-based) port groups, orOpaqueNetwork
for networks managed externally, such as those managed by NSX. - datacenter
Id String - distributed
Virtual StringSwitch Uuid
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- type string
- The managed object type for the discovered network. This will be one
of
DistributedVirtualPortgroup
for distributed port groups,Network
for standard (host-based) port groups, orOpaqueNetwork
for networks managed externally, such as those managed by NSX. - datacenter
Id string - distributed
Virtual stringSwitch Uuid
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- type str
- The managed object type for the discovered network. This will be one
of
DistributedVirtualPortgroup
for distributed port groups,Network
for standard (host-based) port groups, orOpaqueNetwork
for networks managed externally, such as those managed by NSX. - datacenter_
id str - distributed_
virtual_ strswitch_ uuid
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- type String
- The managed object type for the discovered network. This will be one
of
DistributedVirtualPortgroup
for distributed port groups,Network
for standard (host-based) port groups, orOpaqueNetwork
for networks managed externally, such as those managed by NSX. - datacenter
Id String - distributed
Virtual StringSwitch Uuid
Package Details
- Repository
- vSphere pulumi/pulumi-vsphere
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
vsphere
Terraform Provider.