
com.pulumi.azurenative.networkcloud.L2Network Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-native Show documentation
Show all versions of azure-native Show documentation
A native Pulumi package for creating and managing Azure resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.networkcloud;
import com.pulumi.azurenative.Utilities;
import com.pulumi.azurenative.networkcloud.L2NetworkArgs;
import com.pulumi.azurenative.networkcloud.outputs.ExtendedLocationResponse;
import com.pulumi.azurenative.networkcloud.outputs.SystemDataResponse;
import com.pulumi.core.Alias;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;
/**
* Azure REST API version: 2023-10-01-preview. Prior API version in Azure Native 1.x: 2022-12-12-preview.
*
* Other available API versions: 2023-07-01, 2024-06-01-preview, 2024-07-01.
*
* ## Example Usage
* ### Create or update L2 network
*
*
* {@code
* package generated_program;
*
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.networkcloud.L2Network;
* import com.pulumi.azurenative.networkcloud.L2NetworkArgs;
* import com.pulumi.azurenative.networkcloud.inputs.ExtendedLocationArgs;
* 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 l2Network = new L2Network("l2Network", L2NetworkArgs.builder()
* .extendedLocation(ExtendedLocationArgs.builder()
* .name("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName")
* .type("CustomLocation")
* .build())
* .hybridAksPluginType("DPDK")
* .interfaceName("eth0")
* .l2IsolationDomainId("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName")
* .l2NetworkName("l2NetworkName")
* .location("location")
* .resourceGroupName("resourceGroupName")
* .tags(Map.ofEntries(
* Map.entry("key1", "myvalue1"),
* Map.entry("key2", "myvalue2")
* ))
* .build());
*
* }
* }
*
* }
*
*
* ## Import
*
* An existing resource can be imported using its type token, name, and identifier, e.g.
*
* ```sh
* $ pulumi import azure-native:networkcloud:L2Network l2NetworkName /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/l2Networks/{l2NetworkName}
* ```
*
*/
@ResourceType(type="azure-native:networkcloud:L2Network")
public class L2Network extends com.pulumi.resources.CustomResource {
/**
* The list of resource IDs for the other Microsoft.NetworkCloud resources that have attached this network.
*
*/
@Export(name="associatedResourceIds", refs={List.class,String.class}, tree="[0,1]")
private Output> associatedResourceIds;
/**
* @return The list of resource IDs for the other Microsoft.NetworkCloud resources that have attached this network.
*
*/
public Output> associatedResourceIds() {
return this.associatedResourceIds;
}
/**
* The resource ID of the Network Cloud cluster this L2 network is associated with.
*
*/
@Export(name="clusterId", refs={String.class}, tree="[0]")
private Output clusterId;
/**
* @return The resource ID of the Network Cloud cluster this L2 network is associated with.
*
*/
public Output clusterId() {
return this.clusterId;
}
/**
* The more detailed status of the L2 network.
*
*/
@Export(name="detailedStatus", refs={String.class}, tree="[0]")
private Output detailedStatus;
/**
* @return The more detailed status of the L2 network.
*
*/
public Output detailedStatus() {
return this.detailedStatus;
}
/**
* The descriptive message about the current detailed status.
*
*/
@Export(name="detailedStatusMessage", refs={String.class}, tree="[0]")
private Output detailedStatusMessage;
/**
* @return The descriptive message about the current detailed status.
*
*/
public Output detailedStatusMessage() {
return this.detailedStatusMessage;
}
/**
* The extended location of the cluster associated with the resource.
*
*/
@Export(name="extendedLocation", refs={ExtendedLocationResponse.class}, tree="[0]")
private Output extendedLocation;
/**
* @return The extended location of the cluster associated with the resource.
*
*/
public Output extendedLocation() {
return this.extendedLocation;
}
/**
* Field Deprecated. These fields will be empty/omitted. The list of Hybrid AKS cluster resource ID(s) that are associated with this L2 network.
*
*/
@Export(name="hybridAksClustersAssociatedIds", refs={List.class,String.class}, tree="[0,1]")
private Output> hybridAksClustersAssociatedIds;
/**
* @return Field Deprecated. These fields will be empty/omitted. The list of Hybrid AKS cluster resource ID(s) that are associated with this L2 network.
*
*/
public Output> hybridAksClustersAssociatedIds() {
return this.hybridAksClustersAssociatedIds;
}
/**
* Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The network plugin type for Hybrid AKS.
*
*/
@Export(name="hybridAksPluginType", refs={String.class}, tree="[0]")
private Output* @Nullable */ String> hybridAksPluginType;
/**
* @return Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The network plugin type for Hybrid AKS.
*
*/
public Output> hybridAksPluginType() {
return Codegen.optional(this.hybridAksPluginType);
}
/**
* The default interface name for this L2 network in the virtual machine. This name can be overridden by the name supplied in the network attachment configuration of that virtual machine.
*
*/
@Export(name="interfaceName", refs={String.class}, tree="[0]")
private Output* @Nullable */ String> interfaceName;
/**
* @return The default interface name for this L2 network in the virtual machine. This name can be overridden by the name supplied in the network attachment configuration of that virtual machine.
*
*/
public Output> interfaceName() {
return Codegen.optional(this.interfaceName);
}
/**
* The resource ID of the Network Fabric l2IsolationDomain.
*
*/
@Export(name="l2IsolationDomainId", refs={String.class}, tree="[0]")
private Output l2IsolationDomainId;
/**
* @return The resource ID of the Network Fabric l2IsolationDomain.
*
*/
public Output l2IsolationDomainId() {
return this.l2IsolationDomainId;
}
/**
* The geo-location where the resource lives
*
*/
@Export(name="location", refs={String.class}, tree="[0]")
private Output location;
/**
* @return The geo-location where the resource lives
*
*/
public Output location() {
return this.location;
}
/**
* The name of the resource
*
*/
@Export(name="name", refs={String.class}, tree="[0]")
private Output name;
/**
* @return The name of the resource
*
*/
public Output name() {
return this.name;
}
/**
* The provisioning state of the L2 network.
*
*/
@Export(name="provisioningState", refs={String.class}, tree="[0]")
private Output provisioningState;
/**
* @return The provisioning state of the L2 network.
*
*/
public Output provisioningState() {
return this.provisioningState;
}
/**
* Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
@Export(name="systemData", refs={SystemDataResponse.class}, tree="[0]")
private Output systemData;
/**
* @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
public Output systemData() {
return this.systemData;
}
/**
* Resource tags.
*
*/
@Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]")
private Output* @Nullable */ Map> tags;
/**
* @return Resource tags.
*
*/
public Output>> tags() {
return Codegen.optional(this.tags);
}
/**
* The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
@Export(name="type", refs={String.class}, tree="[0]")
private Output type;
/**
* @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
public Output type() {
return this.type;
}
/**
* Field Deprecated. These fields will be empty/omitted. The list of virtual machine resource ID(s), excluding any Hybrid AKS virtual machines, that are currently using this L2 network.
*
*/
@Export(name="virtualMachinesAssociatedIds", refs={List.class,String.class}, tree="[0,1]")
private Output> virtualMachinesAssociatedIds;
/**
* @return Field Deprecated. These fields will be empty/omitted. The list of virtual machine resource ID(s), excluding any Hybrid AKS virtual machines, that are currently using this L2 network.
*
*/
public Output> virtualMachinesAssociatedIds() {
return this.virtualMachinesAssociatedIds;
}
/**
*
* @param name The _unique_ name of the resulting resource.
*/
public L2Network(java.lang.String name) {
this(name, L2NetworkArgs.Empty);
}
/**
*
* @param name The _unique_ name of the resulting resource.
* @param args The arguments to use to populate this resource's properties.
*/
public L2Network(java.lang.String name, L2NetworkArgs args) {
this(name, args, null);
}
/**
*
* @param name The _unique_ name of the resulting resource.
* @param args The arguments to use to populate this resource's properties.
* @param options A bag of options that control this resource's behavior.
*/
public L2Network(java.lang.String name, L2NetworkArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
super("azure-native:networkcloud:L2Network", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false);
}
private L2Network(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) {
super("azure-native:networkcloud:L2Network", name, null, makeResourceOptions(options, id), false);
}
private static L2NetworkArgs makeArgs(L2NetworkArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
if (options != null && options.getUrn().isPresent()) {
return null;
}
return args == null ? L2NetworkArgs.Empty : args;
}
private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) {
var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder()
.version(Utilities.getVersion())
.aliases(List.of(
Output.of(Alias.builder().type("azure-native:networkcloud/v20230701:L2Network").build()),
Output.of(Alias.builder().type("azure-native:networkcloud/v20231001preview:L2Network").build()),
Output.of(Alias.builder().type("azure-native:networkcloud/v20240601preview:L2Network").build()),
Output.of(Alias.builder().type("azure-native:networkcloud/v20240701:L2Network").build())
))
.build();
return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id);
}
/**
* Get an existing Host resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param options Optional settings to control the behavior of the CustomResource.
*/
public static L2Network get(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) {
return new L2Network(name, id, options);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy