π§ AWS DynamoDB Table does not have on-demand backups in the past 90 days - prod.logic.yamlπ’
- Contextual name: π§ prod.logic.yamlπ’
- ID:
/ce/ca/aws/dynamodb/table-backup/prod.logic.yaml - Tags:
- π’ Logic test success
- π’ Logic with extracts
- π’ Logic with test data
Usesβ
- π AWS DynamoDB Table
- π AWS DynamoDB Backup - object.extracts.yaml
- π AWS Backup Recovery Point - object.extracts.yaml
- π AWS DynamoDB Table - object.extracts.yaml
- π§ͺ test-data.json
Test Results π’β
Generated at: 2026-01-31T12:01:42.339694708Z Open
| Result | Id | Condition Index | Condition Text | Runtime Error |
|---|---|---|---|---|
| π’ | test1 | βοΈ 499 | βοΈ CA10A1__AWS_Backup_Recovery_Points__r.has(COMPLIANT) | βοΈ null |
| π’ | test2 | βοΈ 500 | βοΈ otherwise | βοΈ null |
| π’ | test3 | βοΈ 199 | βοΈ extract('CA10__tableStatus__c') != 'ACTIVE' | βοΈ null |
| π’ | test4 | βοΈ 299 | βοΈ extract('CA10__pointInTimeRecoveryStatus__c') == 'ENABLED' | βοΈ null |
| π’ | test5 | βοΈ 399 | βοΈ CA10__AWS_DynamoDB_Backups__r.has(COMPLIANT) | βοΈ null |
| π’ | test6 | βοΈ 500 | βοΈ otherwise | βοΈ null |
Generation Bundleβ
| File | MD5 | |
|---|---|---|
| Open | /ce/ca/aws/dynamodb/table-backup/policy.yaml | 300B8353C9F2568DD7B26CF7ACC87751 |
| Open | /ce/ca/aws/dynamodb/table-backup/prod.logic.yaml | 3AE55AF58C9D767AE39105F5A96D4ED9 |
| Open | /ce/ca/aws/dynamodb/table-backup/test-data.json | CC626B4218D34DCE25AD27BF0E822DFE |
| Open | /types/CA10__CaAwsDynamoDbBackup__c/object.extracts.yaml | 7A95CBE1796D4FCEB869F5CDD935E516 |
| Open | /types/CA10A1__CaAwsBackupRecoveryPoint__c/object.extracts.yaml | 03645351ED418265EF3EFF8207F505A7 |
| Open | /types/CA10__CaAwsDynamoDbTable__c/object.extracts.yaml | EC959FF9A6572890388AA7C1C47122EF |
Available Commandsβ
repo-manager policies generate FULL /ce/ca/aws/dynamodb/table-backup/prod.logic.yaml
repo-manager policies generate DEBUG /ce/ca/aws/dynamodb/table-backup/prod.logic.yaml
repo-manager policies generate CAPTURE_TEST_DATA /ce/ca/aws/dynamodb/table-backup/prod.logic.yaml
repo-manager policies generate TESTS /ce/ca/aws/dynamodb/table-backup/prod.logic.yaml
# Execute tests
repo-manager policies test /ce/ca/aws/dynamodb/table-backup/prod.logic.yaml
Contentβ
inputType: "CA10__CaAwsDynamoDbTable__c"
testData:
- file: "test-data.json"
importExtracts:
- file: /types/CA10__CaAwsDynamoDbTable__c/object.extracts.yaml
conditions:
- status: "INAPPLICABLE"
currentStateMessage: "The table is not active."
check:
NOT_EQUAL:
left:
EXTRACT: "CA10__tableStatus__c"
right:
TEXT: "ACTIVE"
- status: "INAPPLICABLE"
currentStateMessage: "Point-in-Time Recovery is enabled for this DynamoDB table."
check:
IS_EQUAL:
left:
EXTRACT: "CA10__pointInTimeRecoveryStatus__c"
right:
TEXT: "ENABLED"
- status: "COMPLIANT"
currentStateMessage: "At least one backup exists and has been created within the last 90 days."
check:
RELATED_LIST_HAS:
status: "COMPLIANT"
relationshipName: "CA10__AWS_DynamoDB_Backups__r"
- status: "COMPLIANT"
currentStateMessage: "At least one Backup Recovery Point exists and has been created within the last 90 days."
check:
RELATED_LIST_HAS:
status: "COMPLIANT"
relationshipName: "CA10A1__AWS_Backup_Recovery_Points__r"
otherwise:
status: "INCOMPLIANT"
currentStateMessage: "No on-demand or AWS Backup recovery point was created in the last 90 days."
remediationMessage: "Create an on-demand backup for the table or assign the table to an AWS Backup Plan."
relatedLists:
- relationshipName: "CA10__AWS_DynamoDB_Backups__r"
importExtracts:
- file: /types/CA10__CaAwsDynamoDbBackup__c/object.extracts.yaml
conditions:
- status: "INAPPLICABLE"
currentStateMessage: "The DynamoDB Backup is not available."
check:
NOT_EQUAL:
left:
EXTRACT: "CA10__status__c"
right:
TEXT: "AVAILABLE"
- status: "INCOMPLIANT"
currentStateMessage: "The DynamoDB Backup is available but was created more than 90 days ago."
remediationMessage: "Create a new DynamoDB Backup and decommission the old one."
check:
IS_BEYOND_LAST_DAYS:
offsetDays: 90
arg:
EXTRACT: "CA10__creationDateTime__c"
otherwise:
status: "COMPLIANT"
currentStateMessage: "The Backup exists and has been created within the last 90 days."
- relationshipName: "CA10A1__AWS_Backup_Recovery_Points__r"
importExtracts:
- file: /types/CA10A1__CaAwsBackupRecoveryPoint__c/object.extracts.yaml
conditions:
- status: "INAPPLICABLE"
currentStateMessage: "The recovery point is not completed or available."
check:
AND:
args:
- NOT_EQUAL:
left:
EXTRACT: "CA10A1__status__c"
right:
TEXT: "COMPLETED"
- NOT_EQUAL:
left:
EXTRACT: "CA10A1__status__c"
right:
TEXT: "AVAILABLE"
- status: "INCOMPLIANT"
currentStateMessage: "The recovery point is available but was created more than 90 days ago."
remediationMessage: "Create a backup plan to automate creation of on-demand backups."
check:
IS_BEYOND_LAST_DAYS:
offsetDays: 90
arg:
EXTRACT: "CA10A1__creationDate__c"
otherwise:
status: "COMPLIANT"
currentStateMessage: "The backup recovery point exists."