-- fleets 0001: adopt_fleets -- Generated by termix-plugin migrations. Review before committing. CREATE TABLE IF NOT EXISTS "fleets" ( "id" integer PRIMARY KEY AUTOINCREMENT, "user_id" text NOT NULL, "name" text NOT NULL, "description" text, "color" text, "icon" text, "tag_rules" text, "sync_id" text UNIQUE, "created_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP, "updated_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ); ALTER TABLE "fleets" RENAME TO "p_fleets_fleets"; CREATE TABLE IF NOT EXISTS "fleet_members" ( "id" integer PRIMARY KEY AUTOINCREMENT, "fleet_id" integer NOT NULL, "host_id" integer NOT NULL, "added_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY ("fleet_id") REFERENCES "p_fleets_fleets" ("id") ON DELETE CASCADE, FOREIGN KEY ("host_id") REFERENCES "ssh_data" ("id") ON DELETE CASCADE ); CREATE UNIQUE INDEX IF NOT EXISTS "idx_fleet_members_fleet_host" ON "fleet_members" ("fleet_id", "host_id"); CREATE INDEX IF NOT EXISTS "idx_fleet_members_host" ON "fleet_members" ("host_id"); ALTER TABLE "fleet_members" RENAME TO "p_fleets_members"; CREATE TABLE IF NOT EXISTS "fleet_inventory" ( "id" integer PRIMARY KEY AUTOINCREMENT, "host_id" integer NOT NULL, "user_id" text NOT NULL, "os_pretty_name" text, "kernel" text, "architecture" text, "hostname" text, "uptime_seconds" integer, "ip" text, "package_manager" text, "collected_at" text NOT NULL DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY ("host_id") REFERENCES "ssh_data" ("id") ON DELETE CASCADE, FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ); CREATE UNIQUE INDEX IF NOT EXISTS "idx_fleet_inventory_host" ON "fleet_inventory" ("host_id", "user_id"); CREATE INDEX IF NOT EXISTS "idx_fleet_inventory_user" ON "fleet_inventory" ("user_id"); ALTER TABLE "fleet_inventory" RENAME TO "p_fleets_inventory";