Explorar o código

fix remigrate script and add header enabled column

biblius hai 1 semana
pai
achega
efcd604829
Modificáronse 2 ficheiros con 70 adicións e 64 borrados
  1. 6 1
      scripts/remigrate.sh
  2. 64 63
      src-tauri/migrations/20250922150745_init.up.sql

+ 6 - 1
scripts/remigrate.sh

@@ -1,3 +1,8 @@
+if [ -z "$DATABASE_URL" ]; then
+  echo 'DATABASE_URL not set, aborting'
+  exit 1
+fi
+
 sqlx migrate revert --source src-tauri/migrations
 sqlx migrate run --source src-tauri/migrations
-sqlite3 rquest.db < src-tauri/seed/init.sql
+sqlite3 "${DATABASE_URL#sqlite:}" < src-tauri/seed/init.sql

+ 64 - 63
src-tauri/migrations/20250922150745_init.up.sql

@@ -1,91 +1,92 @@
 CREATE TABLE workspaces (
-    id INTEGER PRIMARY KEY NOT NULL,
-    name TEXT NOT NULL UNIQUE
+  id INTEGER PRIMARY KEY NOT NULL,
+  name TEXT NOT NULL UNIQUE
 );
 
-CREATE TABLE auth(
-    id INTEGER PRIMARY KEY NOT NULL,
-    workspace_id INTEGER NOT NULL,
-    name TEXT NOT NULL,
-    params JSONB NOT NULL,
-    FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE
+CREATE TABLE auth (
+  id INTEGER PRIMARY KEY NOT NULL,
+  workspace_id INTEGER NOT NULL,
+  name TEXT NOT NULL,
+  params JSONB NOT NULL,
+  FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE
 );
 
 CREATE TABLE workspace_envs (
-    id INTEGER PRIMARY KEY NOT NULL,
-    workspace_id INTEGER NOT NULL,
-    name TEXT NOT NULL,
-    FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE
+  id INTEGER PRIMARY KEY NOT NULL,
+  workspace_id INTEGER NOT NULL,
+  name TEXT NOT NULL,
+  FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE
 );
 
 CREATE TABLE workspace_env_variables (
-    id INTEGER PRIMARY KEY NOT NULL,
-    workspace_id INTEGER NOT NULL,
-    env_id INTEGER NOT NULL,
-    name TEXT NOT NULL,
-    value TEXT NOT NULL,
-    secret BOOLEAN NOT NULL,
-    FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE,
-    FOREIGN KEY (env_id) REFERENCES workspace_envs (id) ON DELETE CASCADE,
-    UNIQUE(env_id, name)
+  id INTEGER PRIMARY KEY NOT NULL,
+  workspace_id INTEGER NOT NULL,
+  env_id INTEGER NOT NULL,
+  name TEXT NOT NULL,
+  value TEXT NOT NULL,
+  secret BOOLEAN NOT NULL,
+  FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE,
+  FOREIGN KEY (env_id) REFERENCES workspace_envs (id) ON DELETE CASCADE,
+  UNIQUE (env_id, name)
 );
 
 CREATE TABLE workspace_entries (
-    id INTEGER PRIMARY KEY NOT NULL,
-    workspace_id INTEGER NOT NULL,
-    parent_id INTEGER,
-    name TEXT NOT NULL,
-    type INTEGER NOT NULL,
-    auth INTEGER,
-    auth_inherit BOOLEAN NOT NULL DEFAULT TRUE,
-    FOREIGN KEY (parent_id) REFERENCES workspace_entries (id) ON DELETE CASCADE,
-    FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE,
-    FOREIGN KEY (auth) REFERENCES auth (id) ON DELETE SET NULL
+  id INTEGER PRIMARY KEY NOT NULL,
+  workspace_id INTEGER NOT NULL,
+  parent_id INTEGER,
+  name TEXT NOT NULL,
+  type INTEGER NOT NULL,
+  auth INTEGER,
+  auth_inherit BOOLEAN NOT NULL DEFAULT TRUE,
+  FOREIGN KEY (parent_id) REFERENCES workspace_entries (id) ON DELETE CASCADE,
+  FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE,
+  FOREIGN KEY (auth) REFERENCES auth (id) ON DELETE SET NULL
 );
 
 CREATE TABLE request_params (
-    id INTEGER PRIMARY KEY NOT NULL,
-    workspace_id INTEGER NOT NULL,
-    request_id INTEGER UNIQUE NOT NULL,
-    method TEXT NOT NULL,
-    url TEXT NOT NULL,
-    FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE,
-    FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE
+  id INTEGER PRIMARY KEY NOT NULL,
+  workspace_id INTEGER NOT NULL,
+  request_id INTEGER UNIQUE NOT NULL,
+  method TEXT NOT NULL,
+  url TEXT NOT NULL,
+  FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE,
+  FOREIGN KEY (workspace_id) REFERENCES workspaces (id) ON DELETE CASCADE
 );
 
 CREATE TABLE request_path_params (
-    id INTEGER PRIMARY KEY NOT NULL,
-    position INTEGER NOT NULL,
-    request_id INTEGER NOT NULL,
-    name TEXT NOT NULL,
-    value TEXT NOT NULL,
-    UNIQUE(position, request_id),
-    FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
+  id INTEGER PRIMARY KEY NOT NULL,
+  position INTEGER NOT NULL,
+  request_id INTEGER NOT NULL,
+  name TEXT NOT NULL,
+  value TEXT NOT NULL,
+  UNIQUE (position, request_id),
+  FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
 );
 
 CREATE TABLE request_query_params (
-    id INTEGER PRIMARY KEY NOT NULL,
-    -- A non-null position means a QP is enabled
-    position INTEGER,
-    request_id INTEGER NOT NULL,
-    key TEXT NOT NULL,
-    value TEXT NOT NULL,
-    UNIQUE(position, request_id),
-    FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
+  id INTEGER PRIMARY KEY NOT NULL,
+  -- A non-null position means a QP is enabled
+  position INTEGER,
+  request_id INTEGER NOT NULL,
+  key TEXT NOT NULL,
+  value TEXT NOT NULL,
+  UNIQUE (position, request_id),
+  FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
 );
 
 CREATE TABLE request_bodies (
-    id INTEGER PRIMARY KEY NOT NULL,
-    request_id UNIQUE NOT NULL,
-    ty TEXT NOT NULL,
-    content TEXT NOT NULL,
-    FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
+  id INTEGER PRIMARY KEY NOT NULL,
+  request_id UNIQUE NOT NULL,
+  ty TEXT NOT NULL,
+  content TEXT NOT NULL,
+  FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
 );
 
 CREATE TABLE request_headers (
-    id INTEGER PRIMARY KEY NOT NULL,
-    request_id INTEGER NOT NULL,
-    name TEXT NOT NULL,
-    value TEXT NOT NULL,
-    FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
+  id INTEGER PRIMARY KEY NOT NULL,
+  request_id INTEGER NOT NULL,
+  name TEXT NOT NULL,
+  value TEXT NOT NULL,
+  enabled BOOLEAN NOT NULL DEFAULT TRUE,
+  FOREIGN KEY (request_id) REFERENCES workspace_entries (id) ON DELETE CASCADE
 );