@@ -1122,6 +1122,12 @@ export interface SubProtectionPolicy {
1122
1122
schedulePolicy ?: SchedulePolicyUnion ;
1123
1123
/** Retention policy with the details on backup copy retention ranges. */
1124
1124
retentionPolicy ?: RetentionPolicyUnion ;
1125
+ /**
1126
+ * Tiering policy to automatically move RPs to another tier.
1127
+ * Key is Target Tier, defined in RecoveryPointTierType enum.
1128
+ * Tiering policy specifies the criteria to move RP to the target tier.
1129
+ */
1130
+ tieringPolicy ?: { [ propertyName : string ] : TieringPolicy } ;
1125
1131
}
1126
1132
1127
1133
/** Base class for backup schedule. */
@@ -1140,10 +1146,40 @@ export interface RetentionPolicy {
1140
1146
retentionPolicyType : "LongTermRetentionPolicy" | "SimpleRetentionPolicy" ;
1141
1147
}
1142
1148
1149
+ /**
1150
+ * Tiering Policy for a target tier.
1151
+ * If the policy is not specified for a given target tier, service retains the existing configured tiering policy for that tier
1152
+ */
1153
+ export interface TieringPolicy {
1154
+ /**
1155
+ * Tiering Mode to control automatic tiering of recovery points. Supported values are:
1156
+ * 1. TierRecommended: Tier all recovery points recommended to be tiered
1157
+ * 2. TierAfter: Tier all recovery points after a fixed period, as specified in duration + durationType below.
1158
+ * 3. DoNotTier: Do not tier any recovery points
1159
+ */
1160
+ tieringMode ?: TieringMode ;
1161
+ /**
1162
+ * Number of days/weeks/months/years to retain backups in current tier before tiering.
1163
+ * Used only if TieringMode is set to TierAfter
1164
+ */
1165
+ duration ?: number ;
1166
+ /**
1167
+ * Retention duration type: days/weeks/months/years
1168
+ * Used only if TieringMode is set to TierAfter
1169
+ */
1170
+ durationType ?: RetentionDurationType ;
1171
+ }
1172
+
1143
1173
/** Additional information on Azure IaaS VM specific backup item. */
1144
1174
export interface AzureIaaSVMProtectedItemExtendedInfo {
1145
- /** The oldest backup copy available for this backup item. */
1175
+ /** The oldest backup copy available for this backup item across all tiers . */
1146
1176
oldestRecoveryPoint ?: Date ;
1177
+ /** The oldest backup copy available for this backup item in vault tier */
1178
+ oldestRecoveryPointInVault ?: Date ;
1179
+ /** The oldest backup copy available for this backup item in archive tier */
1180
+ oldestRecoveryPointInArchive ?: Date ;
1181
+ /** The latest backup copy available for this backup item in archive tier */
1182
+ newestRecoveryPointInArchive ?: Date ;
1147
1183
/** Number of backup copies available for this backup item. */
1148
1184
recoveryPointCount ?: number ;
1149
1185
/** Specifies if backup policy associated with the backup item is inconsistent. */
@@ -1273,8 +1309,14 @@ export interface AzureStorageJobTaskDetails {
1273
1309
1274
1310
/** Additional information on Azure Workload for SQL specific backup item. */
1275
1311
export interface AzureVmWorkloadProtectedItemExtendedInfo {
1276
- /** The oldest backup copy available for this backup item. */
1312
+ /** The oldest backup copy available for this backup item across all tiers . */
1277
1313
oldestRecoveryPoint ?: Date ;
1314
+ /** The oldest backup copy available for this backup item in vault tier */
1315
+ oldestRecoveryPointInVault ?: Date ;
1316
+ /** The oldest backup copy available for this backup item in archive tier */
1317
+ oldestRecoveryPointInArchive ?: Date ;
1318
+ /** The latest backup copy available for this backup item in archive tier */
1319
+ newestRecoveryPointInArchive ?: Date ;
1278
1320
/** Number of backup copies available for this backup item. */
1279
1321
recoveryPointCount ?: number ;
1280
1322
/** Indicates consistency of policy object and policy applied to this backup item. */
@@ -2678,6 +2720,12 @@ export type AzureIaaSVMProtectionPolicy = ProtectionPolicy & {
2678
2720
schedulePolicy ?: SchedulePolicyUnion ;
2679
2721
/** Retention policy with the details on backup copy retention ranges. */
2680
2722
retentionPolicy ?: RetentionPolicyUnion ;
2723
+ /**
2724
+ * Tiering policy to automatically move RPs to another tier
2725
+ * Key is Target Tier, defined in RecoveryPointTierType enum.
2726
+ * Tiering policy specifies the criteria to move RP to the target tier.
2727
+ */
2728
+ tieringPolicy ?: { [ propertyName : string ] : TieringPolicy } ;
2681
2729
/** Instant RP retention policy range in days */
2682
2730
instantRpRetentionRangeInDays ?: number ;
2683
2731
/** TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time". */
@@ -4241,6 +4289,48 @@ export enum KnownPolicyType {
4241
4289
*/
4242
4290
export type PolicyType = string ;
4243
4291
4292
+ /** Known values of {@link TieringMode} that the service accepts. */
4293
+ export enum KnownTieringMode {
4294
+ Invalid = "Invalid" ,
4295
+ TierRecommended = "TierRecommended" ,
4296
+ TierAfter = "TierAfter" ,
4297
+ DoNotTier = "DoNotTier"
4298
+ }
4299
+
4300
+ /**
4301
+ * Defines values for TieringMode. \
4302
+ * {@link KnownTieringMode} can be used interchangeably with TieringMode,
4303
+ * this enum contains the known values that the service supports.
4304
+ * ### Known values supported by the service
4305
+ * **Invalid** \
4306
+ * **TierRecommended** \
4307
+ * **TierAfter** \
4308
+ * **DoNotTier**
4309
+ */
4310
+ export type TieringMode = string ;
4311
+
4312
+ /** Known values of {@link RetentionDurationType} that the service accepts. */
4313
+ export enum KnownRetentionDurationType {
4314
+ Invalid = "Invalid" ,
4315
+ Days = "Days" ,
4316
+ Weeks = "Weeks" ,
4317
+ Months = "Months" ,
4318
+ Years = "Years"
4319
+ }
4320
+
4321
+ /**
4322
+ * Defines values for RetentionDurationType. \
4323
+ * {@link KnownRetentionDurationType} can be used interchangeably with RetentionDurationType,
4324
+ * this enum contains the known values that the service supports.
4325
+ * ### Known values supported by the service
4326
+ * **Invalid** \
4327
+ * **Days** \
4328
+ * **Weeks** \
4329
+ * **Months** \
4330
+ * **Years**
4331
+ */
4332
+ export type RetentionDurationType = string ;
4333
+
4244
4334
/** Known values of {@link HealthStatus} that the service accepts. */
4245
4335
export enum KnownHealthStatus {
4246
4336
Passed = "Passed" ,
@@ -4447,28 +4537,6 @@ export enum KnownRestorePointQueryType {
4447
4537
*/
4448
4538
export type RestorePointQueryType = string ;
4449
4539
4450
- /** Known values of {@link RetentionDurationType} that the service accepts. */
4451
- export enum KnownRetentionDurationType {
4452
- Invalid = "Invalid" ,
4453
- Days = "Days" ,
4454
- Weeks = "Weeks" ,
4455
- Months = "Months" ,
4456
- Years = "Years"
4457
- }
4458
-
4459
- /**
4460
- * Defines values for RetentionDurationType. \
4461
- * {@link KnownRetentionDurationType} can be used interchangeably with RetentionDurationType,
4462
- * this enum contains the known values that the service supports.
4463
- * ### Known values supported by the service
4464
- * **Invalid** \
4465
- * **Days** \
4466
- * **Weeks** \
4467
- * **Months** \
4468
- * **Years**
4469
- */
4470
- export type RetentionDurationType = string ;
4471
-
4472
4540
/** Known values of {@link JobStatus} that the service accepts. */
4473
4541
export enum KnownJobStatus {
4474
4542
Invalid = "Invalid" ,
0 commit comments