import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages a HPC Cache. * * !> **Note:** The `azure.hpc.Cache` resource has been deprecated because the service is retiring on 2025-09-30. This resource will be removed in v5.0 of the AzureRM Provider. See https://aka.ms/hpccacheretirement for more information. * * > **Note:** By request of the service team the provider no longer automatically registers the `Microsoft.StorageCache` Resource Provider for this resource. To register it you can run `az provider register --namespace 'Microsoft.StorageCache'`. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = new azure.core.ResourceGroup("example", { * name: "example-resources", * location: "West Europe", * }); * const exampleVirtualNetwork = new azure.network.VirtualNetwork("example", { * name: "examplevn", * addressSpaces: ["10.0.0.0/16"], * location: example.location, * resourceGroupName: example.name, * }); * const exampleSubnet = new azure.network.Subnet("example", { * name: "examplesubnet", * resourceGroupName: example.name, * virtualNetworkName: exampleVirtualNetwork.name, * addressPrefixes: ["10.0.1.0/24"], * }); * const exampleCache = new azure.hpc.Cache("example", { * name: "examplehpccache", * resourceGroupName: example.name, * location: example.location, * cacheSizeInGb: 3072, * subnetId: exampleSubnet.id, * skuName: "Standard_2G", * }); * ``` * * ## API Providers * * * This resource uses the following Azure API Providers: * * * `Microsoft.StorageCache` - 2023-05-01 * * ## Import * * HPC Caches can be imported using the `resource id`, e.g. * * ```sh * $ pulumi import azure:hpc/cache:Cache example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroupName/providers/Microsoft.StorageCache/caches/cacheName * ``` */ export declare class Cache extends pulumi.CustomResource { /** * Get an existing Cache 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 state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: CacheState, opts?: pulumi.CustomResourceOptions): Cache; /** * Returns true if the given object is an instance of Cache. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Cache; /** * Specifies whether the HPC Cache automatically rotates Encryption Key to the latest version. */ readonly automaticallyRotateKeyToLatestEnabled: pulumi.Output; /** * The size of the HPC Cache, in GB. Possible values are `3072`, `6144`, `12288`, `21623`, `24576`, `43246`, `49152` and `86491`. Changing this forces a new resource to be created. * * > **Note:** The `21623`, `43246` and `86491` sizes are restricted to read only resources. */ readonly cacheSizeInGb: pulumi.Output; /** * A `defaultAccessPolicy` block as defined below. */ readonly defaultAccessPolicy: pulumi.Output; /** * A `directoryActiveDirectory` block as defined below. */ readonly directoryActiveDirectory: pulumi.Output; /** * A `directoryFlatFile` block as defined below. */ readonly directoryFlatFile: pulumi.Output; /** * A `directoryLdap` block as defined below. * * > **Note:** Only one of `directoryActiveDirectory`, `directoryFlatFile` and `directoryLdap` can be set. */ readonly directoryLdap: pulumi.Output; /** * A `dns` block as defined below. */ readonly dns: pulumi.Output; /** * An `identity` block as defined below. Changing this forces a new resource to be created. */ readonly identity: pulumi.Output; /** * The ID of the Key Vault Key which should be used to encrypt the data in this HPC Cache. */ readonly keyVaultKeyId: pulumi.Output; /** * Specifies the supported Azure Region where the HPC Cache should be created. Changing this forces a new resource to be created. */ readonly location: pulumi.Output; /** * A list of IP Addresses where the HPC Cache can be mounted. */ readonly mountAddresses: pulumi.Output; /** * The IPv4 maximum transmission unit configured for the subnet of the HPC Cache. Possible values range from 576 - 1500. Defaults to `1500`. */ readonly mtu: pulumi.Output; /** * The name of the HPC Cache. Changing this forces a new resource to be created. */ readonly name: pulumi.Output; /** * The NTP server IP Address or FQDN for the HPC Cache. Defaults to `time.windows.com`. */ readonly ntpServer: pulumi.Output; /** * The name of the Resource Group in which to create the HPC Cache. Changing this forces a new resource to be created. */ readonly resourceGroupName: pulumi.Output; /** * The SKU of HPC Cache to use. Possible values are (ReadWrite) - `Standard_2G`, `Standard_4G` `Standard_8G` or (ReadOnly) - `Standard_L4_5G`, `Standard_L9G`, and `Standard_L16G`. Changing this forces a new resource to be created. * * > **Note:** The read-only SKUs have restricted cache sizes. `Standard_L4_5G` must be set to `21623`. `Standard_L9G` to `43246` and `Standard_L16G` to `86491`. */ readonly skuName: pulumi.Output; /** * The ID of the Subnet for the HPC Cache. Changing this forces a new resource to be created. */ readonly subnetId: pulumi.Output; /** * A mapping of tags to assign to the HPC Cache. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Create a Cache resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: CacheArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Cache resources. */ export interface CacheState { /** * Specifies whether the HPC Cache automatically rotates Encryption Key to the latest version. */ automaticallyRotateKeyToLatestEnabled?: pulumi.Input; /** * The size of the HPC Cache, in GB. Possible values are `3072`, `6144`, `12288`, `21623`, `24576`, `43246`, `49152` and `86491`. Changing this forces a new resource to be created. * * > **Note:** The `21623`, `43246` and `86491` sizes are restricted to read only resources. */ cacheSizeInGb?: pulumi.Input; /** * A `defaultAccessPolicy` block as defined below. */ defaultAccessPolicy?: pulumi.Input; /** * A `directoryActiveDirectory` block as defined below. */ directoryActiveDirectory?: pulumi.Input; /** * A `directoryFlatFile` block as defined below. */ directoryFlatFile?: pulumi.Input; /** * A `directoryLdap` block as defined below. * * > **Note:** Only one of `directoryActiveDirectory`, `directoryFlatFile` and `directoryLdap` can be set. */ directoryLdap?: pulumi.Input; /** * A `dns` block as defined below. */ dns?: pulumi.Input; /** * An `identity` block as defined below. Changing this forces a new resource to be created. */ identity?: pulumi.Input; /** * The ID of the Key Vault Key which should be used to encrypt the data in this HPC Cache. */ keyVaultKeyId?: pulumi.Input; /** * Specifies the supported Azure Region where the HPC Cache should be created. Changing this forces a new resource to be created. */ location?: pulumi.Input; /** * A list of IP Addresses where the HPC Cache can be mounted. */ mountAddresses?: pulumi.Input[]>; /** * The IPv4 maximum transmission unit configured for the subnet of the HPC Cache. Possible values range from 576 - 1500. Defaults to `1500`. */ mtu?: pulumi.Input; /** * The name of the HPC Cache. Changing this forces a new resource to be created. */ name?: pulumi.Input; /** * The NTP server IP Address or FQDN for the HPC Cache. Defaults to `time.windows.com`. */ ntpServer?: pulumi.Input; /** * The name of the Resource Group in which to create the HPC Cache. Changing this forces a new resource to be created. */ resourceGroupName?: pulumi.Input; /** * The SKU of HPC Cache to use. Possible values are (ReadWrite) - `Standard_2G`, `Standard_4G` `Standard_8G` or (ReadOnly) - `Standard_L4_5G`, `Standard_L9G`, and `Standard_L16G`. Changing this forces a new resource to be created. * * > **Note:** The read-only SKUs have restricted cache sizes. `Standard_L4_5G` must be set to `21623`. `Standard_L9G` to `43246` and `Standard_L16G` to `86491`. */ skuName?: pulumi.Input; /** * The ID of the Subnet for the HPC Cache. Changing this forces a new resource to be created. */ subnetId?: pulumi.Input; /** * A mapping of tags to assign to the HPC Cache. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; }>; } /** * The set of arguments for constructing a Cache resource. */ export interface CacheArgs { /** * Specifies whether the HPC Cache automatically rotates Encryption Key to the latest version. */ automaticallyRotateKeyToLatestEnabled?: pulumi.Input; /** * The size of the HPC Cache, in GB. Possible values are `3072`, `6144`, `12288`, `21623`, `24576`, `43246`, `49152` and `86491`. Changing this forces a new resource to be created. * * > **Note:** The `21623`, `43246` and `86491` sizes are restricted to read only resources. */ cacheSizeInGb: pulumi.Input; /** * A `defaultAccessPolicy` block as defined below. */ defaultAccessPolicy?: pulumi.Input; /** * A `directoryActiveDirectory` block as defined below. */ directoryActiveDirectory?: pulumi.Input; /** * A `directoryFlatFile` block as defined below. */ directoryFlatFile?: pulumi.Input; /** * A `directoryLdap` block as defined below. * * > **Note:** Only one of `directoryActiveDirectory`, `directoryFlatFile` and `directoryLdap` can be set. */ directoryLdap?: pulumi.Input; /** * A `dns` block as defined below. */ dns?: pulumi.Input; /** * An `identity` block as defined below. Changing this forces a new resource to be created. */ identity?: pulumi.Input; /** * The ID of the Key Vault Key which should be used to encrypt the data in this HPC Cache. */ keyVaultKeyId?: pulumi.Input; /** * Specifies the supported Azure Region where the HPC Cache should be created. Changing this forces a new resource to be created. */ location?: pulumi.Input; /** * The IPv4 maximum transmission unit configured for the subnet of the HPC Cache. Possible values range from 576 - 1500. Defaults to `1500`. */ mtu?: pulumi.Input; /** * The name of the HPC Cache. Changing this forces a new resource to be created. */ name?: pulumi.Input; /** * The NTP server IP Address or FQDN for the HPC Cache. Defaults to `time.windows.com`. */ ntpServer?: pulumi.Input; /** * The name of the Resource Group in which to create the HPC Cache. Changing this forces a new resource to be created. */ resourceGroupName: pulumi.Input; /** * The SKU of HPC Cache to use. Possible values are (ReadWrite) - `Standard_2G`, `Standard_4G` `Standard_8G` or (ReadOnly) - `Standard_L4_5G`, `Standard_L9G`, and `Standard_L16G`. Changing this forces a new resource to be created. * * > **Note:** The read-only SKUs have restricted cache sizes. `Standard_L4_5G` must be set to `21623`. `Standard_L9G` to `43246` and `Standard_L16G` to `86491`. */ skuName: pulumi.Input; /** * The ID of the Subnet for the HPC Cache. Changing this forces a new resource to be created. */ subnetId: pulumi.Input; /** * A mapping of tags to assign to the HPC Cache. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; }>; }