DynamoChangetypeAttributes

Last updated: September 8, 2025

The DynamoChangetypeAttributes changelog check validates whether a specified attribute of a Dynamo changetype is set to an exact value or pattern. Refer to DynamoDB docs for a complete understanding of their available attributes.

Property

Value

Liquibase version required

4.31.0+

Scope (--checks-scope)

changelog

Default status

disabled

Default severity (exit code)

0 ("INFO")

Customizable settings

Yes (dynamic)

Prerequisites

Uses

Use this check to enforce naming conventions, security standards, or deployment rules by validating specific fields in DynamoDB change types. You can define multiple checks with different attributes and patterns to match your standards across various Change types.

When does this check trigger?

This check is fully driven by how you configure it. Once configured, the check will trigger only when all of the following are true:

  1. A changeset contains the specific Change type you specified, such as createDynamoTable.

  2. That Change type includes the attribute that you're checking, such as billingMode.

If the Change type isn’t used, or the attribute isn’t present, the check doesn’t run. This ensures you're only enforcing rules when that part of the changelog is relevant.

Procedure

1

Procedure

This check is disabled by default. To enable it, run the enable command:

liquibase checks enable --check-name=DynamoChangetypeAttributes
2

Liquibase will prompt you to name your custom version of the check.

By default, it will be named DynamoChangetypeAttributes1. You can accept the default by pressing Enter or enter a custom name.

3

Set the severity level. This determines the exit code when the check is triggered.

  • INFO (0)

  • MINOR (1)

  • MAJOR (2)

  • CRITICAL (3)

  • BLOCKER (4)

4

Set the DynamoDB changetype this check will inspect.

You’ll be prompted with: Set 'DYNAMO_CHANGE_TYPE' (options: PARTIQL_FILE, CREATE_DYNAMO_TABLE, CREATE_GLOBAL_SECONDARY_INDEX, UPDATE_DYNAMO_TABLE):

  • Only one changetype is allowed per check

  • Input is case-insenesitive

  • Don't include commas or multiple values. Only input one valid name

5

Once you've selected the changetype, you'll be walked through its specific attributes.

Set 'DYNAMO_CHANGE_TYPE' (options: UPDATE_DYNAMO_TABLE, CREATE_DYNAMO_TABLE, PARTIQL_FILE, CREATE_GLOBAL_SECONDARY_INDEX):

Set 'DBMS' (options: DYNAMODB, MONGODB)

In this example, we will specify DYNAMODB Set 'ENCODING' (options: string) In this example, we will specify UTF-8 Set 'END_DELIMITER' (options: string) In this example, we will specify ; Set 'RELATIVE_TO_CHANGELOG' (options: true, false) In this example, we will set it to false Set 'SPLIT_STATEMENTS' to split multiple SQL statements on the delimiter, and evaluate each individually (options: true, false) In this example, we will set it to true Set 'STRIP_COMMENTS' (options: true, false) In this example, we will set it to true