azure-rest-api-specs icon indicating copy to clipboard operation
azure-rest-api-specs copied to clipboard

Adding new API version 2022-10-01-preview (base stable 2022-05-01)

Open mayankagg9722 opened this issue 1 year ago • 54 comments

ARM API Information (Control Plane)

MSFT employees can try out our new experience at OpenAPI Hub - one location for using our validation tools and finding your workflow. Azure 1st Party Service can try out the Shift Left experience to initiate API design review from ADO code repo. If you are interested, may request engineering support by filling in with the form https://aka.ms/ShiftLeftSupportForm.

Changelog

Add a changelog entry for this PR by answering the following questions:

  1. What's the purpose of the update?
    • [ ] new service onboarding
    • [x] new API version
    • [ ] update existing version for new feature
    • [ ] update existing version to fix swagger quality issue in s360
    • [ ] Other, please clarify
  2. When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
  3. When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.
  4. By default, Azure SDKs of all languages (.NET/Python/Java/JavaScript for both management-plane SDK and data-plane SDK, Go for management-plane SDK only ) MUST be refreshed with/after swagger of new version is published. If you prefer NOT to refresh any specific SDK language upon swagger updates in the current PR, please leave details with justification here.

Contribution checklist (MS Employees Only):

If any further question about AME onboarding or validation tools, please view the FAQ.

ARM API Review Checklist

Applicability: :warning:

If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

  • Change to data plane APIs
  • Adding new properties
  • All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

  • [x] Check this box if any of the following apply to the PR so that the label "ARMReview" and "WaitForARMFeedback" will be added by bot to kick off ARM API Review. Missing to check this box in the following scenario may result in delays to the ARM manifest review and deployment.

    • Adding a new service
    • Adding new API(s)
    • Adding a new API version -[ ] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits. You can use OpenAPIHub to initialize the PR for adding a new version. For more details refer to the wiki.
  • [x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

  • [x] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist

If you have any breaking changes as defined in the Breaking Change Policy, request approval from the Breaking Change Review Board.

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Additional details on the process and office hours are on the Breaking Change Wiki.

NOTE: To update API(s) in public preview for over 1 year (refer to Retirement of Previews)

Please follow the link to find more details on PR review process.

mayankagg9722 avatar Oct 03 '22 06:10 mayankagg9722

Hi, @mayankagg9722 Thanks for your PR. I am workflow bot for review process. Here are some small tips.

  • Please ensure to do self-check against checklists in first PR comment.
  • PR assignee is the person auto-assigned and responsible for your current PR reviewing and merging.
  • For specs comparison cross API versions, Use API Specs Comparison Report Generator
  • If there is CI failure(s), to fix CI error(s) is mandatory for PR merging; or you need to provide justification in PR comment for explanation. How to fix?
  • Any feedback about review process or workflow bot, pls contact swagger and tools team. [email protected]

    Swagger Validation Report

    ️️✔️BreakingChange succeeded [Detail] [Expand]
    There are no breaking changes.
    ️⚠️Breaking Change(Cross-Version): 16 Warnings warning [Detail]
    compared swaggers (via Oad v0.9.7)] new version base version
    dataprotection.json 2022-10-01-preview(7c4bb1b) 2022-05-01(main)
    dataprotection.json 2022-10-01-preview(7c4bb1b) 2022-09-01-preview(main)

    The following breaking changes are detected by comparison with the latest preview version:

    Rule Message
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/{resourceId}/providers/Microsoft.DataProtection/backupInstances' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L1016:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/deletedBackupInstances' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L2460:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/deletedBackupInstances/{backupInstanceName}' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L2508:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/deletedBackupInstances/{backupInstanceName}/undelete' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L2560:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupResourceGuardProxies' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3552:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupResourceGuardProxies/{resourceGuardProxyName}' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3599:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupResourceGuardProxies/{resourceGuardProxyName}/unlockDelete' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3754:5
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'ImmutabilitySettings' removed or renamed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3359:3
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3814:3
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'SecuritySettings' removed or renamed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3359:3
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3814:3
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'SoftDeleteSettings' removed or renamed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3359:3
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3814:3
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'ResourceGuardProxyBase' removed or renamed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3359:3
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3814:3
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'ResourceGuardProxyBaseResource' removed or renamed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3359:3
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3814:3
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'UnlockDeleteRequest' removed or renamed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3359:3
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L3814:3
    :warning: 1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'ResourceId' removed or renamed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L6646:3
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L7179:3
    :warning: 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'securitySettings' renamed or removed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L4328:7
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L4724:7
    :warning: 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'securitySettings' renamed or removed?
    New: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L5589:7
    Old: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json#L6072:7
    ️️✔️CredScan succeeded [Detail] [Expand]
    There is no credential detected.
    ️⚠️LintDiff: 3 Warnings warning [Detail]
    compared tags (via openapi-validator v1.13.0) new version base version
    package-2022-10-preview package-2022-10-preview(7c4bb1b) default(main)

    [must fix]The following errors/warnings are introduced by current PR:

    Rule Message Related RPC [For API reviewers]
    :warning: R3018 - EnumInsteadOfBoolean Booleans are not descriptive and make them hard to use. Consider using string enums with allowed set of values defined. Property: snapshotVolumes
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L4058
    :warning: R3018 - EnumInsteadOfBoolean Booleans are not descriptive and make them hard to use. Consider using string enums with allowed set of values defined. Property: includeClusterScopeResources
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L4062
    :warning: R3018 - EnumInsteadOfBoolean Booleans are not descriptive and make them hard to use. Consider using string enums with allowed set of values defined. Property: includeClusterScopeResources
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L5764


    The following errors/warnings exist before current PR submission:

    Only 30 items are listed, please refer to log for more details.

    Rule Message
    R4037 - MissingTypeObject The schema 'AzureBackupFindRestorableTimeRangesRequestResource' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3549
    R4037 - MissingTypeObject The schema 'AzureBackupFindRestorableTimeRangesResponseResource' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3580
    R4037 - MissingTypeObject The schema 'AzureBackupRecoveryPointResource' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3841
    R4037 - MissingTypeObject The schema 'BackupInstanceResource' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L4231
    R4037 - MissingTypeObject The schema 'BackupVaultResource' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L4394
    R4037 - MissingTypeObject The schema 'BaseBackupPolicyResource' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L4454
    R4037 - MissingTypeObject The schema 'CloudError' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L4654
    R4037 - MissingTypeObject The schema 'Error' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L5168
    R4037 - MissingTypeObject The schema 'ErrorAdditionalInfo' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L5206
    R4037 - MissingTypeObject The schema 'additionalDetails' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L5428
    R4037 - MissingTypeObject The schema 'additionalDetails' is considered an object but without a 'type:object', please add the missing 'type:object'.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L5476
    R4039 - ParametersOrder The parameters:operationId,location should be kept in the same order as they present in the path.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L64
    :warning: R1001 - OperationIdNounVerb Per the Noun_Verb convention for Operation Ids, the noun 'BackupInstances' should not appear after the underscore. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L1375
    :warning: R1001 - OperationIdNounVerb Per the Noun_Verb convention for Operation Ids, the noun 'BackupInstances' should not appear after the underscore. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L1993
    :warning: R1001 - OperationIdNounVerb Per the Noun_Verb convention for Operation Ids, the noun 'ResourceGuards' should not appear after the underscore. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2774
    :warning: R1001 - OperationIdNounVerb Per the Noun_Verb convention for Operation Ids, the noun 'ResourceGuards' should not appear after the underscore. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3089
    :warning: R1003 - ListInOperationName Since operation 'BackupVaultsGetInSubscription' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L27
    :warning: R1003 - ListInOperationName Since operation 'BackupVaultsGetInResourceGroup' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L289
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetResourcesInSubscription' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2424
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetResourcesInResourceGroup' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2466
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetDisableSoftDeleteRequestsObjects' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2722
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetDeleteResourceGuardProxyRequestsObjects' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2774
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetBackupSecurityPINRequestsObjects' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2826
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetDeleteProtectedItemRequestsObjects' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2878
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetUpdateProtectionPolicyRequestsObjects' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2930
    :warning: R1003 - ListInOperationName Since operation 'ResourceGuardsGetUpdateProtectedItemRequestsObjects' response has model definition 'x-ms-pageable', it should be of the form 'list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2982
    :warning: R1006 - PutInOperationName 'PUT' operation 'ResourceGuards_Put' should use method name 'Create'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2511
    :warning: R1007 - PatchInOperationName 'PATCH' operation 'ResourceGuards_Patch' should use method name 'Update'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change.
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L2664
    :warning: R2001 - AvoidNestedProperties Consider using x-ms-client-flatten to provide a better end user experience
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3588
    :warning: R2001 - AvoidNestedProperties Consider using x-ms-client-flatten to provide a better end user experience
    Location: Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json#L3761
    ️❌Avocado: 1 Errors, 0 Warnings failed [Detail]
    Rule Message
    MISSING_APIS_IN_DEFAULT_TAG The default tag does not contain all APIs in this RP. Please make sure the missing API swaggers are in the default tag.
    readme: specification/dataprotection/resource-manager/readme.md
    json: Microsoft.DataProtection/preview/2022-09-01-preview/dataprotection.json
    ️️✔️ApiReadinessCheck succeeded [Detail] [Expand]
    ️❌~[Staging] ServiceAPIReadinessTest: 35 Errors, 0 Warnings failed [Detail]

    Tag package-2022-10-preview; Prod region: Deployed

    Test run on region: westcentralus; Operation coverage: total: 58, untested: 0, failed: 30, passed: 28

    Service API Readiness Test failed. Check pipeline artifact for detail report.

    Only 30 items are listed, please refer to log for more details.

    Rule Message
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: securitySettings"
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: securitySettings"
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: securitySettings"
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: securitySettings"
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: securitySettings"
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter PolicyName in request is invalid"
    CLIENT_ERROR "statusCode: 404,
    errorCode: UserErrorGenericResourceNotFound,
    errorMessage: Azure resource does not exist. Please make sure required resources exist. If the issue persists,
    contact Microsoft support."
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: innerError"
    SERVER_ERROR "statusCode: 500,
    errorCode: CloudInternalError,
    errorMessage: Microsoft Azure Backup encountered an internal error."
    CLIENT_ERROR "statusCode: 403,
    errorCode: LinkedAuthorizationFailed,
    errorMessage: The client '40d50ab1-9f2d-4b56-be5f-29f2f174e493' with object id '40d50ab1-9f2d-4b56-be5f-29f2f174e493' has permission to perform action 'Microsoft.DataProtection/backupVaults/backupInstances/restore/action' on scope '/subscriptions/db5eb68e-73e2-4fa8-b18a-46cd1be4cce5/resourceGroups/apiTest-owRnTz-20967/providers/Microsoft.DataProtection/backupVaults/vaultnameatgevn/backupInstances/backupinst6yld3l'; however,
    it does not have permission to perform action 'read' on the linked scope(s) '/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb' or the linked scope(s) are invalid."
    CLIENT_ERROR "statusCode: 403,
    errorCode: LinkedAuthorizationFailed,
    errorMessage: The client '40d50ab1-9f2d-4b56-be5f-29f2f174e493' with object id '40d50ab1-9f2d-4b56-be5f-29f2f174e493' has permission to perform action 'Microsoft.DataProtection/backupVaults/validateForBackup/action' on scope '/subscriptions/db5eb68e-73e2-4fa8-b18a-46cd1be4cce5/resourceGroups/apiTest-owRnTz-20967/providers/Microsoft.DataProtection/backupVaults/vaultnameatgevn'; however,
    it does not have permission to perform action 'read' on the linked scope(s) '/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest' or the linked scope(s) are invalid."
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter BackupInstance in request is invalid"
    CLIENT_ERROR "statusCode: 403,
    errorCode: LinkedAuthorizationFailed,
    errorMessage: The client '40d50ab1-9f2d-4b56-be5f-29f2f174e493' with object id '40d50ab1-9f2d-4b56-be5f-29f2f174e493' has permission to perform action 'Microsoft.DataProtection/backupVaults/backupInstances/validateRestore/action' on scope '/subscriptions/db5eb68e-73e2-4fa8-b18a-46cd1be4cce5/resourceGroups/apiTest-owRnTz-20967/providers/Microsoft.DataProtection/backupVaults/vaultnameatgevn/backupInstances/backupinst6yld3l'; however,
    it does not have permission to perform action 'read' on the linked scope(s) '/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb' or the linked scope(s) are invalid."
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter BackupInstance in request is invalid"
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter BackupInstance in request is invalid"
    SERVER_ERROR "statusCode: 500,
    errorCode: CloudInternalError,
    errorMessage: Microsoft Azure Backup encountered an internal error. Wait for a few minutes and then try the operation again. If the issue persists,
    please contact Microsoft support."
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: innerError"
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter BackupInstance in request is invalid"
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter BackupInstance in request is invalid"
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter BackupInstance in request is invalid"
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter DataSourceType in request is invalid"
    CLIENT_ERROR "statusCode: 404,
    errorCode: UserErrorGenericResourceNotFound,
    errorMessage: Azure resource does not exist. Please make sure required resources exist. If the issue persists,
    contact Microsoft support."
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: innerError"
    SERVER_ERROR "statusCode: 500,
    errorCode: CloudInternalError,
    errorMessage: Microsoft Azure Backup encountered an internal error."
    SERVER_ERROR "statusCode: 500,
    errorCode: CloudInternalError,
    errorMessage: Microsoft Azure Backup encountered an internal error."
    CLIENT_ERROR "statusCode: 400,
    errorCode: UserErrorInvalidRequestParameter,
    errorMessage: Parameter backupInstanceName in request is invalid"
    CLIENT_ERROR "statusCode: 404,
    errorCode: undefined,
    errorMessage: undefined"
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: value"
    CLIENT_ERROR "statusCode: 404,
    errorCode: UserErrorGenericResourceNotFound,
    errorMessage: Azure resource does not exist. Please make sure required resources exist. If the issue persists,
    contact Microsoft support."
    OBJECT_ADDITIONAL_PROPERTIES "Additional properties not allowed: innerError"
    ️️✔️ModelValidation succeeded [Detail] [Expand]
    Validation passes for ModelValidation.
    ️️✔️SemanticValidation succeeded [Detail] [Expand]
    Validation passes for SemanticValidation.
    ️️✔️PoliCheck succeeded [Detail] [Expand]
    Validation passed for PoliCheck.
    ️⚠️SDK Track2 Validation: 1 Warnings warning [Detail]
    • The following tags are being changed in this PR
      • "https://github.com/Azure/azure-rest-api-specs/blob/7c4bb1b574fba1336cb3d3b31c2afadc55df80e9/specification/dataprotection/resource-manager/readme.md#tag-package-2022-10-preview">dataprotection/resource-manager/readme.md#package-2022-10-preview
    The following errors/warnings are introduced by current PR:
    Rule Message
    :warning: UnkownSecurityScheme "readme":"dataprotection/resource-manager/readme.md",
    "tag":"package-2022-10-preview",
    "details":"Security scheme azure_auth is unknown and will not be processed. Only supported types are AADToken,
    AzureKey,
    Anonymous"
    ️️✔️PrettierCheck succeeded [Detail] [Expand]
    Validation passes for PrettierCheck.
    ️️✔️SpellCheck succeeded [Detail] [Expand]
    Validation passes for SpellCheck.
    ️️✔️Lint(RPaaS) succeeded [Detail] [Expand]
    Validation passes for Lint(RPaaS).
    ️️✔️CadlValidation succeeded [Detail] [Expand]
    Validation passes for CadlValidation.
    ️️✔️PR Summary succeeded [Detail] [Expand]
    Validation passes for Summary.
    Posted by Swagger Pipeline | How to fix these errors?

    Swagger Generation Artifacts

    ️️✔️ApiDocPreview succeeded [Detail] [Expand]
     Please click here to preview with your @microsoft account. 
    ️❌SDK Breaking Change Tracking failed [Detail]

    Breaking Changes Tracking

    azure-sdk-for-go - sdk/resourcemanager/dataprotection/armdataprotection - Approved - 2.0.0-beta.1
    +	Struct `CloudError` has been removed
    azure-sdk-for-python-track2 - track2_azure-mgmt-dataprotection - Approved - 1.0.0b2
    +	Model BackupVault no longer has parameter security_settings
    +	Model PatchBackupVaultInput no longer has parameter security_settings
    +	Removed operation group BackupInstancesExtensionRoutingOperations
    +	Removed operation group DeletedBackupInstancesOperations
    +	Removed operation group DppResourceGuardProxyOperations
    ️️✔️ azure-sdk-for-net succeeded [Detail] [Expand]
    ️⚠️ azure-sdk-for-python-track2 warning [Detail]
    • ⚠️Warning [Logs]Release - Generate from d2fb649601139b7d3a433fcc0dffc72ceeedae27. SDK Automation 14.0.0
      command	sh scripts/automation_init.sh ../azure-sdk-for-python_tmp/initInput.json ../azure-sdk-for-python_tmp/initOutput.json
      cmderr	[automation_init.sh] WARNING: Skipping azure-nspkg as it is not installed.
      command	sh scripts/automation_generate.sh ../azure-sdk-for-python_tmp/generateInput.json ../azure-sdk-for-python_tmp/generateOutput.json
      cmderr	[automation_generate.sh]
      cmderr	[automation_generate.sh] npm notice New minor version of npm available! 8.15.0 -> 8.19.2
      cmderr	[automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v8.19.2>
      cmderr	[automation_generate.sh] npm notice Run `npm install -g [email protected]` to update!
      cmderr	[automation_generate.sh] npm notice
    • ️✔️track2_azure-mgmt-dataprotection [View full logs]  [Release SDK Changes] Breaking Change Detected
      info	[Changelog] ### Features Added
      info	[Changelog]
      info	[Changelog]   - Model PolicyParameters has a new parameter backup_datasource_parameters_list
      info	[Changelog]
      info	[Changelog] ### Breaking Changes
      info	[Changelog]
      info	[Changelog]   - Model BackupVault no longer has parameter security_settings
      info	[Changelog]   - Model PatchBackupVaultInput no longer has parameter security_settings
      info	[Changelog]   - Removed operation group BackupInstancesExtensionRoutingOperations
      info	[Changelog]   - Removed operation group DeletedBackupInstancesOperations
      info	[Changelog]   - Removed operation group DppResourceGuardProxyOperations
    ️️✔️ azure-sdk-for-java succeeded [Detail] [Expand]
    ️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
    • ️✔️Succeeded [Logs]Release - Generate from d2fb649601139b7d3a433fcc0dffc72ceeedae27. SDK Automation 14.0.0
      command	sh ./eng/scripts/automation_init.sh ../../../../../azure-sdk-for-go_tmp/initInput.json ../../../../../azure-sdk-for-go_tmp/initOutput.json
      command	generator automation-v2 ../../../../../azure-sdk-for-go_tmp/generateInput.json ../../../../../azure-sdk-for-go_tmp/generateOutput.json
    • ️✔️sdk/resourcemanager/dataprotection/armdataprotection [View full logs]  [Release SDK Changes] Breaking Change Detected
      info	[Changelog] ### Breaking Changes
      info	[Changelog]
      info	[Changelog] - Struct `CloudError` has been removed
      info	[Changelog]
      info	[Changelog] ### Features Added
      info	[Changelog]
      info	[Changelog] - New const `ExistingResourcePolicyPatch`
      info	[Changelog] - New const `StorageSettingTypesZoneRedundant`
      info	[Changelog] - New const `PersistentVolumeRestoreModeRestoreWithVolumeData`
      info	[Changelog] - New const `PersistentVolumeRestoreModeRestoreWithoutVolumeData`
      info	[Changelog] - New const `ExistingResourcePolicySkip`
      info	[Changelog] - New type alias `PersistentVolumeRestoreMode`
      info	[Changelog] - New type alias `ExistingResourcePolicy`
      info	[Changelog] - New function `PossiblePersistentVolumeRestoreModeValues() []PersistentVolumeRestoreMode`
      info	[Changelog] - New function `*BackupDatasourceParameters.GetBackupDatasourceParameters() *BackupDatasourceParameters`
      info	[Changelog] - New function `*KubernetesClusterBackupDatasourceParameters.GetBackupDatasourceParameters() *BackupDatasourceParameters`
      info	[Changelog] - New function `PossibleExistingResourcePolicyValues() []ExistingResourcePolicy`
      info	[Changelog] - New function `*KubernetesClusterRestoreCriteria.GetItemLevelRestoreCriteria() *ItemLevelRestoreCriteria`
      info	[Changelog] - New struct `BackupDatasourceParameters`
      info	[Changelog] - New struct `DppProxyResource`
      info	[Changelog] - New struct `KubernetesClusterBackupDatasourceParameters`
      info	[Changelog] - New struct `KubernetesClusterRestoreCriteria`
      info	[Changelog] - New field `Tags` in struct `BackupInstanceResource`
      info	[Changelog] - New field `IsVaultProtectedByResourceGuard` in struct `BackupVault`
      info	[Changelog] - New field `BackupDatasourceParametersList` in struct `PolicyParameters`
      info	[Changelog]
      info	[Changelog] Total 2 breaking change(s), 24 additive change(s).
    ️️✔️ azure-sdk-for-js succeeded [Detail] [Expand]
    • ️✔️Succeeded [Logs]Release - Generate from d2fb649601139b7d3a433fcc0dffc72ceeedae27. SDK Automation 14.0.0
      command	sh .scripts/automation_init.sh ../azure-sdk-for-js_tmp/initInput.json ../azure-sdk-for-js_tmp/initOutput.json
      warn	File azure-sdk-for-js_tmp/initOutput.json not found to read
      command	sh .scripts/automation_generate.sh ../azure-sdk-for-js_tmp/generateInput.json ../azure-sdk-for-js_tmp/generateOutput.json
    • ️✔️@azure/arm-dataprotectionplatform [View full logs]  [Release SDK Changes]
      info	[Changelog]
      error	breakingChangeTracking is enabled, but version or changelogItem is not found in output.
    ️❌ azure-powershell failed [Detail]
    • Failed [Logs]Release - Generate from d2fb649601139b7d3a433fcc0dffc72ceeedae27. SDK Automation 14.0.0
      command	sh ./tools/SwaggerCI/init.sh ../azure-powershell_tmp/initInput.json ../azure-powershell_tmp/initOutput.json
      command	pwsh ./tools/SwaggerCI/psci.ps1 ../azure-powershell_tmp/generateInput.json ../azure-powershell_tmp/generateOutput.json
    • Az.dataprotection [View full logs]  [Release SDK Changes]
    Posted by Swagger Pipeline | How to fix these errors?

    Generated ApiView

    Language Package Name ApiView Link
    Go sdk/resourcemanager/dataprotection/armdataprotection https://apiview.dev/Assemblies/Review/b8ec7df601b545f0ac92b87925329df2
    Python track2_azure-mgmt-dataprotection Create ApiView failed. Please ask PR assignee for help
    Java azure-resourcemanager-dataprotection https://apiview.dev/Assemblies/Review/501345a231374193842a6de7caa675a2
    JavaScript @azure/arm-dataprotectionplatform https://apiview.dev/Assemblies/Review/89983375af974b79a06d1233528029b2

    Hi @mayankagg9722, Your PR has some issues. Please fix the CI sequentially by following the order of Avocado, semantic validation, model validation, breaking change, lintDiff. If you have any questions, please post your questions in this channel https://aka.ms/swaggersupport.

    TaskHow to fixPriority
    AvocadoFix-AvocadoHigh
    Semantic validationFix-SemanticValidation-ErrorHigh
    Model validationFix-ModelValidation-ErrorHigh
    LintDiffFix-LintDiffhigh
    If you need further help, please feedback via swagger feedback.

    Hi, @mayankagg9722 your PR are labelled with WaitForARMFeedback. A notification email will be sent out shortly afterwards to notify ARM review board([email protected]).

    Hello ARM review team and Swagger Team,

    we have already completed the sign off process for these changes in private repo. Sharing link for the private sign off for fasten the process.

    https://github.com/Azure/azure-rest-api-specs-pr/pull/8805

    mayankagg9722 avatar Oct 03 '22 06:10 mayankagg9722

      "description": "Parameters for Kubernetes Cluster Backup Datasource",
    

    Is Datasource consistently one word in your docs, or two?


    In reply to: 1267477668


    In reply to: 1267477668


    In reply to: 1267477668


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4046 in a17cfd3. [](commit_id = a17cfd3e469cc425902ceaa3ca8cd18ba7d65005, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

          "description": "Gets or sets the volume snapshot property.",
    

    More useful documentation please. Property documentation shouldn't just be "Gets or sets the X property". It should explain what the X property means, especially e.g. if just its a boolean which isn't self explanatory, what true versus false means.


    In reply to: 1267479674


    In reply to: 1267479674


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4059 in acdb644. [](commit_id = acdb644021656042fef246aee4dbd4a73ffd3055, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

          "readOnly": false
    

    What are the valid values?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4857 in a17cfd3. [](commit_id = a17cfd3e469cc425902ceaa3ca8cd18ba7d65005, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

        "backupDatasourceParametersList": {
    

    While 'dataStoreParametersList' has already set a precedent that it might make sense to follow... I wouldn't have thought you would want 'List' in the property name here.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:5655 in a17cfd3. [](commit_id = a17cfd3e469cc425902ceaa3ca8cd18ba7d65005, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

      "discriminator": "objectType"
    

    In top level resource APIs I've seen discriminator fields called things like 'kind', I'm not sure if we can follow that here, but maybe it would make sense to go with a name more like 'kind' or 'sourceKind' #Closed


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4860 in acdb644. [](commit_id = acdb644021656042fef246aee4dbd4a73ffd3055, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

          "description": "Gets or sets the volume snapshot property.",
    

    The property name also doesn't sound very intuitively boolean. And I wonder if just snapshot on/off will capture all the behavior you want in the future. Consider changing this to use an enum instead as a possible way to resolve all these issues and be more future proof.


    In reply to: 1267479674


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4059 in acdb644. [](commit_id = acdb644021656042fef246aee4dbd4a73ffd3055, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

        }
    

    These properties are duplicated across models, could you reduce the duplication, and clarify that they have the same meaning, by having common property definitions for them that you are referencing, or to introduce a common base model to inherit?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4100 in a17cfd3. [](commit_id = a17cfd3e469cc425902ceaa3ca8cd18ba7d65005, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

        "includeClusterScopeResources": {
    

    I don't know the domain that well but I wonder if a boolean here is future proof? Could you have more scopes to include in the future? Whats the 'not-cluster' scope being implied by false?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4062 in acdb644. [](commit_id = acdb644021656042fef246aee4dbd4a73ffd3055, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

          "description": "Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during restore.",
    

    The meaning here, or consequence, is unclear to me.


    In reply to: 1267509630


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4095 in acdb644. [](commit_id = acdb644021656042fef246aee4dbd4a73ffd3055, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

      "discriminator": "objectType"
    

    I see you have precedence for calling this objectType already. Let's keep it the same.


    In reply to: 1267499525


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4860 in acdb644. [](commit_id = acdb644021656042fef246aee4dbd4a73ffd3055, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

          "readOnly": false
    

    I see its mainly obvious by x-ms-discriminator-value elsewhere. I hope that generates good docs without further work.


    In reply to: 1267482177


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4857 in acdb644. [](commit_id = acdb644021656042fef246aee4dbd4a73ffd3055, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 19:10 TimLovellSmith

        "includeClusterScopeResources"
    

    Please add or update examples to show KubernetesClusterBackupDatasourceParameters in examples folder.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4049 in a17cfd3. [](commit_id = a17cfd3e469cc425902ceaa3ca8cd18ba7d65005, deletion_comment = False)

    TimLovellSmith avatar Oct 04 '22 20:10 TimLovellSmith

    Please ensure to respond feedbacks from the ARM API reviewer. When you are ready to continue the ARM API review, please remove ARMChangesRequested

          "description": "Gets or sets the volume snapshot property.",
    

    More useful documentation please. Property documentation shouldn't just be "Gets or sets the X property". It should explain what the X property means, especially e.g. if just its a boolean which isn't self explanatory, what true versus false means.

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4059 in acdb644. [](commit_id = acdb644, deletion_comment = False)

    @TimLovellSmith I have made the changes for this


    In reply to: 1269341776

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

      "description": "Parameters for Kubernetes Cluster Backup Datasource",
    

    Is Datasource consistently one word in your docs, or two?

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4046 in a17cfd3. [](commit_id = a17cfd3, deletion_comment = False)

    yes, its Datasource only that we use.


    In reply to: 1269342394

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

          "readOnly": false
    

    What are the valid values?

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4857 in a17cfd3. [](commit_id = a17cfd3, deletion_comment = False)

    @TimLovellSmith this is just the base class, valid values for object type is "KubernetesClusterBackupDatasourceParameters"

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

      "discriminator": "objectType"
    

    In top level resource APIs I've seen discriminator fields called things like 'kind', I'm not sure if we can follow that here, but maybe it would make sense to go with a name more like 'kind' or 'sourceKind' #Closed

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4860 in acdb644. [](commit_id = acdb644, deletion_comment = False)

    @TimLovellSmith this property is introduced as same as the previous propterty we had in our swagger "DataStoreParameters". I have not inderstood what changes is needed for this?


    In reply to: 1269348484

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

          "description": "Gets or sets the volume snapshot property.",
    

    The property name also doesn't sound very intuitively boolean. And I wonder if just snapshot on/off will capture all the behavior you want in the future. Consider changing this to use an enum instead as a possible way to resolve all these issues and be more future proof.

    In reply to: 1267479674

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4059 in acdb644. [](commit_id = acdb644, deletion_comment = False)

    @TimLovellSmith we need this "snapshotVolumes" and "includeClusterScopeResources" as booleens only. And it is very well intuitive to kubernetes users. I have also called this out in my previous private preview PR: https://github.com/Azure/azure-rest-api-specs-pr/pull/8805

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

          "description": "Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during restore.",
    

    The meaning here, or consequence, is unclear to me.

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4095 in acdb644. [](commit_id = acdb644, deletion_comment = False)

    @TimLovellSmith this is intuituve to the customers interating with kubernetes resource and they know about the label selectors. I think for now this is good for documentation.

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

        }
    

    These properties are duplicated across models, could you reduce the duplication, and clarify that they have the same meaning, by having common property definitions for them that you are referencing, or to introduce a common base model to inherit?

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4100 in a17cfd3. [](commit_id = a17cfd3, deletion_comment = False)

    @TimLovellSmith though these properties mugh appear common in backup and restore but these are very different contracts and cannot be merged into some base class


    In reply to: 1269353086

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

      "discriminator": "objectType"
    

    I see you have precedence for calling this objectType already. Let's keep it the same.

    In reply to: 1267499525

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/preview/2022-10-01-preview/dataprotection.json:4860 in acdb644. [](commit_id = acdb644, deletion_comment = False)

    @TimLovellSmith just as we are using the dsicriminator property for base classes this is added here as well. I have not inderstood what changes are needed for this? We are already doing this in other base class like "DataStoreParameters"


    In reply to: 1269355288

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

    Please see comments above. Also to add again we have already take the approval for the same swagger from ARM team in this pull request: https://github.com/Azure/azure-rest-api-specs-pr/pull/8805


    In reply to: 1269356827

    mayankagg9722 avatar Oct 06 '22 05:10 mayankagg9722

    Thanks for the link to the previous review


    In reply to: 1269349980

    TimLovellSmith avatar Oct 06 '22 06:10 TimLovellSmith