diff --git a/internal/db/schema/migrations/oss/postgres/85/02_alias_domain.up.sql b/internal/db/schema/migrations/oss/postgres/85/02_alias_domain.up.sql index 0b3922853f..311a30841e 100644 --- a/internal/db/schema/migrations/oss/postgres/85/02_alias_domain.up.sql +++ b/internal/db/schema/migrations/oss/postgres/85/02_alias_domain.up.sql @@ -3,6 +3,9 @@ begin; + -- Constraints wt_alias_too_short, wt_alias_no_suround_spaces, and wt_target_alias_too_long + -- have been updated in migration 96/01 + -- wt_alias defines a type for alias values create domain wt_alias as citext constraint wt_alias_too_short diff --git a/internal/db/schema/migrations/oss/postgres/96/01_update_wt_alias_constraints.up.sql b/internal/db/schema/migrations/oss/postgres/96/01_update_wt_alias_constraints.up.sql new file mode 100644 index 0000000000..9b2b099a22 --- /dev/null +++ b/internal/db/schema/migrations/oss/postgres/96/01_update_wt_alias_constraints.up.sql @@ -0,0 +1,21 @@ +-- Copyright (c) HashiCorp, Inc. +-- SPDX-License-Identifier: BUSL-1.1 + +begin; + +-- Modify the wt_alias domain to include explicit casts in its constraints +alter domain wt_alias drop constraint if exists wt_alias_too_short; +alter domain wt_alias drop constraint if exists wt_alias_no_suround_spaces; + +alter domain wt_alias add constraint wt_alias_too_short + check (length(trim(both from value::text)) > 0); +alter domain wt_alias add constraint wt_alias_no_suround_spaces + check (trim(both from value::text) = value::text); + +-- Modify the wt_target_alias domain to include explicit casts in its constraints +alter domain wt_target_alias drop constraint if exists wt_target_alias_too_long; + +alter domain wt_target_alias add constraint wt_target_alias_too_long + check (length(trim(both from value::text)) < 254); + +commit; \ No newline at end of file