All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.netapp.Volume Maven / Gradle / Ivy

There is a newer version: 2.82.0
Show newest version
// *** 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.netapp;

import com.pulumi.azurenative.Utilities;
import com.pulumi.azurenative.netapp.VolumeArgs;
import com.pulumi.azurenative.netapp.outputs.MountTargetPropertiesResponse;
import com.pulumi.azurenative.netapp.outputs.PlacementKeyValuePairsResponse;
import com.pulumi.azurenative.netapp.outputs.SystemDataResponse;
import com.pulumi.azurenative.netapp.outputs.VolumePropertiesResponseDataProtection;
import com.pulumi.azurenative.netapp.outputs.VolumePropertiesResponseExportPolicy;
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.Boolean;
import java.lang.Double;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * Volume resource
 * Azure REST API version: 2022-11-01. Prior API version in Azure Native 1.x: 2020-12-01.
 * 
 * Other available API versions: 2017-08-15, 2019-05-01, 2019-07-01, 2019-08-01, 2020-02-01, 2021-10-01, 2022-11-01-preview, 2023-05-01, 2023-05-01-preview, 2023-07-01, 2023-07-01-preview, 2023-11-01, 2023-11-01-preview, 2024-01-01, 2024-03-01, 2024-03-01-preview.
 * 
 * ## Example Usage
 * ### Volumes_CreateOrUpdate
 * 
 * 
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.netapp.Volume;
 * import com.pulumi.azurenative.netapp.VolumeArgs;
 * 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 volume = new Volume("volume", VolumeArgs.builder()
 *             .accountName("account1")
 *             .creationToken("my-unique-file-path")
 *             .location("eastus")
 *             .poolName("pool1")
 *             .resourceGroupName("myRG")
 *             .serviceLevel("Premium")
 *             .subnetId("/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3")
 *             .usageThreshold(107374182400)
 *             .volumeName("volume1")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* * ## Import * * An existing resource can be imported using its type token, name, and identifier, e.g. * * ```sh * $ pulumi import azure-native:netapp:Volume account1/pool1/volume1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName} * ``` * */ @ResourceType(type="azure-native:netapp:Volume") public class Volume extends com.pulumi.resources.CustomResource { /** * Actual throughput in MiB/s for auto qosType volumes calculated based on size and serviceLevel * */ @Export(name="actualThroughputMibps", refs={Double.class}, tree="[0]") private Output actualThroughputMibps; /** * @return Actual throughput in MiB/s for auto qosType volumes calculated based on size and serviceLevel * */ public Output actualThroughputMibps() { return this.actualThroughputMibps; } /** * Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose * */ @Export(name="avsDataStore", refs={String.class}, tree="[0]") private Output avsDataStore; /** * @return Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose * */ public Output> avsDataStore() { return Codegen.optional(this.avsDataStore); } /** * UUID v4 or resource identifier used to identify the Backup. * */ @Export(name="backupId", refs={String.class}, tree="[0]") private Output backupId; /** * @return UUID v4 or resource identifier used to identify the Backup. * */ public Output> backupId() { return Codegen.optional(this.backupId); } /** * Unique Baremetal Tenant Identifier. * */ @Export(name="baremetalTenantId", refs={String.class}, tree="[0]") private Output baremetalTenantId; /** * @return Unique Baremetal Tenant Identifier. * */ public Output baremetalTenantId() { return this.baremetalTenantId; } /** * Pool Resource Id used in case of creating a volume through volume group * */ @Export(name="capacityPoolResourceId", refs={String.class}, tree="[0]") private Output capacityPoolResourceId; /** * @return Pool Resource Id used in case of creating a volume through volume group * */ public Output> capacityPoolResourceId() { return Codegen.optional(this.capacityPoolResourceId); } /** * When a volume is being restored from another volume's snapshot, will show the percentage completion of this cloning process. When this value is empty/null there is no cloning process currently happening on this volume. This value will update every 5 minutes during cloning. * */ @Export(name="cloneProgress", refs={Integer.class}, tree="[0]") private Output cloneProgress; /** * @return When a volume is being restored from another volume's snapshot, will show the percentage completion of this cloning process. When this value is empty/null there is no cloning process currently happening on this volume. This value will update every 5 minutes during cloning. * */ public Output cloneProgress() { return this.cloneProgress; } /** * Specifies whether Cool Access(tiering) is enabled for the volume. * */ @Export(name="coolAccess", refs={Boolean.class}, tree="[0]") private Output coolAccess; /** * @return Specifies whether Cool Access(tiering) is enabled for the volume. * */ public Output> coolAccess() { return Codegen.optional(this.coolAccess); } /** * Specifies the number of days after which data that is not accessed by clients will be tiered. * */ @Export(name="coolnessPeriod", refs={Integer.class}, tree="[0]") private Output coolnessPeriod; /** * @return Specifies the number of days after which data that is not accessed by clients will be tiered. * */ public Output> coolnessPeriod() { return Codegen.optional(this.coolnessPeriod); } /** * A unique file path for the volume. Used when creating mount targets * */ @Export(name="creationToken", refs={String.class}, tree="[0]") private Output creationToken; /** * @return A unique file path for the volume. Used when creating mount targets * */ public Output creationToken() { return this.creationToken; } /** * DataProtection type volumes include an object containing details of the replication * */ @Export(name="dataProtection", refs={VolumePropertiesResponseDataProtection.class}, tree="[0]") private Output dataProtection; /** * @return DataProtection type volumes include an object containing details of the replication * */ public Output> dataProtection() { return Codegen.optional(this.dataProtection); } /** * Data store resource unique identifier * */ @Export(name="dataStoreResourceId", refs={List.class,String.class}, tree="[0,1]") private Output> dataStoreResourceId; /** * @return Data store resource unique identifier * */ public Output> dataStoreResourceId() { return this.dataStoreResourceId; } /** * Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies. * */ @Export(name="defaultGroupQuotaInKiBs", refs={Double.class}, tree="[0]") private Output defaultGroupQuotaInKiBs; /** * @return Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies. * */ public Output> defaultGroupQuotaInKiBs() { return Codegen.optional(this.defaultGroupQuotaInKiBs); } /** * Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies . * */ @Export(name="defaultUserQuotaInKiBs", refs={Double.class}, tree="[0]") private Output defaultUserQuotaInKiBs; /** * @return Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies . * */ public Output> defaultUserQuotaInKiBs() { return Codegen.optional(this.defaultUserQuotaInKiBs); } /** * If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false * */ @Export(name="deleteBaseSnapshot", refs={Boolean.class}, tree="[0]") private Output deleteBaseSnapshot; /** * @return If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false * */ public Output> deleteBaseSnapshot() { return Codegen.optional(this.deleteBaseSnapshot); } /** * Flag indicating whether subvolume operations are enabled on the volume * */ @Export(name="enableSubvolumes", refs={String.class}, tree="[0]") private Output enableSubvolumes; /** * @return Flag indicating whether subvolume operations are enabled on the volume * */ public Output> enableSubvolumes() { return Codegen.optional(this.enableSubvolumes); } /** * Specifies if the volume is encrypted or not. Only available on volumes created or updated after 2022-01-01. * */ @Export(name="encrypted", refs={Boolean.class}, tree="[0]") private Output encrypted; /** * @return Specifies if the volume is encrypted or not. Only available on volumes created or updated after 2022-01-01. * */ public Output encrypted() { return this.encrypted; } /** * Source of key used to encrypt data in volume. Applicable if NetApp account has encryption.keySource = 'Microsoft.KeyVault'. Possible values (case-insensitive) are: 'Microsoft.NetApp, Microsoft.KeyVault' * */ @Export(name="encryptionKeySource", refs={String.class}, tree="[0]") private Output encryptionKeySource; /** * @return Source of key used to encrypt data in volume. Applicable if NetApp account has encryption.keySource = 'Microsoft.KeyVault'. Possible values (case-insensitive) are: 'Microsoft.NetApp, Microsoft.KeyVault' * */ public Output> encryptionKeySource() { return Codegen.optional(this.encryptionKeySource); } /** * A unique read-only string that changes whenever the resource is updated. * */ @Export(name="etag", refs={String.class}, tree="[0]") private Output etag; /** * @return A unique read-only string that changes whenever the resource is updated. * */ public Output etag() { return this.etag; } /** * Set of export policy rules * */ @Export(name="exportPolicy", refs={VolumePropertiesResponseExportPolicy.class}, tree="[0]") private Output exportPolicy; /** * @return Set of export policy rules * */ public Output> exportPolicy() { return Codegen.optional(this.exportPolicy); } /** * Flag indicating whether file access logs are enabled for the volume, based on active diagnostic settings present on the volume. * */ @Export(name="fileAccessLogs", refs={String.class}, tree="[0]") private Output fileAccessLogs; /** * @return Flag indicating whether file access logs are enabled for the volume, based on active diagnostic settings present on the volume. * */ public Output fileAccessLogs() { return this.fileAccessLogs; } /** * Unique FileSystem Identifier. * */ @Export(name="fileSystemId", refs={String.class}, tree="[0]") private Output fileSystemId; /** * @return Unique FileSystem Identifier. * */ public Output fileSystemId() { return this.fileSystemId; } /** * Specifies if default quota is enabled for the volume. * */ @Export(name="isDefaultQuotaEnabled", refs={Boolean.class}, tree="[0]") private Output isDefaultQuotaEnabled; /** * @return Specifies if default quota is enabled for the volume. * */ public Output> isDefaultQuotaEnabled() { return Codegen.optional(this.isDefaultQuotaEnabled); } /** * Specifies whether volume is a Large Volume or Regular Volume. * */ @Export(name="isLargeVolume", refs={Boolean.class}, tree="[0]") private Output isLargeVolume; /** * @return Specifies whether volume is a Large Volume or Regular Volume. * */ public Output> isLargeVolume() { return Codegen.optional(this.isLargeVolume); } /** * Restoring * */ @Export(name="isRestoring", refs={Boolean.class}, tree="[0]") private Output isRestoring; /** * @return Restoring * */ public Output> isRestoring() { return Codegen.optional(this.isRestoring); } /** * Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later * */ @Export(name="kerberosEnabled", refs={Boolean.class}, tree="[0]") private Output kerberosEnabled; /** * @return Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later * */ public Output> kerberosEnabled() { return Codegen.optional(this.kerberosEnabled); } /** * The resource ID of private endpoint for KeyVault. It must reside in the same VNET as the volume. Only applicable if encryptionKeySource = 'Microsoft.KeyVault'. * */ @Export(name="keyVaultPrivateEndpointResourceId", refs={String.class}, tree="[0]") private Output keyVaultPrivateEndpointResourceId; /** * @return The resource ID of private endpoint for KeyVault. It must reside in the same VNET as the volume. Only applicable if encryptionKeySource = 'Microsoft.KeyVault'. * */ public Output> keyVaultPrivateEndpointResourceId() { return Codegen.optional(this.keyVaultPrivateEndpointResourceId); } /** * Specifies whether LDAP is enabled or not for a given NFS volume. * */ @Export(name="ldapEnabled", refs={Boolean.class}, tree="[0]") private Output ldapEnabled; /** * @return Specifies whether LDAP is enabled or not for a given NFS volume. * */ public Output> ldapEnabled() { return Codegen.optional(this.ldapEnabled); } /** * 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; } /** * Maximum number of files allowed. Needs a service request in order to be changed. Only allowed to be changed if volume quota is more than 4TiB. * */ @Export(name="maximumNumberOfFiles", refs={Double.class}, tree="[0]") private Output maximumNumberOfFiles; /** * @return Maximum number of files allowed. Needs a service request in order to be changed. Only allowed to be changed if volume quota is more than 4TiB. * */ public Output maximumNumberOfFiles() { return this.maximumNumberOfFiles; } /** * List of mount targets * */ @Export(name="mountTargets", refs={List.class,MountTargetPropertiesResponse.class}, tree="[0,1]") private Output> mountTargets; /** * @return List of mount targets * */ public Output> mountTargets() { return this.mountTargets; } /** * 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; } /** * Basic network, or Standard features available to the volume. * */ @Export(name="networkFeatures", refs={String.class}, tree="[0]") private Output networkFeatures; /** * @return Basic network, or Standard features available to the volume. * */ public Output> networkFeatures() { return Codegen.optional(this.networkFeatures); } /** * Network Sibling Set ID for the the group of volumes sharing networking resources. * */ @Export(name="networkSiblingSetId", refs={String.class}, tree="[0]") private Output networkSiblingSetId; /** * @return Network Sibling Set ID for the the group of volumes sharing networking resources. * */ public Output networkSiblingSetId() { return this.networkSiblingSetId; } /** * Id of the snapshot or backup that the volume is restored from. * */ @Export(name="originatingResourceId", refs={String.class}, tree="[0]") private Output originatingResourceId; /** * @return Id of the snapshot or backup that the volume is restored from. * */ public Output originatingResourceId() { return this.originatingResourceId; } /** * Application specific placement rules for the particular volume * */ @Export(name="placementRules", refs={List.class,PlacementKeyValuePairsResponse.class}, tree="[0,1]") private Output> placementRules; /** * @return Application specific placement rules for the particular volume * */ public Output>> placementRules() { return Codegen.optional(this.placementRules); } /** * Set of protocol types, default NFSv3, CIFS for SMB protocol * */ @Export(name="protocolTypes", refs={List.class,String.class}, tree="[0,1]") private Output> protocolTypes; /** * @return Set of protocol types, default NFSv3, CIFS for SMB protocol * */ public Output>> protocolTypes() { return Codegen.optional(this.protocolTypes); } /** * The availability zone where the volume is provisioned. This refers to the logical availability zone where the volume resides. * */ @Export(name="provisionedAvailabilityZone", refs={String.class}, tree="[0]") private Output provisionedAvailabilityZone; /** * @return The availability zone where the volume is provisioned. This refers to the logical availability zone where the volume resides. * */ public Output provisionedAvailabilityZone() { return this.provisionedAvailabilityZone; } /** * Azure lifecycle management * */ @Export(name="provisioningState", refs={String.class}, tree="[0]") private Output provisioningState; /** * @return Azure lifecycle management * */ public Output provisioningState() { return this.provisioningState; } /** * Proximity placement group associated with the volume * */ @Export(name="proximityPlacementGroup", refs={String.class}, tree="[0]") private Output proximityPlacementGroup; /** * @return Proximity placement group associated with the volume * */ public Output> proximityPlacementGroup() { return Codegen.optional(this.proximityPlacementGroup); } /** * The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol * */ @Export(name="securityStyle", refs={String.class}, tree="[0]") private Output securityStyle; /** * @return The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol * */ public Output> securityStyle() { return Codegen.optional(this.securityStyle); } /** * The service level of the file system * */ @Export(name="serviceLevel", refs={String.class}, tree="[0]") private Output serviceLevel; /** * @return The service level of the file system * */ public Output> serviceLevel() { return Codegen.optional(this.serviceLevel); } /** * Enables access based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume * */ @Export(name="smbAccessBasedEnumeration", refs={String.class}, tree="[0]") private Output smbAccessBasedEnumeration; /** * @return Enables access based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume * */ public Output> smbAccessBasedEnumeration() { return Codegen.optional(this.smbAccessBasedEnumeration); } /** * Enables continuously available share property for smb volume. Only applicable for SMB volume * */ @Export(name="smbContinuouslyAvailable", refs={Boolean.class}, tree="[0]") private Output smbContinuouslyAvailable; /** * @return Enables continuously available share property for smb volume. Only applicable for SMB volume * */ public Output> smbContinuouslyAvailable() { return Codegen.optional(this.smbContinuouslyAvailable); } /** * Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later * */ @Export(name="smbEncryption", refs={Boolean.class}, tree="[0]") private Output smbEncryption; /** * @return Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later * */ public Output> smbEncryption() { return Codegen.optional(this.smbEncryption); } /** * Enables non browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume * */ @Export(name="smbNonBrowsable", refs={String.class}, tree="[0]") private Output smbNonBrowsable; /** * @return Enables non browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume * */ public Output> smbNonBrowsable() { return Codegen.optional(this.smbNonBrowsable); } /** * If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true). * */ @Export(name="snapshotDirectoryVisible", refs={Boolean.class}, tree="[0]") private Output snapshotDirectoryVisible; /** * @return If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true). * */ public Output> snapshotDirectoryVisible() { return Codegen.optional(this.snapshotDirectoryVisible); } /** * UUID v4 or resource identifier used to identify the Snapshot. * */ @Export(name="snapshotId", refs={String.class}, tree="[0]") private Output snapshotId; /** * @return UUID v4 or resource identifier used to identify the Snapshot. * */ public Output> snapshotId() { return Codegen.optional(this.snapshotId); } /** * Provides storage to network proximity information for the volume. * */ @Export(name="storageToNetworkProximity", refs={String.class}, tree="[0]") private Output storageToNetworkProximity; /** * @return Provides storage to network proximity information for the volume. * */ public Output storageToNetworkProximity() { return this.storageToNetworkProximity; } /** * The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes * */ @Export(name="subnetId", refs={String.class}, tree="[0]") private Output subnetId; /** * @return The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes * */ public Output subnetId() { return this.subnetId; } /** * 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; } /** * T2 network information * */ @Export(name="t2Network", refs={String.class}, tree="[0]") private Output t2Network; /** * @return T2 network information * */ public Output t2Network() { return this.t2Network; } /** * Resource tags. * */ @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") private Output> tags; /** * @return Resource tags. * */ public Output>> tags() { return Codegen.optional(this.tags); } @Export(name="throughputMibps", refs={Double.class}, tree="[0]") private Output throughputMibps; public Output> throughputMibps() { return Codegen.optional(this.throughputMibps); } /** * 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; } /** * UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users. * */ @Export(name="unixPermissions", refs={String.class}, tree="[0]") private Output unixPermissions; /** * @return UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users. * */ public Output> unixPermissions() { return Codegen.optional(this.unixPermissions); } /** * Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB, 500Tib for LargeVolume. Specified in bytes. * */ @Export(name="usageThreshold", refs={Double.class}, tree="[0]") private Output usageThreshold; /** * @return Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB, 500Tib for LargeVolume. Specified in bytes. * */ public Output usageThreshold() { return this.usageThreshold; } /** * Volume Group Name * */ @Export(name="volumeGroupName", refs={String.class}, tree="[0]") private Output volumeGroupName; /** * @return Volume Group Name * */ public Output volumeGroupName() { return this.volumeGroupName; } /** * Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log * */ @Export(name="volumeSpecName", refs={String.class}, tree="[0]") private Output volumeSpecName; /** * @return Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log * */ public Output> volumeSpecName() { return Codegen.optional(this.volumeSpecName); } /** * What type of volume is this. For destination volumes in Cross Region Replication, set type to DataProtection * */ @Export(name="volumeType", refs={String.class}, tree="[0]") private Output volumeType; /** * @return What type of volume is this. For destination volumes in Cross Region Replication, set type to DataProtection * */ public Output> volumeType() { return Codegen.optional(this.volumeType); } /** * Availability Zone * */ @Export(name="zones", refs={List.class,String.class}, tree="[0,1]") private Output> zones; /** * @return Availability Zone * */ public Output>> zones() { return Codegen.optional(this.zones); } /** * * @param name The _unique_ name of the resulting resource. */ public Volume(java.lang.String name) { this(name, VolumeArgs.Empty); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ public Volume(java.lang.String name, VolumeArgs 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 Volume(java.lang.String name, VolumeArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:netapp:Volume", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } private Volume(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:netapp:Volume", name, null, makeResourceOptions(options, id), false); } private static VolumeArgs makeArgs(VolumeArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } return args == null ? VolumeArgs.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:netapp/v20170815:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20190501:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20190601:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20190701:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20190801:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20191001:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20191101:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20200201:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20200301:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20200501:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20200601:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20200701:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20200801:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20200901:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20201101:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20201201:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20210201:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20210401:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20210401preview:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20210601:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20210801:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20211001:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20220101:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20220301:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20220501:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20220901:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20221101:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20221101preview:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20230501:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20230501preview:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20230701:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20230701preview:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20231101:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20231101preview:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20240101:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20240301:Volume").build()), Output.of(Alias.builder().type("azure-native:netapp/v20240301preview:Volume").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 Volume get(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { return new Volume(name, id, options); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy