mirror of
https://github.com/ulitsaRaskolnikova/is-coursework.git
synced 2026-09-12 20:09:58 +05:00
feat(domain-order): add sql migrations for dns
This commit is contained in:
parent
8a899dd2a5
commit
4e4fa2cb63
@ -11,3 +11,6 @@ CREATE TYPE order_status AS ENUM ('created','pending_payment','paid','cancelled'
|
||||
|
||||
--changeset system:001-create-types-domain-member-role
|
||||
CREATE TYPE domain_member_role AS ENUM ('OWNER','USER');
|
||||
|
||||
--changeset system:001-create-types-domain-record-type
|
||||
CREATE TYPE domain_record_type AS ENUM ('A','AAAA','CNAME','TXT','MX','SRV','CAA');
|
||||
|
||||
@ -0,0 +1,13 @@
|
||||
--liquibase formatted sql
|
||||
|
||||
--changeset system:dns_record-001-create-table
|
||||
CREATE TABLE dns_record (
|
||||
id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
domain_id uuid NOT NULL REFERENCES domain(id) ON DELETE CASCADE,
|
||||
type domain_record_type NOT NULL,
|
||||
name varchar(255) NOT NULL,
|
||||
value varchar(1024) NOT NULL,
|
||||
ttl integer NOT NULL CHECK (ttl > 0),
|
||||
created_at timestamptz NOT NULL DEFAULT now(),
|
||||
updated_at timestamptz NOT NULL DEFAULT now()
|
||||
);
|
||||
@ -0,0 +1,4 @@
|
||||
--liquibase formatted sql
|
||||
|
||||
--changeset system:dns_record-002-create-indexes
|
||||
CREATE INDEX dns_record_domain_id_idx ON dns_record(domain_id);
|
||||
@ -0,0 +1,9 @@
|
||||
--liquibase formatted sql
|
||||
|
||||
--changeset system:dns_record-003-create-trigger
|
||||
--preconditions onFail:MARK_RAN
|
||||
--precondition-sql-check expectedResult:0 SELECT COUNT(*) FROM information_schema.triggers WHERE trigger_name = 'dns_record_set_updated_at'
|
||||
CREATE TRIGGER dns_record_set_updated_at
|
||||
BEFORE UPDATE ON dns_record
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION set_updated_at();
|
||||
@ -0,0 +1,11 @@
|
||||
--liquibase formatted sql
|
||||
|
||||
--changeset system:ns_delegation-001-create-table
|
||||
CREATE TABLE ns_delegation (
|
||||
id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
domain_id uuid NOT NULL UNIQUE REFERENCES domain(id) ON DELETE CASCADE,
|
||||
ns_servers jsonb NOT NULL,
|
||||
applied_at timestamptz,
|
||||
created_at timestamptz NOT NULL DEFAULT now(),
|
||||
updated_at timestamptz NOT NULL DEFAULT now()
|
||||
);
|
||||
@ -0,0 +1,9 @@
|
||||
--liquibase formatted sql
|
||||
|
||||
--changeset system:ns_delegation-002-create-trigger
|
||||
--preconditions onFail:MARK_RAN
|
||||
--precondition-sql-check expectedResult:0 SELECT COUNT(*) FROM information_schema.triggers WHERE trigger_name = 'ns_delegation_set_updated_at'
|
||||
CREATE TRIGGER ns_delegation_set_updated_at
|
||||
BEFORE UPDATE ON ns_delegation
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION set_updated_at();
|
||||
@ -41,3 +41,13 @@ databaseChangeLog:
|
||||
file: db/changelog/changes/reserved_name/002-create-trigger.sql
|
||||
- include:
|
||||
file: db/changelog/changes/forbidden_name/001-create-table.sql
|
||||
- include:
|
||||
file: db/changelog/changes/dns_record/001-create-table.sql
|
||||
- include:
|
||||
file: db/changelog/changes/dns_record/002-create-indexes.sql
|
||||
- include:
|
||||
file: db/changelog/changes/dns_record/003-create-trigger.sql
|
||||
- include:
|
||||
file: db/changelog/changes/ns_delegation/001-create-table.sql
|
||||
- include:
|
||||
file: db/changelog/changes/ns_delegation/002-create-trigger.sql
|
||||
Loading…
Reference in New Issue
Block a user