import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Volume Group Backup resource in Oracle Cloud Infrastructure Core service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/iaas/latest/VolumeGroupBackup * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/ * * Creates a new backup volume group of the specified volume group. * For more information, see [Volume Groups](https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/volumegroups.htm). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testVolumeGroupBackup = new oci.core.VolumeGroupBackup("test_volume_group_backup", { * volumeGroupId: testVolumeGroup.id, * compartmentId: compartmentId, * definedTags: { * "Operations.CostCenter": "42", * }, * displayName: volumeGroupBackupDisplayName, * freeformTags: { * Department: "Finance", * }, * isIndefiniteRetentionEnabled: volumeGroupBackupIsIndefiniteRetentionEnabled === "true", * isPreventDeletionEnabled: volumeGroupBackupIsPreventDeletionEnabled === "true", * isRetentionLockEnabled: volumeGroupBackupIsRetentionLockEnabled === "true", * retentionPeriod: { * retentionTimeAmount: Number(volumeGroupBackupRetentionPeriodRetentionTimeAmount), * retentionTimeUnit: volumeGroupBackupRetentionPeriodRetentionTimeUnit, * }, * type: volumeGroupBackupType, * }); * ``` * * ## Import * * VolumeGroupBackups can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Core/volumeGroupBackup:VolumeGroupBackup test_volume_group_backup "id" * ``` */ export declare class VolumeGroupBackup extends pulumi.CustomResource { /** * Get an existing VolumeGroupBackup 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?: VolumeGroupBackupState, opts?: pulumi.CustomResourceOptions): VolumeGroupBackup; /** * Returns true if the given object is an instance of VolumeGroupBackup. 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 VolumeGroupBackup; /** * (Updatable) The OCID of the compartment that will contain the volume group backup. This parameter is optional, by default backup will be created in the same compartment and source volume group. */ readonly compartmentId: pulumi.Output; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. */ readonly displayName: pulumi.Output; /** * The date and time the volume group backup will expire and be automatically deleted. Format defined by [RFC3339](https://tools.ietf.org/html/rfc3339). This parameter will always be present for volume group backups that were created automatically by a scheduled-backup policy. For manually created volume group backups, it will be absent, signifying that there is no expiration time and the backup will last forever until manually deleted. */ readonly expirationTime: pulumi.Output; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. */ readonly isIndefiniteRetentionEnabled: pulumi.Output; /** * (Updatable) Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. */ readonly isPreventDeletionEnabled: pulumi.Output; /** * (Updatable) feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. */ readonly isRetentionLockEnabled: pulumi.Output; /** * (Updatable) This field is used to define the retention period for backups. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. */ readonly retentionPeriod: pulumi.Output; /** * The aggregate size of the volume group backup, in GBs. */ readonly sizeInGbs: pulumi.Output; /** * The aggregate size of the volume group backup, in MBs. */ readonly sizeInMbs: pulumi.Output; /** * Details of the volume group backup source in the cloud. */ readonly sourceDetails: pulumi.Output; /** * Specifies whether the volume group backup was created manually, or via scheduled backup policy. */ readonly sourceType: pulumi.Output; /** * The OCID of the source volume group backup. */ readonly sourceVolumeGroupBackupId: pulumi.Output; /** * The current state of a volume group backup. */ readonly state: pulumi.Output; /** * The date and time the volume group backup was created. This is the time the actual point-in-time image of the volume group data was taken. Format defined by [RFC3339](https://tools.ietf.org/html/rfc3339). */ readonly timeCreated: pulumi.Output; /** * The date and time the request to create the volume group backup was received. Format defined by [RFC3339](https://tools.ietf.org/html/rfc3339). */ readonly timeRequestReceived: pulumi.Output; /** * The date and time when a backup’s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. */ readonly timeRetentionExpiresAt: pulumi.Output; /** * The type of backup to create. If omitted, defaults to incremental. * * Allowed values are : * * FULL * * INCREMENTAL */ readonly type: pulumi.Output; /** * The aggregate size used by the volume group backup, in GBs. It is typically smaller than `sizeInGbs`, depending on the space consumed on the volume group and whether the volume backup is full or incremental. */ readonly uniqueSizeInGbs: pulumi.Output; /** * The aggregate size used by the volume group backup, in MBs. It is typically smaller than `sizeInMbs`, depending on the space consumed on the volume group and whether the volume backup is full or incremental. */ readonly uniqueSizeInMbs: pulumi.Output; /** * OCIDs for the volume backups in this volume group backup. */ readonly volumeBackupIds: pulumi.Output; /** * The OCID of the volume group that needs to be backed up. */ readonly volumeGroupId: pulumi.Output; /** * Create a VolumeGroupBackup 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?: VolumeGroupBackupArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering VolumeGroupBackup resources. */ export interface VolumeGroupBackupState { /** * (Updatable) The OCID of the compartment that will contain the volume group backup. This parameter is optional, by default backup will be created in the same compartment and source volume group. */ compartmentId?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. */ displayName?: pulumi.Input; /** * The date and time the volume group backup will expire and be automatically deleted. Format defined by [RFC3339](https://tools.ietf.org/html/rfc3339). This parameter will always be present for volume group backups that were created automatically by a scheduled-backup policy. For manually created volume group backups, it will be absent, signifying that there is no expiration time and the backup will last forever until manually deleted. */ expirationTime?: pulumi.Input; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. */ isIndefiniteRetentionEnabled?: pulumi.Input; /** * (Updatable) Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. */ isPreventDeletionEnabled?: pulumi.Input; /** * (Updatable) feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. */ isRetentionLockEnabled?: pulumi.Input; /** * (Updatable) This field is used to define the retention period for backups. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. */ retentionPeriod?: pulumi.Input; /** * The aggregate size of the volume group backup, in GBs. */ sizeInGbs?: pulumi.Input; /** * The aggregate size of the volume group backup, in MBs. */ sizeInMbs?: pulumi.Input; /** * Details of the volume group backup source in the cloud. */ sourceDetails?: pulumi.Input; /** * Specifies whether the volume group backup was created manually, or via scheduled backup policy. */ sourceType?: pulumi.Input; /** * The OCID of the source volume group backup. */ sourceVolumeGroupBackupId?: pulumi.Input; /** * The current state of a volume group backup. */ state?: pulumi.Input; /** * The date and time the volume group backup was created. This is the time the actual point-in-time image of the volume group data was taken. Format defined by [RFC3339](https://tools.ietf.org/html/rfc3339). */ timeCreated?: pulumi.Input; /** * The date and time the request to create the volume group backup was received. Format defined by [RFC3339](https://tools.ietf.org/html/rfc3339). */ timeRequestReceived?: pulumi.Input; /** * The date and time when a backup’s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. */ timeRetentionExpiresAt?: pulumi.Input; /** * The type of backup to create. If omitted, defaults to incremental. * * Allowed values are : * * FULL * * INCREMENTAL */ type?: pulumi.Input; /** * The aggregate size used by the volume group backup, in GBs. It is typically smaller than `sizeInGbs`, depending on the space consumed on the volume group and whether the volume backup is full or incremental. */ uniqueSizeInGbs?: pulumi.Input; /** * The aggregate size used by the volume group backup, in MBs. It is typically smaller than `sizeInMbs`, depending on the space consumed on the volume group and whether the volume backup is full or incremental. */ uniqueSizeInMbs?: pulumi.Input; /** * OCIDs for the volume backups in this volume group backup. */ volumeBackupIds?: pulumi.Input[] | undefined>; /** * The OCID of the volume group that needs to be backed up. */ volumeGroupId?: pulumi.Input; } /** * The set of arguments for constructing a VolumeGroupBackup resource. */ export interface VolumeGroupBackupArgs { /** * (Updatable) The OCID of the compartment that will contain the volume group backup. This parameter is optional, by default backup will be created in the same compartment and source volume group. */ compartmentId?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. */ displayName?: pulumi.Input; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. */ isIndefiniteRetentionEnabled?: pulumi.Input; /** * (Updatable) Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. */ isPreventDeletionEnabled?: pulumi.Input; /** * (Updatable) feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. */ isRetentionLockEnabled?: pulumi.Input; /** * (Updatable) This field is used to define the retention period for backups. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. */ retentionPeriod?: pulumi.Input; /** * Details of the volume group backup source in the cloud. */ sourceDetails?: pulumi.Input; /** * The type of backup to create. If omitted, defaults to incremental. * * Allowed values are : * * FULL * * INCREMENTAL */ type?: pulumi.Input; /** * The OCID of the volume group that needs to be backed up. */ volumeGroupId?: pulumi.Input; } //# sourceMappingURL=volumeGroupBackup.d.ts.map