Backup

Implementation details for API backup

Coverage Overview

Backup is supported by LocalStack only in the pro image.

AvailabilityTesting*
OperationImplementedImageInternal Test SuiteExternal Test SuiteTerraform ValidatedAWS ValidatedSnapshot TestedDetails
CancelLegalHold
CreateBackupPlan✔️pro✔️✔️✔️✔️Show Tests
CreateBackupSelection✔️pro✔️Show Tests
CreateBackupVault✔️pro✔️✔️✔️✔️Show Tests
CreateFramework
CreateLegalHold
CreateLogicallyAirGappedBackupVault
CreateReportPlan
CreateRestoreTestingPlan
CreateRestoreTestingSelection
DeleteBackupPlan✔️pro✔️✔️✔️✔️Show Tests
DeleteBackupSelection✔️pro✔️Show Tests
DeleteBackupVault✔️pro✔️✔️✔️Show Tests
DeleteBackupVaultAccessPolicy
DeleteBackupVaultLockConfiguration
DeleteBackupVaultNotifications
DeleteFramework
DeleteRecoveryPoint
DeleteReportPlan
DeleteRestoreTestingPlan
DeleteRestoreTestingSelection
DescribeBackupJob
DescribeBackupVault✔️pro✔️✔️✔️Show Tests
DescribeCopyJob
DescribeFramework
DescribeGlobalSettings
DescribeProtectedResource
DescribeRecoveryPoint
DescribeRegionSettings
DescribeReportJob
DescribeReportPlan
DescribeRestoreJob✔️pro✔️Show Tests
DisassociateRecoveryPoint
DisassociateRecoveryPointFromParent
ExportBackupPlanTemplate
GetBackupPlan✔️pro✔️✔️✔️✔️Show Tests
GetBackupPlanFromJSON
GetBackupPlanFromTemplate
GetBackupSelection✔️pro✔️Show Tests
GetBackupVaultAccessPolicy✔️pro✔️✔️✔️Show Tests
GetBackupVaultNotifications
GetLegalHold
GetRecoveryPointRestoreMetadata
GetRestoreJobMetadata
GetRestoreTestingInferredMetadata
GetRestoreTestingPlan
GetRestoreTestingSelection
GetSupportedResourceTypes
ListBackupJobSummaries
ListBackupJobs
ListBackupPlanTemplates
ListBackupPlanVersions
ListBackupPlans✔️pro✔️✔️✔️✔️Show Tests
ListBackupSelections✔️pro✔️Show Tests
ListBackupVaults✔️pro✔️✔️Show Tests
ListCopyJobSummaries
ListCopyJobs
ListFrameworks
ListLegalHolds
ListProtectedResources
ListProtectedResourcesByBackupVault
ListRecoveryPointsByBackupVault✔️pro✔️Show Tests
ListRecoveryPointsByLegalHold
ListRecoveryPointsByResource✔️pro✔️Show Tests
ListReportJobs
ListReportPlans
ListRestoreJobSummaries
ListRestoreJobs
ListRestoreJobsByProtectedResource
ListRestoreTestingPlans
ListRestoreTestingSelections
ListTags✔️pro✔️✔️✔️Show Tests
PutBackupVaultAccessPolicy✔️pro✔️✔️✔️Show Tests
PutBackupVaultLockConfiguration
PutBackupVaultNotifications
PutRestoreValidationResult
StartBackupJob
StartCopyJob
StartReportJob
StartRestoreJob✔️pro✔️Show Tests
StopBackupJob
TagResource
UntagResource
UpdateBackupPlan✔️pro✔️Show Tests
UpdateFramework
UpdateGlobalSettings
UpdateRecoveryPointLifecycle
UpdateRegionSettings
UpdateReportPlan
UpdateRestoreTestingPlan
UpdateRestoreTestingSelection

Terminology

  • Internal Test Suite: tested by LocalStack's internal integration test suite
  • External Test Suite: covered by an external integration test suite, that runs against LocalStack
  • Terraform Validated: operation tested with Terraform
  • AWS Validated: the integration test that includes this operation call was validated against AWS
  • Snapshot Tested: the operation is part of a snapshot parity test, which verifies the responses by LocalStack and AWS are the same

Testing Details

This section gives an overview about the internal integration test suite and the specific test cases that recorded the API call.

How to read the test details?

For each operation we put up a list of the related integration test cases.
Those operation calls have been recorded during the execution of the outlined test cases. Some calls might be internal, i.e., they are not explicitly called in the test, but are triggered implicitly by the LocalStack framework.

  • Parameters: The tests are ordered by the parameters used, which are highlighted in bold.
  • Test Details: LocalStack Community or LocalStack Pro indicates where the test originates. For each test you see:
    • test name
    • status code returned (which is the expected one for the test case)
    • information about validation:
      • AWS validated the test is validated against AWS, meaning it run successfully against real AWS as well
      • Snapshot Tested this is a snapshot parity test, meaning the responses are validated against AWS


CreateBackupPlan

Parameters: BackupPlan
  • LocalStack Pro
    • test_backup_plan LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_plan HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_backup_selections LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_selections HTTP Status Code: 200
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

CreateBackupSelection

Parameters: BackupPlanId, BackupSelection
  • LocalStack Pro
    • test_backup_selections LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_selections HTTP Status Code: 200
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

CreateBackupVault

Parameters: BackupVaultName
  • LocalStack Pro
    • test_backup_plan LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_plan HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200
    • test_backup_vault LocalStack Pro: tests/aws/services/iam/test_iam_enforcement.py::TestIAMEnforcementResourceBasedPolicies::test_backup_vault HTTP Status Code: 200 AWS validated Snapshot Tested
Parameters: BackupVaultName, BackupVaultTags
  • LocalStack Pro
    • test_backup_vaults LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_vaults HTTP Status Code: 200

DeleteBackupPlan

Parameters: BackupPlanId
  • LocalStack Pro
    • test_backup_plan LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_plan HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

DeleteBackupSelection

Parameters: BackupPlanId, SelectionId
  • LocalStack Pro
    • test_backup_selections LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_selections HTTP Status Code: 200

DeleteBackupVault

Parameters: BackupVaultName
  • LocalStack Pro
    • test_backup_plan LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_plan HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_backup_vaults LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_vaults HTTP Status Code: 200
    • test_backup_vault LocalStack Pro: tests/aws/services/iam/test_iam_enforcement.py::TestIAMEnforcementResourceBasedPolicies::test_backup_vault HTTP Status Code: 200 AWS validated Snapshot Tested

DescribeBackupVault

Parameters: BackupVaultName
  • LocalStack Pro
    • test_backup_vaults LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_vaults HTTP Status Code: 200
    • test_backup_vault LocalStack Pro: tests/aws/services/iam/test_iam_enforcement.py::TestIAMEnforcementResourceBasedPolicies::test_backup_vault HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_backup_vaults LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_vaults HTTP Status Code: 400 (ResourceNotFoundException)
    • test_backup_vault LocalStack Pro: tests/aws/services/iam/test_iam_enforcement.py::TestIAMEnforcementResourceBasedPolicies::test_backup_vault HTTP Status Code: 403 (AccessDeniedException) AWS validated Snapshot Tested

DescribeRestoreJob

Parameters: RestoreJobId
  • LocalStack Pro
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

GetBackupPlan

Parameters: BackupPlanId
  • LocalStack Pro
    • test_backup_plan LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_plan HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200
    • test_backup_plan LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_plan HTTP Status Code: 400 (ResourceNotFoundException) AWS validated Snapshot Tested

GetBackupSelection

Parameters: BackupPlanId, SelectionId
  • LocalStack Pro
    • test_backup_selections LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_selections HTTP Status Code: 200
    • test_backup_selections LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_selections HTTP Status Code: 400 (ResourceNotFoundException)

GetBackupVaultAccessPolicy

Parameters: BackupVaultName
  • LocalStack Pro
    • test_backup_vault LocalStack Pro: tests/aws/services/iam/test_iam_enforcement.py::TestIAMEnforcementResourceBasedPolicies::test_backup_vault HTTP Status Code: 200 AWS validated Snapshot Tested

ListBackupPlans

Parameters: - (without any parameters)
  • LocalStack Pro
    • test_backup_plan LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_plan HTTP Status Code: 200 AWS validated Snapshot Tested

ListBackupSelections

Parameters: BackupPlanId
  • LocalStack Pro
    • test_backup_selections LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_selections HTTP Status Code: 200

ListBackupVaults

Parameters: - (without any parameters)
  • LocalStack Pro
    • test_backup_vaults LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_backup_vaults HTTP Status Code: 200

ListRecoveryPointsByBackupVault

Parameters: BackupVaultName
  • LocalStack Pro
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

ListRecoveryPointsByResource

Parameters: ResourceArn
  • LocalStack Pro
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

ListTags

Parameters: ResourceArn
  • LocalStack Pro
    • test_backup_vault LocalStack Pro: tests/aws/services/iam/test_iam_enforcement.py::TestIAMEnforcementResourceBasedPolicies::test_backup_vault HTTP Status Code: 501 (InternalFailure) AWS validated Snapshot Tested

PutBackupVaultAccessPolicy

Parameters: BackupVaultName, Policy
  • LocalStack Pro
    • test_backup_vault LocalStack Pro: tests/aws/services/iam/test_iam_enforcement.py::TestIAMEnforcementResourceBasedPolicies::test_backup_vault HTTP Status Code: 200 AWS validated Snapshot Tested

StartRestoreJob

Parameters: IamRoleArn, Metadata, RecoveryPointArn
  • LocalStack Pro
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

UpdateBackupPlan

Parameters: BackupPlan, BackupPlanId
  • LocalStack Pro
    • test_scheduled_backup_and_restore LocalStack Pro: tests/aws/services/backup/test_backup.py::TestBackup::test_scheduled_backup_and_restore HTTP Status Code: 200

Last modified March 20, 2023: improve Coverage Docs (#505) (46f2fb0c0)