From 9525f997dabb71cc177a26e396c885102943ad0f Mon Sep 17 00:00:00 2001 From: jc <46619361+juancwu@users.noreply.github.com> Date: Wed, 31 Dec 2025 11:28:47 -0500 Subject: [PATCH] add migrations to support type AAAA --- migrations/00001_init.sql | 20 +++++++++++++++++++ migrations/00002_support_aaaa.sql | 33 +++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 migrations/00001_init.sql create mode 100644 migrations/00002_support_aaaa.sql diff --git a/migrations/00001_init.sql b/migrations/00001_init.sql new file mode 100644 index 0000000..5f8d652 --- /dev/null +++ b/migrations/00001_init.sql @@ -0,0 +1,20 @@ +-- +goose Up +-- +goose StatementBegin +CREATE TABLE IF NOT EXISTS records ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + domain TEXT NOT NULL UNIQUE, + ip TEXT NOT NULL, + record_type TEXT DEFAULT 'A' +); + +CREATE TABLE IF NOT EXISTS upstreams ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + address TEXT NOT NULL UNIQUE +); +-- +goose StatementEnd + +-- +goose Down +-- +goose StatementBegin +DROP TABLE IF EXISTS records; +DROP TABLE IF EXISTS upstreams; +-- +goose StatementEnd diff --git a/migrations/00002_support_aaaa.sql b/migrations/00002_support_aaaa.sql new file mode 100644 index 0000000..0fd433f --- /dev/null +++ b/migrations/00002_support_aaaa.sql @@ -0,0 +1,33 @@ +-- +goose Up +-- +goose StatementBegin +CREATE TABLE records_new ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + domain TEXT NOT NULL, + ip TEXT NOT NULL, + record_type TEXT DEFAULT 'A', + UNIQUE(domain, record_type) +); + +INSERT INTO records_new (id, domain, ip, record_type) +SELECT id, domain, ip, record_type FROM records; + +DROP TABLE records; + +ALTER TABLE records_new RENAME TO records; +-- +goose StatementEnd + +-- +goose Down +-- +goose StatementBegin +CREATE TABLE records_old ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + domain TEXT NOT NULL UNIQUE, + ip TEXT NOT NULL, + record_type TEXT DEFAULT 'A' +); + +INSERT INTO records_old (id, domain, ip, record_type) +SELECT id, domain, ip, record_type FROM records; + +DROP TABLE records; +ALTER TABLE records_old RENAME TO records; +-- +goose StatementEnd