import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../types"; /** * Creates a VMware vRealize Automation block device resource. * * ## Example Usage * ### S * * The following example shows how to create a block device resource. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vra from "@pulumiverse/vra"; * * const disk1 = new vra.blockdevice.BlockDevice("disk1", { * capacityInGb: 10, * projectId: _var.project_id, * persistent: true, * }); * ``` */ export declare class BlockDevice extends pulumi.CustomResource { /** * Get an existing BlockDevice 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?: BlockDeviceState, opts?: pulumi.CustomResourceOptions): BlockDevice; /** * Returns true if the given object is an instance of BlockDevice. 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 BlockDevice; /** * Capacity of block device in GB. */ readonly capacityInGb: pulumi.Output; /** * Storage, network, and extensibility constraints to be applied when provisioning through the project. */ readonly constraints: pulumi.Output; /** * Date when entity was created. Date and time format is ISO 8601 and UTC. */ readonly createdAt: pulumi.Output; /** * Additional custom properties that may be used to extend the machine. */ readonly customProperties: pulumi.Output<{ [key: string]: any; }>; /** * ID of deployment associated with resource. */ readonly deploymentId: pulumi.Output; /** * Describes machine within the scope of your organization and is not propagated to the cloud. */ readonly description: pulumi.Output; /** * Content of a disk, base64 encoded. */ readonly diskContentBase64: pulumi.Output; /** * Indicates whether block device should be encrypted or not. */ readonly encrypted: pulumi.Output; /** * Indicates whether snapshots of block devices should be included in the state. Applies only to first class block devices. */ readonly expandSnapshots: pulumi.Output; /** * External entity ID on provider side. */ readonly externalId: pulumi.Output; /** * External regionId of resource. */ readonly externalRegionId: pulumi.Output; /** * External zoneId of resource. */ readonly externalZoneId: pulumi.Output; /** * HATEOAS of the entity */ readonly links: pulumi.Output; /** * Human-friendly name used as an identifier in APIs that support this option. */ readonly name: pulumi.Output; /** * ID of organization that block device snapshot belongs to. */ readonly orgId: pulumi.Output; /** * Email of block device snapshot owner. */ readonly owner: pulumi.Output; /** * Indicates whether block device survives a delete action. */ readonly persistent: pulumi.Output; /** * ID of project that current user belongs to. */ readonly projectId: pulumi.Output; /** * Indicates if the disk must be completely destroyed or should be kept in the system. Valid only for block devices with ‘persistent’ set to true. Used to destroy the resource. */ readonly purge: pulumi.Output; /** * Represents a machine snapshot. */ readonly snapshots: pulumi.Output; /** * URI to use for block device. Example: ami-0d4cfd66 */ readonly sourceReference: pulumi.Output; /** * Status of block device. */ readonly status: pulumi.Output; /** * Set of tag keys and values to apply to the resource instance. * Example:[ { "key" : "vmware.enumeration.type", "value": "nebsBlock" } ] */ readonly tags: pulumi.Output; /** * Date when entity was last updated. Date and time format is ISO 8601 and UTC. */ readonly updatedAt: pulumi.Output; /** * Create a BlockDevice 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: BlockDeviceArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering BlockDevice resources. */ export interface BlockDeviceState { /** * Capacity of block device in GB. */ capacityInGb?: pulumi.Input; /** * Storage, network, and extensibility constraints to be applied when provisioning through the project. */ constraints?: pulumi.Input[]>; /** * Date when entity was created. Date and time format is ISO 8601 and UTC. */ createdAt?: pulumi.Input; /** * Additional custom properties that may be used to extend the machine. */ customProperties?: pulumi.Input<{ [key: string]: any; }>; /** * ID of deployment associated with resource. */ deploymentId?: pulumi.Input; /** * Describes machine within the scope of your organization and is not propagated to the cloud. */ description?: pulumi.Input; /** * Content of a disk, base64 encoded. */ diskContentBase64?: pulumi.Input; /** * Indicates whether block device should be encrypted or not. */ encrypted?: pulumi.Input; /** * Indicates whether snapshots of block devices should be included in the state. Applies only to first class block devices. */ expandSnapshots?: pulumi.Input; /** * External entity ID on provider side. */ externalId?: pulumi.Input; /** * External regionId of resource. */ externalRegionId?: pulumi.Input; /** * External zoneId of resource. */ externalZoneId?: pulumi.Input; /** * HATEOAS of the entity */ links?: pulumi.Input[]>; /** * Human-friendly name used as an identifier in APIs that support this option. */ name?: pulumi.Input; /** * ID of organization that block device snapshot belongs to. */ orgId?: pulumi.Input; /** * Email of block device snapshot owner. */ owner?: pulumi.Input; /** * Indicates whether block device survives a delete action. */ persistent?: pulumi.Input; /** * ID of project that current user belongs to. */ projectId?: pulumi.Input; /** * Indicates if the disk must be completely destroyed or should be kept in the system. Valid only for block devices with ‘persistent’ set to true. Used to destroy the resource. */ purge?: pulumi.Input; /** * Represents a machine snapshot. */ snapshots?: pulumi.Input[]>; /** * URI to use for block device. Example: ami-0d4cfd66 */ sourceReference?: pulumi.Input; /** * Status of block device. */ status?: pulumi.Input; /** * Set of tag keys and values to apply to the resource instance. * Example:[ { "key" : "vmware.enumeration.type", "value": "nebsBlock" } ] */ tags?: pulumi.Input[]>; /** * Date when entity was last updated. Date and time format is ISO 8601 and UTC. */ updatedAt?: pulumi.Input; } /** * The set of arguments for constructing a BlockDevice resource. */ export interface BlockDeviceArgs { /** * Capacity of block device in GB. */ capacityInGb: pulumi.Input; /** * Storage, network, and extensibility constraints to be applied when provisioning through the project. */ constraints?: pulumi.Input[]>; /** * Additional custom properties that may be used to extend the machine. */ customProperties?: pulumi.Input<{ [key: string]: any; }>; /** * ID of deployment associated with resource. */ deploymentId?: pulumi.Input; /** * Describes machine within the scope of your organization and is not propagated to the cloud. */ description?: pulumi.Input; /** * Content of a disk, base64 encoded. */ diskContentBase64?: pulumi.Input; /** * Indicates whether block device should be encrypted or not. */ encrypted?: pulumi.Input; /** * Indicates whether snapshots of block devices should be included in the state. Applies only to first class block devices. */ expandSnapshots?: pulumi.Input; /** * Human-friendly name used as an identifier in APIs that support this option. */ name?: pulumi.Input; /** * Indicates whether block device survives a delete action. */ persistent?: pulumi.Input; /** * ID of project that current user belongs to. */ projectId: pulumi.Input; /** * Indicates if the disk must be completely destroyed or should be kept in the system. Valid only for block devices with ‘persistent’ set to true. Used to destroy the resource. */ purge?: pulumi.Input; /** * URI to use for block device. Example: ami-0d4cfd66 */ sourceReference?: pulumi.Input; /** * Set of tag keys and values to apply to the resource instance. * Example:[ { "key" : "vmware.enumeration.type", "value": "nebsBlock" } ] */ tags?: pulumi.Input[]>; }