StorageApplianceArgs

data class StorageApplianceArgs(val administratorCredentials: Output<AdministrativeCredentialsArgs>? = null, val extendedLocation: Output<ExtendedLocationArgs>? = null, val location: Output<String>? = null, val rackId: Output<String>? = null, val rackSlot: Output<Double>? = null, val resourceGroupName: Output<String>? = null, val serialNumber: Output<String>? = null, val storageApplianceName: Output<String>? = null, val storageApplianceSkuId: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<StorageApplianceArgs>

Uses Azure REST API version 2025-02-01. In version 2.x of the Azure Native provider, it used API version 2023-10-01-preview. Other available API versions: 2023-10-01-preview, 2024-06-01-preview, 2024-07-01, 2024-10-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native networkcloud [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create or update storage appliance

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var storageAppliance = new AzureNative.NetworkCloud.StorageAppliance("storageAppliance", new()
{
AdministratorCredentials = new AzureNative.NetworkCloud.Inputs.AdministrativeCredentialsArgs
{
Password = "{password}",
Username = "adminUser",
},
ExtendedLocation = new AzureNative.NetworkCloud.Inputs.ExtendedLocationArgs
{
Name = "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName",
Type = "CustomLocation",
},
Location = "location",
RackId = "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
RackSlot = 1,
ResourceGroupName = "resourceGroupName",
SerialNumber = "BM1219XXX",
StorageApplianceName = "storageApplianceName",
StorageApplianceSkuId = "684E-3B16-399E",
Tags =
{
{ "key1", "myvalue1" },
{ "key2", "myvalue2" },
},
});
});
package main
import (
networkcloud "github.com/pulumi/pulumi-azure-native-sdk/networkcloud/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := networkcloud.NewStorageAppliance(ctx, "storageAppliance", &networkcloud.StorageApplianceArgs{
AdministratorCredentials: &networkcloud.AdministrativeCredentialsArgs{
Password: pulumi.String("{password}"),
Username: pulumi.String("adminUser"),
},
ExtendedLocation: &networkcloud.ExtendedLocationArgs{
Name: pulumi.String("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"),
Type: pulumi.String("CustomLocation"),
},
Location: pulumi.String("location"),
RackId: pulumi.String("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName"),
RackSlot: pulumi.Float64(1),
ResourceGroupName: pulumi.String("resourceGroupName"),
SerialNumber: pulumi.String("BM1219XXX"),
StorageApplianceName: pulumi.String("storageApplianceName"),
StorageApplianceSkuId: pulumi.String("684E-3B16-399E"),
Tags: pulumi.StringMap{
"key1": pulumi.String("myvalue1"),
"key2": pulumi.String("myvalue2"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.networkcloud.StorageAppliance;
import com.pulumi.azurenative.networkcloud.StorageApplianceArgs;
import com.pulumi.azurenative.networkcloud.inputs.AdministrativeCredentialsArgs;
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 storageAppliance = new StorageAppliance("storageAppliance", StorageApplianceArgs.builder()
.administratorCredentials(AdministrativeCredentialsArgs.builder()
.password("{password}")
.username("adminUser")
.build())
.extendedLocation(ExtendedLocationArgs.builder()
.name("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName")
.type("CustomLocation")
.build())
.location("location")
.rackId("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName")
.rackSlot(1)
.resourceGroupName("resourceGroupName")
.serialNumber("BM1219XXX")
.storageApplianceName("storageApplianceName")
.storageApplianceSkuId("684E-3B16-399E")
.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.

$ pulumi import azure-native:networkcloud:StorageAppliance storageApplianceName /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/storageAppliances/{storageApplianceName}

Constructors

Link copied to clipboard
constructor(administratorCredentials: Output<AdministrativeCredentialsArgs>? = null, extendedLocation: Output<ExtendedLocationArgs>? = null, location: Output<String>? = null, rackId: Output<String>? = null, rackSlot: Output<Double>? = null, resourceGroupName: Output<String>? = null, serialNumber: Output<String>? = null, storageApplianceName: Output<String>? = null, storageApplianceSkuId: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

Link copied to clipboard

The credentials of the administrative interface on this storage appliance.

Link copied to clipboard

The extended location of the cluster associated with the resource.

Link copied to clipboard
val location: Output<String>? = null

The geo-location where the resource lives

Link copied to clipboard
val rackId: Output<String>? = null

The resource ID of the rack where this storage appliance resides.

Link copied to clipboard
val rackSlot: Output<Double>? = null

The slot the storage appliance is in the rack based on the BOM configuration.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val serialNumber: Output<String>? = null

The serial number for the storage appliance.

Link copied to clipboard
val storageApplianceName: Output<String>? = null

The name of the storage appliance.

Link copied to clipboard
val storageApplianceSkuId: Output<String>? = null

The SKU for the storage appliance.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Resource tags.

Functions

Link copied to clipboard
open override fun toJava(): StorageApplianceArgs