fix(migrations): drop column defaults before ALTER TYPE varchar→jsonb
Some checks are pending
CI / Type Check (push) Waiting to run
CI / Lint (push) Waiting to run
CI / Unit Tests (push) Waiting to run
Deploy / Build & Push Image (push) Waiting to run
Deploy / Deploy to VPS (push) Blocked by required conditions

This commit is contained in:
Vadym Samoilenko 2026-06-11 14:02:48 +01:00
parent 7a15bbf9e8
commit 8a864ef4a6

View file

@ -3,7 +3,7 @@ UPDATE "header" SET "cta_href" = '/payments' WHERE "cta_href" = '/kvytky';
UPDATE "birthday_page_pricing_packages" SET "cta_href" = '/payments' WHERE "cta_href" = '/kvytky';
-- Change heroDescription, featureText, bottomText from varchar to jsonb
-- (existing text is incompatible with Lexical JSON; fields reset to NULL — re-enter via admin)
-- Must drop DEFAULT first, then change type (PostgreSQL can't cast text default to jsonb)
DO $$
BEGIN
IF EXISTS (
@ -11,6 +11,7 @@ BEGIN
WHERE table_name = 'group_visits_page' AND column_name = 'hero_description'
AND data_type = 'character varying'
) THEN
ALTER TABLE "group_visits_page" ALTER COLUMN "hero_description" DROP DEFAULT;
ALTER TABLE "group_visits_page" ALTER COLUMN "hero_description" TYPE jsonb USING NULL;
END IF;
@ -19,6 +20,7 @@ BEGIN
WHERE table_name = 'group_visits_page' AND column_name = 'feature_text'
AND data_type = 'character varying'
) THEN
ALTER TABLE "group_visits_page" ALTER COLUMN "feature_text" DROP DEFAULT;
ALTER TABLE "group_visits_page" ALTER COLUMN "feature_text" TYPE jsonb USING NULL;
END IF;
@ -27,6 +29,7 @@ BEGIN
WHERE table_name = 'group_visits_page' AND column_name = 'bottom_text'
AND data_type = 'character varying'
) THEN
ALTER TABLE "group_visits_page" ALTER COLUMN "bottom_text" DROP DEFAULT;
ALTER TABLE "group_visits_page" ALTER COLUMN "bottom_text" TYPE jsonb USING NULL;
END IF;
END $$;
@ -38,6 +41,7 @@ BEGIN
WHERE table_name = '_group_visits_page_v' AND column_name = 'version_hero_description'
AND data_type = 'character varying'
) THEN
ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_hero_description" DROP DEFAULT;
ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_hero_description" TYPE jsonb USING NULL;
END IF;
@ -46,6 +50,7 @@ BEGIN
WHERE table_name = '_group_visits_page_v' AND column_name = 'version_feature_text'
AND data_type = 'character varying'
) THEN
ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_feature_text" DROP DEFAULT;
ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_feature_text" TYPE jsonb USING NULL;
END IF;
@ -54,6 +59,7 @@ BEGIN
WHERE table_name = '_group_visits_page_v' AND column_name = 'version_bottom_text'
AND data_type = 'character varying'
) THEN
ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_bottom_text" DROP DEFAULT;
ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_bottom_text" TYPE jsonb USING NULL;
END IF;
END $$;