Feat/monitoring (#1267) Cloud Version

* feat: add start monitoring remote servers

* reafctor: update

* refactor: update

* refactor: update

* refactor: update

* refactor: update

* refactor: update

* refactor: update

* refactor:

* refactor: add metrics

* feat: add disk monitoring

* refactor: translate to english

* refacotor: add stats

* refactor: remove color

* feat: add log server metrics

* refactor: remove unused deps

* refactor: add origin

* refactor: add logs

* refactor: update

* feat: add series monitoring

* refactor: add system monitoring

* feat: add benchmark to optimize data

* refactor: update fn

* refactor: remove comments

* refactor: update

* refactor: exclude items

* feat: add refresh rate

* feat: add monitoring remote servers

* refactor: update

* refactor: remove unsued volumes

* refactor: update monitoring

* refactor: add more presets

* feat: add container metrics

* feat: add docker monitoring

* refactor: update conversion

* refactor: remove unused code

* refactor: update

* refactor: add docker compose logs

* refactor: add docker cli

* refactor: add install curl

* refactor: add get update

* refactor: add monitoring remote servers

* refactor: add containers config

* feat: add container specification

* refactor: update path

* refactor: add server filter

* refactor: simplify logic

* fix: verify if file exist before get stats

* refactor: update

* refactor: remove unused deps

* test: add test for containers

* refactor: update

* refactor add memory collector

* refactor: update

* refactor: update

* refactor: update

* refactor: remove

* refactor: add memory

* refactor: add server memory usage

* refactor: change memory

* refactor: update

* refactor: update

* refactor: add container metrics

* refactor: comment code

* refactor: mount proc bind

* refactor: change interval with node cron

* refactor: remove opening file

* refactor: use streams

* refactor: remove unused ws

* refactor: disable live when is all

* refactor: add sqlite

* refactor: update

* feat: add golang benchmark

* refactor: update go

* refactor: update dockerfile

* refactor: update db

* refactor: add env

* refactor: separate logic

* refactor: split logic

* refactor: update logs

* refactor: update dockerfile

* refactor: hide .env

* refactor: update

* chore: hide ,.ebnv

* refactor: add end angle

* refactor: update

* refactor: update

* refactor: update

* refactor: update

* refactor: update

* refactor: update monitoring

* refactor: add mount db

* refactor: add metrics and url callback

* refactor: add middleware

* refactor: add threshold property

* feat: add memory and cpu threshold notification

* feat: send notifications to the server

* feat: add metrics for dokploy server

* refactor: add dokploy server to monitoring

* refactor: update methods

* refactor: add admin to useeffect

* refactor: stop monitoring containers if elements are 0

* refactor: cancel request if appName is empty

* refactor: reuse methods

* chore; add feat monitoring

* refactor: set base url

* refactor: adjust monitoring

* refactor: delete migrations

* feat: add columns

* fix: add missing flag

* refactor: add free metrics

* refactor: add paid monitoring

* refactor: update methods

* feat: improve ui

* feat: add container stats

* refactor: add all container metrics

* refactor: add color primary

* refactor: change default rate limiting refresher

* refactor: update retention days

* refactor: use json instead of individual properties

* refactor: lint

* refactor: pass json env

* refactor: update

* refactor: delete

* refactor: update

* refactor: fix types

* refactor: add retention days

* chore: add license

* refactor: create db

* refactor: update path

* refactor: update setup

* refactor: update

* refactor: create files

* refactor: update

* refactor: delete

* refactor: update

* refactor: update token metrics

* fix: typechecks

* refactor: setup web server

* refactor: update error handling and add monitoring

* refactor: add local storage save

* refactor: add spacing

* refactor: update

* refactor: upgrade drizzle

* refactor: delete

* refactor: uppgrade drizzle kit

* refactor: update search with jsonB

* chore: upgrade drizzle

* chore: update packages

* refactor: add missing type

* refactor: add serverType

* refactor: update url

* refactor: update

* refactor: update

* refactor: hide monitoring on self hosted

* refactor: update server

* refactor: update

* refactor: update

* refactor: pin node version
This commit is contained in:
Mauricio Siu
2025-02-02 14:08:06 -06:00
committed by GitHub
parent 8c69d2a085
commit 74a0f5e992
150 changed files with 36173 additions and 11538 deletions

View File

@@ -2,7 +2,7 @@ name: Build Docker images
on:
push:
branches: ["canary", "main"]
branches: ["canary", "main", "feat/monitoring"]
jobs:
build-and-push-cloud-image:
@@ -17,7 +17,7 @@ jobs:
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
@@ -53,8 +53,7 @@ jobs:
push: true
tags: |
siumauricio/schedule:${{ github.ref_name == 'main' && 'latest' || 'canary' }}
platforms: linux/amd64
platforms: linux/amd64
build-and-push-server-image:
runs-on: ubuntu-latest
@@ -77,4 +76,27 @@ jobs:
push: true
tags: |
siumauricio/server:${{ github.ref_name == 'main' && 'latest' || 'canary' }}
platforms: linux/amd64
platforms: linux/amd64
build-and-push-monitoring-image:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
context: .
file: ./Dockerfile.monitoring
push: true
tags: |
siumauricio/monitoring:${{ github.ref_name == 'main' && 'latest' || 'canary' }}
platforms: linux/amd64

View File

@@ -2,7 +2,7 @@ name: Dokploy Docker Build
on:
push:
branches: [main, canary, feat/github-runners]
branches: [main, canary, "feat/monitoring"]
env:
IMAGE_NAME: dokploy/dokploy

3
.gitignore vendored
View File

@@ -39,3 +39,6 @@ yarn-error.log*
# Misc
.DS_Store
*.pem
.db

View File

@@ -1,4 +1,4 @@
FROM node:20-slim AS base
FROM node:20.9-slim AS base
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable

View File

@@ -1,4 +1,4 @@
FROM node:20-slim AS base
FROM node:20.9-slim AS base
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable

41
Dockerfile.monitoring Normal file
View File

@@ -0,0 +1,41 @@
# Build stage
FROM golang:1.21-alpine3.19 AS builder
# Instalar dependencias necesarias
RUN apk add --no-cache gcc musl-dev sqlite-dev
# Establecer el directorio de trabajo
WORKDIR /app
# Copiar todo el código fuente primero
COPY . .
# Movernos al directorio de la aplicación golang
WORKDIR /app/apps/monitoring
# Descargar dependencias
RUN go mod download
# Compilar la aplicación
RUN CGO_ENABLED=1 GOOS=linux go build -o main main.go
# Etapa final
FROM alpine:3.19
# Instalar SQLite y otras dependencias necesarias
RUN apk add --no-cache sqlite-libs docker-cli
WORKDIR /app
# Copiar el binario compilado y el archivo monitor.go
COPY --from=builder /app/apps/monitoring/main ./main
COPY --from=builder /app/apps/monitoring/main.go ./monitor.go
# COPY --from=builder /app/apps/golang/.env ./.env
# Exponer el puerto
ENV PORT=3001
EXPOSE 3001
# Ejecutar la aplicación
CMD ["./main"]

View File

@@ -1,4 +1,4 @@
FROM node:20-slim AS base
FROM node:20.9-slim AS base
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable

View File

@@ -1,4 +1,4 @@
FROM node:20-slim AS base
FROM node:20.9-slim AS base
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable

View File

@@ -14,6 +14,29 @@ import {
import { beforeEach, expect, test, vi } from "vitest";
const baseAdmin: Admin = {
enablePaidFeatures: false,
metricsConfig: {
containers: {
refreshRate: 20,
services: {
include: [],
exclude: [],
},
},
server: {
type: "Dokploy",
cronJob: "",
port: 4500,
refreshRate: 20,
retentionDays: 2,
token: "",
thresholds: {
cpu: 0,
memory: 0,
},
urlCallback: "",
},
},
cleanupCacheApplications: false,
cleanupCacheOnCompose: false,
cleanupCacheOnPreviews: false,

View File

@@ -8,7 +8,7 @@ import {
Tooltip,
YAxis,
} from "recharts";
import type { DockerStatsJSON } from "./show";
import type { DockerStatsJSON } from "./show-free-container-monitoring";
interface Props {
acummulativeData: DockerStatsJSON["block"];

View File

@@ -8,7 +8,7 @@ import {
Tooltip,
YAxis,
} from "recharts";
import type { DockerStatsJSON } from "./show";
import type { DockerStatsJSON } from "./show-free-container-monitoring";
interface Props {
acummulativeData: DockerStatsJSON["cpu"];

View File

@@ -8,7 +8,7 @@ import {
Tooltip,
YAxis,
} from "recharts";
import type { DockerStatsJSON } from "./show";
import type { DockerStatsJSON } from "./show-free-container-monitoring";
interface Props {
acummulativeData: DockerStatsJSON["disk"];

View File

@@ -8,9 +8,8 @@ import {
Tooltip,
YAxis,
} from "recharts";
import type { DockerStatsJSON } from "./show";
import { convertMemoryToBytes } from "./show";
import type { DockerStatsJSON } from "./show-free-container-monitoring";
import { convertMemoryToBytes } from "./show-free-container-monitoring";
interface Props {
acummulativeData: DockerStatsJSON["memory"];
memoryLimitGB: number;

View File

@@ -8,8 +8,7 @@ import {
Tooltip,
YAxis,
} from "recharts";
import type { DockerStatsJSON } from "./show";
1;
import type { DockerStatsJSON } from "./show-free-container-monitoring";
interface Props {
acummulativeData: DockerStatsJSON["network"];
}

View File

@@ -0,0 +1,126 @@
import { Button } from "@/components/ui/button";
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { Label } from "@/components/ui/label";
import {
Select,
SelectContent,
SelectGroup,
SelectItem,
SelectLabel,
SelectTrigger,
SelectValue,
} from "@/components/ui/select";
import { api } from "@/utils/api";
import { Loader2 } from "lucide-react";
import { useEffect, useState } from "react";
import { toast } from "sonner";
import { ContainerFreeMonitoring } from "./show-free-container-monitoring";
interface Props {
appName: string;
serverId?: string;
appType: "stack" | "docker-compose";
}
export const ComposeFreeMonitoring = ({
appName,
appType = "stack",
serverId,
}: Props) => {
const { data, isLoading } = api.docker.getContainersByAppNameMatch.useQuery(
{
appName: appName,
appType,
serverId,
},
{
enabled: !!appName,
},
);
const [containerAppName, setContainerAppName] = useState<
string | undefined
>();
const [containerId, setContainerId] = useState<string | undefined>();
const { mutateAsync: restart, isLoading: isRestarting } =
api.docker.restartContainer.useMutation();
useEffect(() => {
if (data && data?.length > 0) {
setContainerAppName(data[0]?.name);
setContainerId(data[0]?.containerId);
}
}, [data]);
return (
<>
<CardHeader>
<CardTitle className="text-xl">Monitoring</CardTitle>
<CardDescription>Watch the usage of your compose</CardDescription>
</CardHeader>
<CardContent className="flex flex-col gap-4">
<Label>Select a container to watch the monitoring</Label>
<div className="flex flex-row gap-4">
<Select
onValueChange={(value) => {
setContainerAppName(value);
setContainerId(
data?.find((container) => container.name === value)
?.containerId,
);
}}
value={containerAppName}
>
<SelectTrigger>
{isLoading ? (
<div className="flex flex-row gap-2 items-center justify-center text-sm text-muted-foreground">
<span>Loading...</span>
<Loader2 className="animate-spin size-4" />
</div>
) : (
<SelectValue placeholder="Select a container" />
)}
</SelectTrigger>
<SelectContent>
<SelectGroup>
{data?.map((container) => (
<SelectItem
key={container.containerId}
value={container.name}
>
{container.name} ({container.containerId}) {container.state}
</SelectItem>
))}
<SelectLabel>Containers ({data?.length})</SelectLabel>
</SelectGroup>
</SelectContent>
</Select>
<Button
isLoading={isRestarting}
onClick={async () => {
if (!containerId) return;
toast.success(`Restarting container ${containerAppName}`);
await restart({ containerId }).then(() => {
toast.success("Container restarted");
});
}}
>
Restart
</Button>
</div>
<ContainerFreeMonitoring
appName={containerAppName || ""}
appType={appType}
/>
</CardContent>
</>
);
};

View File

@@ -120,7 +120,7 @@ export const convertMemoryToBytes = (
}
};
export const DockerMonitoring = ({
export const ContainerFreeMonitoring = ({
appName,
appType = "application",
}: Props) => {
@@ -206,128 +206,111 @@ export const DockerMonitoring = ({
}, [appName]);
return (
<div>
<Card className="h-full bg-sidebar p-2.5 rounded-xl mx-auto w-full">
<div className="rounded-xl bg-background shadow-md p-6 flex flex-col gap-4">
<header className="flex items-center justify-between">
<div className="space-y-1">
<h1 className="text-2xl font-semibold tracking-tight">
Monitoring
</h1>
<p className="text-sm text-muted-foreground">
Watch the usage of your server in the current app
</p>
</div>
</header>
<div className="grid gap-6 lg:grid-cols-2">
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">CPU Usage</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
Used: {currentData.cpu.value}%
</span>
<Progress
value={currentData.cpu.value}
className="w-[100%]"
/>
<DockerCpuChart acummulativeData={acummulativeData.cpu} />
</div>
</CardContent>
</Card>
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">
Memory Usage
</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`Used: ${currentData.memory.value.used} / Limit: ${currentData.memory.value.total} `}
</span>
<Progress
value={
// @ts-ignore
(convertMemoryToBytes(currentData.memory.value.used) /
// @ts-ignore
convertMemoryToBytes(currentData.memory.value.total)) *
100
}
className="w-[100%]"
/>
<DockerMemoryChart
acummulativeData={acummulativeData.memory}
memoryLimitGB={
// @ts-ignore
convertMemoryToBytes(currentData.memory.value.total) /
1024 ** 3
}
/>
</div>
</CardContent>
</Card>
{appName === "dokploy" && (
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">
Disk Space
</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`Used: ${currentData.disk.value.diskUsage} GB / Limit: ${currentData.disk.value.diskTotal} GB`}
</span>
<Progress
value={currentData.disk.value.diskUsedPercentage}
className="w-[100%]"
/>
<DockerDiskChart
acummulativeData={acummulativeData.disk}
diskTotal={currentData.disk.value.diskTotal}
/>
</div>
</CardContent>
</Card>
)}
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">Block I/O</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`Read: ${currentData.block.value.readMb} / Write: ${currentData.block.value.writeMb} `}
</span>
<DockerBlockChart acummulativeData={acummulativeData.block} />
</div>
</CardContent>
</Card>
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">
Network I/O
</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`In MB: ${currentData.network.value.inputMb} / Out MB: ${currentData.network.value.outputMb} `}
</span>
<DockerNetworkChart
acummulativeData={acummulativeData.network}
/>
</div>
</CardContent>
</Card>
</div>
<div className="rounded-xl bg-background shadow-md flex flex-col gap-4">
<header className="flex items-center justify-between">
<div className="space-y-1">
<h1 className="text-2xl font-semibold tracking-tight">Monitoring</h1>
<p className="text-sm text-muted-foreground">
Watch the usage of your server in the current app
</p>
</div>
</Card>
</header>
<div className="grid gap-6 lg:grid-cols-2">
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">CPU Usage</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
Used: {currentData.cpu.value}%
</span>
<Progress value={currentData.cpu.value} className="w-[100%]" />
<DockerCpuChart acummulativeData={acummulativeData.cpu} />
</div>
</CardContent>
</Card>
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">Memory Usage</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`Used: ${currentData.memory.value.used} / Limit: ${currentData.memory.value.total} `}
</span>
<Progress
value={
// @ts-ignore
(convertMemoryToBytes(currentData.memory.value.used) /
// @ts-ignore
convertMemoryToBytes(currentData.memory.value.total)) *
100
}
className="w-[100%]"
/>
<DockerMemoryChart
acummulativeData={acummulativeData.memory}
memoryLimitGB={
// @ts-ignore
convertMemoryToBytes(currentData.memory.value.total) /
1024 ** 3
}
/>
</div>
</CardContent>
</Card>
{appName === "dokploy" && (
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">Disk Space</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`Used: ${currentData.disk.value.diskUsage} GB / Limit: ${currentData.disk.value.diskTotal} GB`}
</span>
<Progress
value={currentData.disk.value.diskUsedPercentage}
className="w-[100%]"
/>
<DockerDiskChart
acummulativeData={acummulativeData.disk}
diskTotal={currentData.disk.value.diskTotal}
/>
</div>
</CardContent>
</Card>
)}
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">Block I/O</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`Read: ${currentData.block.value.readMb} / Write: ${currentData.block.value.writeMb} `}
</span>
<DockerBlockChart acummulativeData={acummulativeData.block} />
</div>
</CardContent>
</Card>
<Card className="bg-background">
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<CardTitle className="text-sm font-medium">Network I/O</CardTitle>
</CardHeader>
<CardContent>
<div className="flex flex-col gap-2 w-full">
<span className="text-sm text-muted-foreground">
{`In MB: ${currentData.network.value.inputMb} / Out MB: ${currentData.network.value.outputMb} `}
</span>
<DockerNetworkChart acummulativeData={acummulativeData.network} />
</div>
</CardContent>
</Card>
</div>
</div>
);
};

View File

@@ -0,0 +1,189 @@
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
type ChartConfig,
ChartContainer,
ChartLegend,
ChartLegendContent,
ChartTooltip,
} from "@/components/ui/chart";
import { formatTimestamp } from "@/lib/utils";
import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
interface ContainerMetric {
timestamp: string;
BlockIO: {
read: number;
write: number;
readUnit: string;
writeUnit: string;
};
}
interface Props {
data: ContainerMetric[];
}
interface FormattedMetric {
timestamp: string;
read: number;
write: number;
readUnit: string;
writeUnit: string;
}
const chartConfig = {
read: {
label: "Read",
color: "hsl(217, 91%, 60%)", // Azul brillante
},
write: {
label: "Write",
color: "hsl(142, 71%, 45%)", // Verde brillante
},
} satisfies ChartConfig;
export const ContainerBlockChart = ({ data }: Props) => {
const formattedData = data.map((metric) => ({
timestamp: metric.timestamp,
read: metric.BlockIO.read,
write: metric.BlockIO.write,
readUnit: metric.BlockIO.readUnit,
writeUnit: metric.BlockIO.writeUnit,
}));
const latestData = formattedData[formattedData.length - 1] || {
timestamp: "",
read: 0,
write: 0,
readUnit: "B",
writeUnit: "B",
};
return (
<Card className="bg-transparent">
<CardHeader className="border-b py-5">
<CardTitle>Block I/O</CardTitle>
<CardDescription>
Read: {latestData.read}
{latestData.readUnit} / Write: {latestData.write}
{latestData.writeUnit}
</CardDescription>
</CardHeader>
<CardContent className="px-2 pt-4 sm:px-6 sm:pt-6">
<ChartContainer
config={chartConfig}
className="aspect-auto h-[250px] w-full"
>
<AreaChart data={formattedData}>
<defs>
<linearGradient id="fillRead" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(217, 91%, 60%)"
stopOpacity={0.3}
/>
<stop
offset="95%"
stopColor="hsl(217, 91%, 60%)"
stopOpacity={0.1}
/>
</linearGradient>
<linearGradient id="fillWrite" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(142, 71%, 45%)"
stopOpacity={0.3}
/>
<stop
offset="95%"
stopColor="hsl(142, 71%, 45%)"
stopOpacity={0.1}
/>
</linearGradient>
</defs>
<CartesianGrid vertical={false} />
<XAxis
dataKey="timestamp"
tickLine={false}
axisLine={false}
tickMargin={8}
minTickGap={32}
tickFormatter={(value) => formatTimestamp(value)}
/>
<YAxis />
<ChartTooltip
cursor={false}
content={({ active, payload, label }) => {
if (active && payload && payload.length) {
const data = payload?.[0]?.payload;
return (
<div className="rounded-lg border bg-background p-2 shadow-sm">
<div className="grid grid-cols-2 gap-2">
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Time
</span>
<span className="font-bold">
{formatTimestamp(label)}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Read
</span>
<span className="font-bold">
{data.read}
{data.readUnit}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Write
</span>
<span className="font-bold">
{data.write}
{data.writeUnit}
</span>
</div>
</div>
</div>
);
}
return null;
}}
/>
<Area
name="Write"
dataKey="write"
type="monotone"
fill="url(#fillWrite)"
stroke="hsl(142, 71%, 45%)"
strokeWidth={2}
fillOpacity={0.3}
/>
<Area
name="Read"
dataKey="read"
type="monotone"
fill="url(#fillRead)"
stroke="hsl(217, 91%, 60%)"
strokeWidth={2}
fillOpacity={0.3}
/>
<ChartLegend
content={<ChartLegendContent />}
verticalAlign="bottom"
align="center"
/>
</AreaChart>
</ChartContainer>
</CardContent>
</Card>
);
};

View File

@@ -0,0 +1,128 @@
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
type ChartConfig,
ChartContainer,
ChartLegend,
ChartLegendContent,
ChartTooltip,
} from "@/components/ui/chart";
import { formatTimestamp } from "@/lib/utils";
import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
interface ContainerMetric {
timestamp: string;
CPU: number;
}
interface Props {
data: ContainerMetric[];
}
const chartConfig = {
cpu: {
label: "CPU",
color: "hsl(var(--chart-1))",
},
} satisfies ChartConfig;
export const ContainerCPUChart = ({ data }: Props) => {
const formattedData = data.map((metric) => ({
timestamp: metric.timestamp,
cpu: metric.CPU,
}));
const latestData = formattedData[formattedData.length - 1] || {
timestamp: "",
cpu: 0,
};
return (
<Card className="bg-transparent">
<CardHeader className="border-b py-5">
<CardTitle>CPU</CardTitle>
<CardDescription>CPU Usage: {latestData.cpu}%</CardDescription>
</CardHeader>
<CardContent className="px-2 pt-4 sm:px-6 sm:pt-6">
<ChartContainer
config={chartConfig}
className="aspect-auto h-[250px] w-full"
>
<AreaChart data={formattedData}>
<defs>
<linearGradient id="fillCPU" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-1))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-1))"
stopOpacity={0.1}
/>
</linearGradient>
</defs>
<CartesianGrid vertical={false} />
<XAxis
dataKey="timestamp"
tickLine={false}
axisLine={false}
tickMargin={8}
minTickGap={32}
tickFormatter={(value) => formatTimestamp(value)}
/>
<YAxis tickFormatter={(value) => `${value}%`} domain={[0, 100]} />
<ChartTooltip
cursor={false}
content={({ active, payload, label }) => {
if (active && payload && payload.length) {
const data = payload?.[0]?.payload;
return (
<div className="rounded-lg border bg-background p-2 shadow-sm">
<div className="grid grid-cols-2 gap-2">
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Time
</span>
<span className="font-bold">
{formatTimestamp(label)}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
CPU
</span>
<span className="font-bold">{data.cpu}%</span>
</div>
</div>
</div>
);
}
return null;
}}
/>
<Area
name="CPU"
dataKey="cpu"
type="monotone"
fill="url(#fillCPU)"
stroke="hsl(var(--chart-1))"
strokeWidth={2}
/>
<ChartLegend
content={<ChartLegendContent />}
verticalAlign="bottom"
align="center"
/>
</AreaChart>
</ChartContainer>
</CardContent>
</Card>
);
};

View File

@@ -0,0 +1,149 @@
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
type ChartConfig,
ChartContainer,
ChartLegend,
ChartLegendContent,
ChartTooltip,
} from "@/components/ui/chart";
import { formatTimestamp } from "@/lib/utils";
import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
interface ContainerMetric {
timestamp: string;
Memory: {
percentage: number;
used: number;
total: number;
usedUnit: string;
totalUnit: string;
};
}
interface Props {
data: ContainerMetric[];
}
const chartConfig = {
memory: {
label: "Memory",
color: "hsl(var(--chart-2))",
},
} satisfies ChartConfig;
const formatMemoryValue = (value: number) => {
return value.toLocaleString("en-US", {
minimumFractionDigits: 1,
maximumFractionDigits: 2,
});
};
export const ContainerMemoryChart = ({ data }: Props) => {
const formattedData = data.map((metric) => ({
timestamp: metric.timestamp,
memory: metric.Memory.percentage,
usage: `${formatMemoryValue(metric.Memory.used)}${metric.Memory.usedUnit} / ${formatMemoryValue(metric.Memory.total)}${metric.Memory.totalUnit}`,
}));
const latestData = formattedData[formattedData.length - 1] || {
timestamp: "",
memory: 0,
usage: "0 / 0 B",
};
return (
<Card className="bg-transparent">
<CardHeader className="border-b py-5">
<CardTitle>Memory</CardTitle>
<CardDescription>Memory Usage: {latestData.usage}</CardDescription>
</CardHeader>
<CardContent className="px-2 pt-4 sm:px-6 sm:pt-6">
<ChartContainer
config={chartConfig}
className="aspect-auto h-[250px] w-full"
>
<AreaChart data={formattedData}>
<defs>
<linearGradient id="fillMemory" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-2))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-2))"
stopOpacity={0.1}
/>
</linearGradient>
</defs>
<CartesianGrid vertical={false} />
<XAxis
dataKey="timestamp"
tickLine={false}
axisLine={false}
tickMargin={8}
minTickGap={32}
tickFormatter={(value) => formatTimestamp(value)}
/>
<YAxis tickFormatter={(value) => `${value}%`} domain={[0, 100]} />
<ChartTooltip
cursor={false}
content={({ active, payload, label }) => {
if (active && payload && payload.length) {
const data = payload?.[0]?.payload;
return (
<div className="rounded-lg border bg-background p-2 shadow-sm">
<div className="grid grid-cols-2 gap-2">
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Time
</span>
<span className="font-bold">
{formatTimestamp(label)}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Memory
</span>
<span className="font-bold">{data.memory}%</span>
</div>
<div className="flex flex-col col-span-2">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Usage
</span>
<span className="font-bold">{data.usage}</span>
</div>
</div>
</div>
);
}
return null;
}}
/>
<Area
name="Memory"
dataKey="memory"
type="monotone"
fill="url(#fillMemory)"
stroke="hsl(var(--chart-2))"
strokeWidth={2}
/>
<ChartLegend
content={<ChartLegendContent />}
verticalAlign="bottom"
align="center"
/>
</AreaChart>
</ChartContainer>
</CardContent>
</Card>
);
};

View File

@@ -0,0 +1,186 @@
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
type ChartConfig,
ChartContainer,
ChartLegend,
ChartLegendContent,
ChartTooltip,
} from "@/components/ui/chart";
import { formatTimestamp } from "@/lib/utils";
import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
interface ContainerMetric {
timestamp: string;
Network: {
input: number;
output: number;
inputUnit: string;
outputUnit: string;
};
}
interface Props {
data: ContainerMetric[];
}
interface FormattedMetric {
timestamp: string;
input: number;
output: number;
inputUnit: string;
outputUnit: string;
}
const chartConfig = {
input: {
label: "Input",
color: "hsl(var(--chart-3))",
},
output: {
label: "Output",
color: "hsl(var(--chart-4))",
},
} satisfies ChartConfig;
export const ContainerNetworkChart = ({ data }: Props) => {
const formattedData: FormattedMetric[] = data.map((metric) => ({
timestamp: metric.timestamp,
input: metric.Network.input,
output: metric.Network.output,
inputUnit: metric.Network.inputUnit,
outputUnit: metric.Network.outputUnit,
}));
const latestData = formattedData[formattedData.length - 1] || {
input: 0,
output: 0,
inputUnit: "B",
outputUnit: "B",
};
return (
<Card className="bg-transparent">
<CardHeader className="border-b py-5">
<CardTitle>Network I/O</CardTitle>
<CardDescription>
Input: {latestData.input}
{latestData.inputUnit} / Output: {latestData.output}
{latestData.outputUnit}
</CardDescription>
</CardHeader>
<CardContent className="px-2 pt-4 sm:px-6 sm:pt-6">
<ChartContainer
config={chartConfig}
className="aspect-auto h-[250px] w-full"
>
<AreaChart data={formattedData}>
<defs>
<linearGradient id="fillInput" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-3))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-3))"
stopOpacity={0.1}
/>
</linearGradient>
<linearGradient id="fillOutput" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-4))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-4))"
stopOpacity={0.1}
/>
</linearGradient>
</defs>
<CartesianGrid vertical={false} />
<XAxis
dataKey="timestamp"
tickLine={false}
axisLine={false}
tickMargin={8}
minTickGap={32}
tickFormatter={(value) => formatTimestamp(value)}
/>
<YAxis />
<ChartTooltip
cursor={false}
content={({ active, payload, label }) => {
if (active && payload && payload.length) {
const data = payload?.[0]?.payload;
return (
<div className="rounded-lg border bg-background p-2 shadow-sm">
<div className="grid grid-cols-2 gap-2">
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Time
</span>
<span className="font-bold">
{formatTimestamp(label)}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Input
</span>
<span className="font-bold">
{data.input}
{data.inputUnit}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Output
</span>
<span className="font-bold">
{data.output}
{data.outputUnit}
</span>
</div>
</div>
</div>
);
}
return null;
}}
/>
<Area
name="Input"
dataKey="input"
type="monotone"
fill="url(#fillInput)"
stroke="hsl(var(--chart-3))"
strokeWidth={2}
/>
<Area
name="Output"
dataKey="output"
type="monotone"
fill="url(#fillOutput)"
stroke="hsl(var(--chart-4))"
strokeWidth={2}
/>
<ChartLegend
content={<ChartLegendContent />}
verticalAlign="bottom"
align="center"
/>
</AreaChart>
</ChartContainer>
</CardContent>
</Card>
);
};

View File

@@ -20,18 +20,22 @@ import { api } from "@/utils/api";
import { Loader2 } from "lucide-react";
import { useEffect, useState } from "react";
import { toast } from "sonner";
import { DockerMonitoring } from "../../monitoring/docker/show";
import { ContainerPaidMonitoring } from "./show-paid-container-monitoring";
interface Props {
appName: string;
serverId?: string;
appType: "stack" | "docker-compose";
baseUrl: string;
token: string;
}
export const ShowMonitoringCompose = ({
export const ComposePaidMonitoring = ({
appName,
appType = "stack",
serverId,
baseUrl,
token,
}: Props) => {
const { data, isLoading } = api.docker.getContainersByAppNameMatch.useQuery(
{
@@ -44,9 +48,9 @@ export const ShowMonitoringCompose = ({
},
);
const [containerAppName, setContainerAppName] = useState<
string | undefined
>();
const [containerAppName, setContainerAppName] = useState<string | undefined>(
"",
);
const [containerId, setContainerId] = useState<string | undefined>();
@@ -62,7 +66,7 @@ export const ShowMonitoringCompose = ({
return (
<div>
<Card className="bg-background">
<Card className="bg-background border-0">
<CardHeader>
<CardTitle className="text-xl">Monitoring</CardTitle>
<CardDescription>Watch the usage of your compose</CardDescription>
@@ -118,10 +122,13 @@ export const ShowMonitoringCompose = ({
Restart
</Button>
</div>
<DockerMonitoring
appName={containerAppName || ""}
appType={appType}
/>
<div className="flex flex-col gap-4">
<ContainerPaidMonitoring
appName={containerAppName || ""}
baseUrl={baseUrl}
token={token}
/>
</div>
</CardContent>
</Card>
</div>

View File

@@ -0,0 +1,298 @@
import { Card } from "@/components/ui/card";
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from "@/components/ui/select";
import { Cpu, HardDrive, Loader2, MemoryStick, Network } from "lucide-react";
import { useEffect, useState } from "react";
import { ContainerBlockChart } from "./container-block-chart";
import { ContainerCPUChart } from "./container-cpu-chart";
import { ContainerMemoryChart } from "./container-memory-chart";
import { ContainerNetworkChart } from "./container-network-chart";
const REFRESH_INTERVALS = {
"5000": "5 Seconds",
"10000": "10 Seconds",
"20000": "20 Seconds",
"30000": "30 Seconds",
} as const;
const DATA_POINTS_OPTIONS = {
"50": "50 points",
"200": "200 points",
"500": "500 points",
"800": "800 points",
"1200": "1200 points",
"1600": "1600 points",
"2000": "2000 points",
all: "All points",
} as const;
interface ContainerMetric {
timestamp: string;
CPU: number;
Memory: {
percentage: number;
used: number;
total: number;
unit: string;
usedUnit: string;
totalUnit: string;
};
Network: {
input: number;
output: number;
inputUnit: string;
outputUnit: string;
};
BlockIO: {
read: number;
write: number;
readUnit: string;
writeUnit: string;
};
Container: string;
ID: string;
Name: string;
}
interface Props {
appName: string;
baseUrl: string;
token: string;
}
export const ContainerPaidMonitoring = ({ appName, baseUrl, token }: Props) => {
const [historicalData, setHistoricalData] = useState<ContainerMetric[]>([]);
const [metrics, setMetrics] = useState<ContainerMetric>(
{} as ContainerMetric,
);
const [isLoading, setIsLoading] = useState(true);
const [error, setError] = useState<string | null>(null);
const [dataPoints, setDataPoints] =
useState<keyof typeof DATA_POINTS_OPTIONS>("50");
const [refreshInterval, setRefreshInterval] = useState<string>("5000");
const fetchMetrics = async () => {
try {
const url = new URL(`${baseUrl}/metrics/containers`);
// if (dataPoints !== "all") {
url.searchParams.append("limit", dataPoints);
// }
if (!appName) {
throw new Error(
[
"No Application Selected:",
"",
"Make Sure to select an application to monitor.",
].join("\n"),
);
}
url.searchParams.append("appName", appName);
const response = await fetch(url.toString(), {
headers: {
Authorization: `Bearer ${token}`,
},
});
if (!response.ok) {
throw new Error(
`Error ${response.status}: ${response.statusText}. Please verify that the application "${appName}" is running and this service is included in the monitoring configuration.`,
);
}
const data = await response.json();
if (!Array.isArray(data) || data.length === 0) {
throw new Error(
[
`No monitoring data available for "${appName}". This could be because:`,
"",
"1. The container was recently started - wait a few minutes for data to be collected",
"2. The container is not running - verify its status",
"3. The service is not included in your monitoring configuration",
].join("\n"),
);
}
setHistoricalData(data);
setMetrics(data[data.length - 1]);
setError(null);
} catch (err) {
setError(
err instanceof Error
? err.message
: "Failed to fetch metrics, Please check your monitoring Instance is Configured correctly.",
);
} finally {
setIsLoading(false);
}
};
useEffect(() => {
fetchMetrics();
if (dataPoints === "all") {
return;
}
const interval = setInterval(() => {
fetchMetrics();
}, Number(refreshInterval));
return () => clearInterval(interval);
}, [dataPoints, appName, token, refreshInterval]);
if (isLoading) {
return (
<div className="flex h-[400px] w-full items-center justify-center">
<Loader2 className="h-8 w-8 animate-spin text-muted-foreground" />
</div>
);
}
if (error) {
return (
<div className="mt-5 flex min-h-[55vh] w-full items-center justify-center p-4">
<div className="max-w-xl text-center">
<p className="mb-2 text-base font-medium leading-none text-muted-foreground">
Error fetching metrics for{" "}
<strong className="text-primary">{appName}</strong>
</p>
<p className="whitespace-pre-line text-sm text-destructive">
{error}
</p>
<p className=" text-sm text-muted-foreground">URL: {baseUrl}</p>
</div>
</div>
);
}
return (
<>
<div className="flex items-center justify-between">
<h2 className="text-2xl font-bold tracking-tight">
Container Monitoring
</h2>
<div className="flex items-center gap-2">
<span className="text-sm text-muted-foreground">Data points:</span>
<Select
value={dataPoints}
onValueChange={(value: keyof typeof DATA_POINTS_OPTIONS) =>
setDataPoints(value)
}
>
<SelectTrigger className="w-[180px]">
<SelectValue placeholder="Select points" />
</SelectTrigger>
<SelectContent>
{Object.entries(DATA_POINTS_OPTIONS).map(([value, label]) => (
<SelectItem key={value} value={value}>
{label}
</SelectItem>
))}
</SelectContent>
</Select>
<span className="text-sm text-muted-foreground">
Refresh interval:
</span>
<Select
value={refreshInterval}
onValueChange={(value: keyof typeof REFRESH_INTERVALS) =>
setRefreshInterval(value)
}
>
<SelectTrigger className="w-[180px]">
<SelectValue placeholder="Select interval" />
</SelectTrigger>
<SelectContent>
{Object.entries(REFRESH_INTERVALS).map(([value, label]) => (
<SelectItem key={value} value={value}>
{label}
</SelectItem>
))}
</SelectContent>
</Select>
</div>
</div>
{/* Stats Cards */}
<div className="grid gap-4 md:grid-cols-4">
<Card className="p-6 bg-transparent">
<div className="flex items-center gap-2">
<Cpu className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">CPU Usage</h3>
</div>
<p className="mt-2 text-2xl font-bold">{metrics.CPU}%</p>
</Card>
<Card className="p-6 bg-transparent">
<div className="flex items-center gap-2">
<MemoryStick className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">Memory Usage</h3>
</div>
<p className="mt-2 text-2xl font-bold">
{metrics.Memory.percentage}%
</p>
<p className="mt-1 text-sm text-muted-foreground">
{metrics.Memory.used} {metrics.Memory.unit} / {metrics.Memory.total}{" "}
{metrics.Memory.unit}
</p>
</Card>
<Card className="p-6 bg-transparent">
<div className="flex items-center gap-2">
<Network className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">Network I/O</h3>
</div>
<p className="mt-2 text-2xl font-bold">
{metrics.Network.input} {metrics.Network.inputUnit} /{" "}
{metrics.Network.output} {metrics.Network.outputUnit}
</p>
</Card>
<Card className="p-6 bg-transparent">
<div className="flex items-center gap-2">
<HardDrive className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">Block I/O</h3>
</div>
<p className="mt-2 text-2xl font-bold">
{metrics.BlockIO.read} {metrics.BlockIO.readUnit} /{" "}
{metrics.BlockIO.write} {metrics.BlockIO.writeUnit}
</p>
</Card>
</div>
{/* Container Information */}
<Card className="p-6 bg-transparent">
<h3 className="text-lg font-medium mb-4">Container Information</h3>
<div className="grid gap-4 md:grid-cols-2">
<div>
<h4 className="text-sm font-medium text-muted-foreground">
Container ID
</h4>
<p className="mt-1">{metrics.ID}</p>
</div>
<div>
<h4 className="text-sm font-medium text-muted-foreground">Name</h4>
<p className="mt-1">{metrics.Name}</p>
</div>
</div>
</Card>
{/* Charts Grid */}
<div className="grid gap-4 md:grid-cols-2 lg:grid-cols-2">
<ContainerCPUChart data={historicalData} />
<ContainerMemoryChart data={historicalData} />
<ContainerBlockChart data={historicalData} />
<ContainerNetworkChart data={historicalData} />
</div>
</>
);
};

View File

@@ -0,0 +1,115 @@
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
type ChartConfig,
ChartContainer,
ChartLegend,
ChartLegendContent,
ChartTooltip,
} from "@/components/ui/chart";
import { formatTimestamp } from "@/lib/utils";
import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
interface CPUChartProps {
data: any[];
}
const chartConfig = {
cpu: {
label: "CPU",
color: "hsl(var(--chart-1))",
},
} satisfies ChartConfig;
export function CPUChart({ data }: CPUChartProps) {
const latestData = data[data.length - 1] || {};
return (
<Card className="bg-transparent">
<CardHeader className="border-b py-5">
<CardTitle>CPU</CardTitle>
<CardDescription>CPU Usage: {latestData.cpu}%</CardDescription>
</CardHeader>
<CardContent className="px-2 pt-4 sm:px-6 sm:pt-6">
<ChartContainer
config={chartConfig}
className="aspect-auto h-[250px] w-full"
>
<AreaChart data={data}>
<defs>
<linearGradient id="fillCPU" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-1))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-1))"
stopOpacity={0.1}
/>
</linearGradient>
</defs>
<CartesianGrid vertical={false} />
<XAxis
dataKey="timestamp"
tickLine={false}
axisLine={false}
tickMargin={8}
minTickGap={32}
tickFormatter={(value) => formatTimestamp(value)}
/>
<YAxis tickFormatter={(value) => `${value}%`} domain={[0, 100]} />
<ChartTooltip
cursor={false}
content={({ active, payload, label }) => {
if (active && payload && payload.length) {
const data = payload?.[0]?.payload;
return (
<div className="rounded-lg border bg-background p-2 shadow-sm">
<div className="grid grid-cols-2 gap-2">
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Time
</span>
<span className="font-bold">
{formatTimestamp(label)}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
CPU
</span>
<span className="font-bold">{data.cpu}%</span>
</div>
</div>
</div>
);
}
return null;
}}
/>
<Area
name="CPU"
dataKey="cpu"
type="monotone"
fill="url(#fillCPU)"
stroke="hsl(var(--chart-1))"
strokeWidth={2}
/>
<ChartLegend
content={<ChartLegendContent />}
verticalAlign="bottom"
align="center"
/>
</AreaChart>
</ChartContainer>
</CardContent>
</Card>
);
}

View File

@@ -0,0 +1,120 @@
import { HardDrive } from "lucide-react";
import {
Label,
PolarGrid,
PolarRadiusAxis,
RadialBar,
RadialBarChart,
} from "recharts";
import {
Card,
CardContent,
CardDescription,
CardFooter,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { type ChartConfig, ChartContainer } from "@/components/ui/chart";
interface RadialChartProps {
data: any;
}
export function DiskChart({ data }: RadialChartProps) {
const diskUsed = Number.parseFloat(data.diskUsed || 0);
const totalDiskGB = Number.parseFloat(data.totalDisk || 0);
const usedDiskGB = (totalDiskGB * diskUsed) / 100;
const chartData = [
{
disk: 25,
fill: "hsl(var(--chart-2))",
},
];
const chartConfig = {
disk: {
label: "Disk",
color: "hsl(var(--chart-2))",
},
} satisfies ChartConfig;
const endAngle = (diskUsed * 360) / 100;
return (
<Card className="flex flex-col bg-transparent">
<CardHeader className="items-center border-b pb-5">
<CardTitle>Disk</CardTitle>
<CardDescription>Storage Space</CardDescription>
</CardHeader>
<CardContent className="flex-1 pb-0">
<ChartContainer
config={chartConfig}
className="mx-auto aspect-square max-h-[250px]"
>
<RadialBarChart
data={chartData}
startAngle={0}
endAngle={endAngle}
innerRadius={80}
outerRadius={110}
>
<PolarGrid
gridType="circle"
radialLines={false}
stroke="none"
className="first:fill-muted last:fill-background"
polarRadius={[86, 74]}
/>
<RadialBar
dataKey="disk"
background
cornerRadius={10}
fill="hsl(var(--chart-2))"
/>
<PolarRadiusAxis tick={false} tickLine={false} axisLine={false}>
<Label
content={({ viewBox }) => {
if (viewBox && "cx" in viewBox && "cy" in viewBox) {
return (
<text
x={viewBox.cx}
y={viewBox.cy}
textAnchor="middle"
dominantBaseline="middle"
>
<tspan
x={viewBox.cx}
y={viewBox.cy}
className="fill-foreground text-4xl font-bold"
>
{diskUsed.toFixed(1)}%
</tspan>
<tspan
x={viewBox.cx}
y={(viewBox.cy || 0) + 24}
className="fill-muted-foreground text-sm"
>
Used
</tspan>
</text>
);
}
}}
/>
</PolarRadiusAxis>
</RadialBarChart>
</ChartContainer>
</CardContent>
<CardFooter className="flex-col gap-2 text-sm">
<div className="flex items-center gap-2 font-medium leading-none">
<HardDrive className="h-4 w-4" /> {usedDiskGB.toFixed(1)} GB used
</div>
<div className="leading-none text-muted-foreground">
Of {totalDiskGB.toFixed(1)} GB total
</div>
</CardFooter>
</Card>
);
}

View File

@@ -0,0 +1,128 @@
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
type ChartConfig,
ChartContainer,
ChartTooltip,
} from "@/components/ui/chart";
import { formatTimestamp } from "@/lib/utils";
import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
interface MemoryChartProps {
data: any[];
}
const chartConfig = {
Memory: {
label: "Memory",
color: "hsl(var(--chart-2))",
},
} satisfies ChartConfig;
export function MemoryChart({ data }: MemoryChartProps) {
const latestData = data[data.length - 1] || {};
return (
<Card className="bg-transparent">
<CardHeader className="border-b py-5">
<CardTitle>Memory</CardTitle>
<CardDescription>
Memory Usage: {latestData.memUsedGB} GB of {latestData.memTotal} GB (
{latestData.memUsed}%)
</CardDescription>
</CardHeader>
<CardContent className="px-2 pt-4 sm:px-6 sm:pt-6">
<ChartContainer
config={chartConfig}
className="aspect-auto h-[250px] w-full"
>
<AreaChart data={data}>
<defs>
<linearGradient id="fillMemory" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-2))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-2))"
stopOpacity={0.1}
/>
</linearGradient>
</defs>
<CartesianGrid vertical={false} />
<XAxis
dataKey="timestamp"
tickLine={false}
axisLine={false}
tickMargin={8}
minTickGap={32}
tickFormatter={(value) => formatTimestamp(value)}
/>
<YAxis
yAxisId="left"
orientation="left"
tickFormatter={(value) => `${value}%`}
domain={[0, 100]}
/>
<YAxis
yAxisId="right"
orientation="right"
tickFormatter={(value) => `${value.toFixed(1)} GB`}
domain={[
0,
Math.ceil(Number.parseFloat(latestData.memTotal || "0")),
]}
/>
<ChartTooltip
cursor={false}
content={({ active, payload, label }) => {
if (active && payload && payload.length) {
const data = payload?.[0]?.payload;
return (
<div className="rounded-lg border bg-background p-2 shadow-sm">
<div className="grid grid-cols-2 gap-2">
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Time
</span>
<span className="font-bold">
{formatTimestamp(label)}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Memory
</span>
<span className="font-bold">
{data.memUsed}% ({data.memUsedGB} GB)
</span>
</div>
</div>
</div>
);
}
return null;
}}
/>
<Area
yAxisId="left"
dataKey="memUsed"
type="monotone"
fill="url(#fillMemory)"
stroke="hsl(var(--chart-2))"
strokeWidth={2}
name="Memory"
/>
</AreaChart>
</ChartContainer>
</CardContent>
</Card>
);
}

View File

@@ -0,0 +1,145 @@
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
type ChartConfig,
ChartContainer,
ChartLegend,
ChartLegendContent,
ChartTooltip,
} from "@/components/ui/chart";
import { formatTimestamp } from "@/lib/utils";
import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
interface NetworkChartProps {
data: any[];
}
const chartConfig = {
networkIn: {
label: "Network In",
color: "hsl(var(--chart-3))",
},
networkOut: {
label: "Network Out",
color: "hsl(var(--chart-4))",
},
} satisfies ChartConfig;
export function NetworkChart({ data }: NetworkChartProps) {
const latestData = data[data.length - 1] || {};
return (
<Card className="bg-transparent">
<CardHeader className="border-b py-5">
<CardTitle>Network</CardTitle>
<CardDescription>
Network Traffic: {latestData.networkOut} KB/s {" "}
{latestData.networkIn} KB/s
</CardDescription>
</CardHeader>
<CardContent className="px-2 pt-4 sm:px-6 sm:pt-6">
<ChartContainer
config={chartConfig}
className="aspect-auto h-[250px] w-full"
>
<AreaChart data={data}>
<defs>
<linearGradient id="fillNetworkIn" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-3))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-3))"
stopOpacity={0.1}
/>
</linearGradient>
<linearGradient id="fillNetworkOut" x1="0" y1="0" x2="0" y2="1">
<stop
offset="5%"
stopColor="hsl(var(--chart-4))"
stopOpacity={0.8}
/>
<stop
offset="95%"
stopColor="hsl(var(--chart-4))"
stopOpacity={0.1}
/>
</linearGradient>
</defs>
<CartesianGrid vertical={false} />
<XAxis
dataKey="timestamp"
tickLine={false}
axisLine={false}
tickMargin={8}
minTickGap={32}
tickFormatter={(value) => formatTimestamp(value)}
/>
<YAxis tickFormatter={(value) => `${value} KB/s`} />
<ChartTooltip
cursor={false}
content={({ active, payload, label }) => {
if (active && payload && payload.length) {
const data = payload?.[0]?.payload;
return (
<div className="rounded-lg border bg-background p-2 shadow-sm">
<div className="grid grid-cols-2 gap-2">
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Time
</span>
<span className="font-bold">
{formatTimestamp(label)}
</span>
</div>
<div className="flex flex-col">
<span className="text-[0.70rem] uppercase text-muted-foreground">
Network
</span>
<span className="font-bold">
{data.networkOut} KB/s
<br /> {data.networkIn} KB/s
</span>
</div>
</div>
</div>
);
}
return null;
}}
/>
<Area
name="Network In"
dataKey="networkIn"
type="monotone"
fill="url(#fillNetworkIn)"
stroke="hsl(var(--chart-3))"
strokeWidth={2}
/>
<Area
name="Network Out"
dataKey="networkOut"
type="monotone"
fill="url(#fillNetworkOut)"
stroke="hsl(var(--chart-4))"
strokeWidth={2}
/>
<ChartLegend
content={<ChartLegendContent />}
verticalAlign="bottom"
align="center"
/>
</AreaChart>
</ChartContainer>
</CardContent>
</Card>
);
}

View File

@@ -0,0 +1,302 @@
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from "@/components/ui/select";
import { Clock, Cpu, HardDrive, Loader2, MemoryStick } from "lucide-react";
import type React from "react";
import { useEffect, useState } from "react";
import { CPUChart } from "./cpu-chart";
import { DiskChart } from "./disk-chart";
import { MemoryChart } from "./memory-chart";
import { NetworkChart } from "./network-chart";
const REFRESH_INTERVALS = {
"5000": "5 Seconds",
"10000": "10 Seconds",
"20000": "20 Seconds",
"30000": "30 Seconds",
} as const;
const DATA_POINTS_OPTIONS = {
"50": "50 points",
"200": "200 points",
"500": "500 points",
"800": "800 points",
"1200": "1200 points",
"1600": "1600 points",
"2000": "2000 points",
all: "All points",
} as const;
interface SystemMetrics {
cpu: string;
cpuModel: string;
cpuCores: number;
cpuPhysicalCores: number;
cpuSpeed: number;
os: string;
distro: string;
kernel: string;
arch: string;
memUsed: string;
memUsedGB: string;
memTotal: string;
uptime: number;
diskUsed: string;
totalDisk: string;
networkIn: string;
networkOut: string;
timestamp: string;
}
interface Props {
BASE_URL?: string;
token?: string;
}
export const ShowPaidMonitoring = ({
BASE_URL = process.env.NEXT_PUBLIC_METRICS_URL ||
"http://localhost:3001/metrics",
token = process.env.NEXT_PUBLIC_METRICS_TOKEN || "my-token",
}: Props) => {
const [historicalData, setHistoricalData] = useState<SystemMetrics[]>([]);
const [metrics, setMetrics] = useState<SystemMetrics>({} as SystemMetrics);
const [isLoading, setIsLoading] = useState(true);
const [error, setError] = useState<string | null>(null);
const [dataPoints, setDataPoints] =
useState<keyof typeof DATA_POINTS_OPTIONS>("50");
const [refreshInterval, setRefreshInterval] = useState<string>("5000");
const fetchMetrics = async () => {
try {
const url = new URL(BASE_URL);
url.searchParams.append("limit", dataPoints);
const response = await fetch(url.toString(), {
headers: {
Authorization: `Bearer ${token}`,
},
});
if (!response.ok) {
throw new Error(
`Error ${response.status}: ${response.statusText}. Ensure the container is running and this service is included in the monitoring configuration.`,
);
}
const data = await response.json();
if (!Array.isArray(data) || data.length === 0) {
throw new Error(
[
"No monitoring data available. This could be because:",
"",
"1. You don't have setup the monitoring service, you can do in web server section.",
"2. If you already have setup the monitoring service, wait a few minutes and refresh the page.",
].join("\n"),
);
}
const formattedData = data.map((metric: SystemMetrics) => ({
timestamp: metric.timestamp,
cpu: Number.parseFloat(metric.cpu),
cpuModel: metric.cpuModel,
cpuCores: metric.cpuCores,
cpuPhysicalCores: metric.cpuPhysicalCores,
cpuSpeed: metric.cpuSpeed,
os: metric.os,
distro: metric.distro,
kernel: metric.kernel,
arch: metric.arch,
memUsed: Number.parseFloat(metric.memUsed),
memUsedGB: Number.parseFloat(metric.memUsedGB),
memTotal: Number.parseFloat(metric.memTotal),
networkIn: Number.parseFloat(metric.networkIn),
networkOut: Number.parseFloat(metric.networkOut),
diskUsed: Number.parseFloat(metric.diskUsed),
totalDisk: Number.parseFloat(metric.totalDisk),
uptime: metric.uptime,
}));
// @ts-ignore
setHistoricalData(formattedData);
// @ts-ignore
setMetrics(formattedData[formattedData.length - 1] || {});
setError(null);
} catch (err) {
setError(
err instanceof Error
? err.message
: "Failed to fetch metrics, Please check your monitoring Instance is Configured correctly.",
);
} finally {
setIsLoading(false);
}
};
const formatUptime = (seconds: number): string => {
const days = Math.floor(seconds / (24 * 60 * 60));
const hours = Math.floor((seconds % (24 * 60 * 60)) / (60 * 60));
const minutes = Math.floor((seconds % (60 * 60)) / 60);
return `${days}d ${hours}h ${minutes}m`;
};
useEffect(() => {
fetchMetrics();
if (dataPoints === "all") {
return;
}
const interval = setInterval(() => {
fetchMetrics();
}, Number(refreshInterval));
return () => clearInterval(interval);
}, [dataPoints, token, refreshInterval]);
if (isLoading) {
return (
<div className="flex h-[400px] w-full items-center justify-center">
<Loader2 className="h-8 w-8 animate-spin text-muted-foreground" />
</div>
);
}
if (error) {
return (
<div className="flex min-h-[55vh] w-full items-center justify-center p-4">
<div className="max-w-xl text-center">
<p className="mb-2 text-base font-medium leading-none text-muted-foreground">
Error fetching metrics{" "}
</p>
<p className="whitespace-pre-line text-sm text-destructive">
{error}
</p>
<p className=" text-sm text-muted-foreground">URL: {BASE_URL}</p>
</div>
</div>
);
}
return (
<div className="space-y-4 pt-5 pb-10 w-full px-4">
<div className="flex justify-between items-center">
<h2 className="text-2xl font-bold tracking-tight">System Monitoring</h2>
<div className="flex items-center gap-2">
<span className="text-sm text-muted-foreground">Data points:</span>
<Select
value={dataPoints}
onValueChange={(value: keyof typeof DATA_POINTS_OPTIONS) =>
setDataPoints(value)
}
>
<SelectTrigger className="w-[180px]">
<SelectValue placeholder="Select points" />
</SelectTrigger>
<SelectContent>
{Object.entries(DATA_POINTS_OPTIONS).map(([value, label]) => (
<SelectItem key={value} value={value}>
{label}
</SelectItem>
))}
</SelectContent>
</Select>
<span className="text-sm text-muted-foreground">
Refresh interval:
</span>
<Select
value={refreshInterval}
onValueChange={(value: keyof typeof REFRESH_INTERVALS) =>
setRefreshInterval(value)
}
>
<SelectTrigger className="w-[180px]">
<SelectValue placeholder="Select interval" />
</SelectTrigger>
<SelectContent>
{Object.entries(REFRESH_INTERVALS).map(([value, label]) => (
<SelectItem key={value} value={value}>
{label}
</SelectItem>
))}
</SelectContent>
</Select>
</div>
</div>
{/* Stats Cards */}
<div className="grid gap-4 md:grid-cols-4">
<div className="rounded-lg border text-card-foreground shadow-sm p-6">
<div className="flex items-center gap-2">
<Clock className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">Uptime</h3>
</div>
<p className="mt-2 text-2xl font-bold">
{formatUptime(metrics.uptime || 0)}
</p>
</div>
<div className="rounded-lg border text-card-foreground shadow-sm p-6">
<div className="flex items-center gap-2">
<Cpu className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">CPU Usage</h3>
</div>
<p className="mt-2 text-2xl font-bold">{metrics.cpu}%</p>
</div>
<div className="rounded-lg border text-card-foreground bg-transparent shadow-sm p-6">
<div className="flex items-center gap-2">
<MemoryStick className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">Memory Usage</h3>
</div>
<p className="mt-2 text-2xl font-bold">
{metrics.memUsedGB} GB / {metrics.memTotal} GB
</p>
</div>
<div className="rounded-lg border text-card-foreground shadow-sm p-6">
<div className="flex items-center gap-2">
<HardDrive className="h-4 w-4 text-muted-foreground" />
<h3 className="text-sm font-medium">Disk Usage</h3>
</div>
<p className="mt-2 text-2xl font-bold">{metrics.diskUsed}%</p>
</div>
</div>
{/* System Information */}
<div className="rounded-lg border text-card-foreground shadow-sm p-6">
<h3 className="text-lg font-medium mb-4">System Information</h3>
<div className="grid gap-4 md:grid-cols-2">
<div>
<h4 className="text-sm font-medium text-muted-foreground">CPU</h4>
<p className="mt-1">{metrics.cpuModel}</p>
<p className="text-sm text-muted-foreground mt-1">
{metrics.cpuPhysicalCores} Physical Cores ({metrics.cpuCores}{" "}
Threads) @ {metrics.cpuSpeed}GHz
</p>
</div>
<div>
<h4 className="text-sm font-medium text-muted-foreground">
Operating System
</h4>
<p className="mt-1">{metrics.distro}</p>
<p className="text-sm text-muted-foreground mt-1">
Kernel: {metrics.kernel} ({metrics.arch})
</p>
</div>
</div>
</div>
{/* Charts Grid */}
<div className="grid gap-4 md:grid-cols-2 lg:grid-cols-2">
<CPUChart data={historicalData} />
<MemoryChart data={historicalData} />
<DiskChart data={metrics} />
<NetworkChart data={historicalData} />
</div>
</div>
);
};

View File

@@ -1,10 +0,0 @@
import React from "react";
import { DockerMonitoring } from "../docker/show";
export const ShowMonitoring = () => {
return (
<div className="w-full">
<DockerMonitoring appName="dokploy" />
</div>
);
};

View File

@@ -168,6 +168,7 @@ export const ShowGeneralRedis = ({ redisId }: Props) => {
setIsDrawerOpen(false);
setFilteredLogs([]);
setIsDeploying(false);
refetch();
}}
filteredLogs={filteredLogs}
/>

View File

@@ -49,6 +49,7 @@ const notificationBaseSchema = z.object({
databaseBackup: z.boolean().default(false),
dokployRestart: z.boolean().default(false),
dockerCleanup: z.boolean().default(false),
serverThreshold: z.boolean().default(false),
});
export const notificationSchema = z.discriminatedUnion("type", [
@@ -204,6 +205,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
channel: notification.slack?.channel || "",
name: notification.name,
type: notification.notificationType,
serverThreshold: notification.serverThreshold,
});
} else if (notification.notificationType === "telegram") {
form.reset({
@@ -216,6 +218,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
type: notification.notificationType,
name: notification.name,
dockerCleanup: notification.dockerCleanup,
serverThreshold: notification.serverThreshold,
});
} else if (notification.notificationType === "discord") {
form.reset({
@@ -228,6 +231,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
decoration: notification.discord?.decoration || undefined,
name: notification.name,
dockerCleanup: notification.dockerCleanup,
serverThreshold: notification.serverThreshold,
});
} else if (notification.notificationType === "email") {
form.reset({
@@ -244,6 +248,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
fromAddress: notification.email?.fromAddress,
name: notification.name,
dockerCleanup: notification.dockerCleanup,
serverThreshold: notification.serverThreshold,
});
} else if (notification.notificationType === "gotify") {
form.reset({
@@ -280,6 +285,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
dokployRestart,
databaseBackup,
dockerCleanup,
serverThreshold,
} = data;
let promise: Promise<unknown> | null = null;
if (data.type === "slack") {
@@ -294,6 +300,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
dockerCleanup: dockerCleanup,
slackId: notification?.slackId || "",
notificationId: notificationId || "",
serverThreshold: serverThreshold,
});
} else if (data.type === "telegram") {
promise = telegramMutation.mutateAsync({
@@ -307,6 +314,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
dockerCleanup: dockerCleanup,
notificationId: notificationId || "",
telegramId: notification?.telegramId || "",
serverThreshold: serverThreshold,
});
} else if (data.type === "discord") {
promise = discordMutation.mutateAsync({
@@ -320,6 +328,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
dockerCleanup: dockerCleanup,
notificationId: notificationId || "",
discordId: notification?.discordId || "",
serverThreshold: serverThreshold,
});
} else if (data.type === "email") {
promise = emailMutation.mutateAsync({
@@ -337,6 +346,7 @@ export const HandleNotifications = ({ notificationId }: Props) => {
dockerCleanup: dockerCleanup,
notificationId: notificationId || "",
emailId: notification?.emailId || "",
serverThreshold: serverThreshold,
});
} else if (data.type === "gotify") {
promise = gotifyMutation.mutateAsync({
@@ -955,6 +965,30 @@ export const HandleNotifications = ({ notificationId }: Props) => {
)}
/>
)}
{isCloud && (
<FormField
control={form.control}
name="serverThreshold"
render={({ field }) => (
<FormItem className=" flex flex-row items-center justify-between rounded-lg border p-3 shadow-sm gap-2">
<div className="space-y-0.5">
<FormLabel>Server Threshold</FormLabel>
<FormDescription>
Trigger the action when the server threshold is
reached.
</FormDescription>
</div>
<FormControl>
<Switch
checked={field.value}
onCheckedChange={field.onChange}
/>
</FormControl>
</FormItem>
)}
/>
)}
</div>
</div>
</form>

View File

@@ -0,0 +1,636 @@
import { AlertBlock } from "@/components/shared/alert-block";
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import {
Command,
CommandEmpty,
CommandGroup,
CommandInput,
CommandItem,
} from "@/components/ui/command";
import {
Form,
FormControl,
FormDescription,
FormField,
FormItem,
FormLabel,
FormMessage,
} from "@/components/ui/form";
import { Input, NumberInput } from "@/components/ui/input";
import {
Popover,
PopoverContent,
PopoverTrigger,
} from "@/components/ui/popover";
import { ScrollArea } from "@/components/ui/scroll-area";
import { extractServices } from "@/pages/dashboard/project/[projectId]";
import { api } from "@/utils/api";
import { useUrl } from "@/utils/hooks/use-url";
import { zodResolver } from "@hookform/resolvers/zod";
import { Eye, EyeOff, LayoutDashboardIcon, RefreshCw } from "lucide-react";
import { useEffect, useState } from "react";
import { useForm } from "react-hook-form";
import { toast } from "sonner";
import { z } from "zod";
interface Props {
serverId?: string;
}
const Schema = z.object({
metricsConfig: z.object({
server: z.object({
refreshRate: z.number().min(2, {
message: "Server Refresh Rate is required",
}),
port: z.number().min(1, {
message: "Port is required",
}),
token: z.string(),
urlCallback: z.string(),
retentionDays: z.number().min(1, {
message: "Retention days must be at least 1",
}),
thresholds: z.object({
cpu: z.number().min(0),
memory: z.number().min(0),
}),
cronJob: z.string().min(1, {
message: "Cron Job is required",
}),
}),
containers: z.object({
refreshRate: z.number().min(2, {
message: "Container Refresh Rate is required",
}),
services: z.object({
include: z.array(z.string()).optional(),
exclude: z.array(z.string()).optional(),
}),
}),
}),
});
type Schema = z.infer<typeof Schema>;
export const SetupMonitoring = ({ serverId }: Props) => {
const { data, isLoading } = serverId
? api.server.one.useQuery(
{
serverId: serverId || "",
},
{
enabled: !!serverId,
},
)
: api.admin.one.useQuery();
const url = useUrl();
const { data: projects } = api.project.all.useQuery();
const extractServicesFromProjects = (projects: any[] | undefined) => {
if (!projects) return [];
const allServices = projects.flatMap((project) => {
const services = extractServices(project);
return serverId
? services
.filter((service) => service.serverId === serverId)
.map((service) => service.appName)
: services.map((service) => service.appName);
});
return [...new Set(allServices)];
};
const services = extractServicesFromProjects(projects);
const form = useForm<Schema>({
resolver: zodResolver(Schema),
defaultValues: {
metricsConfig: {
server: {
refreshRate: 20,
port: 4500,
token: "",
urlCallback: `${url}/api/trpc/notification.receiveNotification`,
retentionDays: 7,
thresholds: {
cpu: 0,
memory: 0,
},
cronJob: "",
},
containers: {
refreshRate: 20,
services: {
include: [],
exclude: [],
},
},
},
},
});
useEffect(() => {
if (data) {
form.reset({
metricsConfig: {
server: {
refreshRate: data?.metricsConfig?.server?.refreshRate,
port: data?.metricsConfig?.server?.port,
token: data?.metricsConfig?.server?.token || generateToken(),
urlCallback:
data?.metricsConfig?.server?.urlCallback ||
`${url}/api/trpc/notification.receiveNotification`,
retentionDays: data?.metricsConfig?.server?.retentionDays || 5,
thresholds: {
cpu: data?.metricsConfig?.server?.thresholds?.cpu,
memory: data?.metricsConfig?.server?.thresholds?.memory,
},
cronJob: data?.metricsConfig?.server?.cronJob || "0 0 * * *",
},
containers: {
refreshRate: data?.metricsConfig?.containers?.refreshRate,
services: {
include: data?.metricsConfig?.containers?.services?.include,
exclude: data?.metricsConfig?.containers?.services?.exclude,
},
},
},
});
}
}, [data, url]);
const [search, setSearch] = useState("");
const [searchExclude, setSearchExclude] = useState("");
const [showToken, setShowToken] = useState(false);
const availableServices = services?.filter(
(service) =>
!form
.watch("metricsConfig.containers.services.include")
?.some((s) => s === service) &&
!form
.watch("metricsConfig.containers.services.exclude")
?.includes(service) &&
service.toLowerCase().includes(search.toLowerCase()),
);
const availableServicesToExclude = [
...(services?.filter(
(service) =>
!form
.watch("metricsConfig.containers.services.exclude")
?.includes(service) &&
!form
.watch("metricsConfig.containers.services.include")
?.some((s) => s === service) &&
service.toLowerCase().includes(searchExclude.toLowerCase()),
) ?? []),
...(!form.watch("metricsConfig.containers.services.exclude")?.includes("*")
? ["*"]
: []),
];
const { mutateAsync } = serverId
? api.server.setupMonitoring.useMutation()
: api.admin.setupMonitoring.useMutation();
const generateToken = () => {
const array = new Uint8Array(64);
crypto.getRandomValues(array);
return Array.from(array, (byte) => byte.toString(16).padStart(2, "0")).join(
"",
);
};
const onSubmit = async (values: Schema) => {
await mutateAsync({
serverId: serverId || "",
metricsConfig: values.metricsConfig,
})
.then(() => {
toast.success("Server updated successfully");
})
.catch(() => {
toast.error("Error updating the server");
});
};
return (
<>
<CardHeader className="">
<CardTitle className="text-xl flex flex-row gap-2">
<LayoutDashboardIcon className="size-6 text-muted-foreground self-center" />
Monitoring
</CardTitle>
<CardDescription>
Monitor your servers and containers in realtime with notifications
when they reach their thresholds.
</CardDescription>
</CardHeader>
<CardContent className="space-y-6 py-6 border-t">
<Form {...form}>
<form
onSubmit={form.handleSubmit(onSubmit)}
className="flex w-full flex-col gap-4"
>
<AlertBlock>
Using a lower refresh rate will make your CPU and memory usage
higher, we recommend 30-60 seconds
</AlertBlock>
<div className="flex flex-col gap-4">
<FormField
control={form.control}
name="metricsConfig.server.refreshRate"
render={({ field }) => (
<FormItem className="flex flex-col justify-center max-sm:items-center">
<FormLabel>Server Refresh Rate</FormLabel>
<FormControl>
<NumberInput placeholder="10" {...field} />
</FormControl>
<FormDescription>
Please set the refresh rate for the server in seconds
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.containers.refreshRate"
render={({ field }) => (
<FormItem className="flex flex-col justify-center max-sm:items-center">
<FormLabel>Container Refresh Rate</FormLabel>
<FormControl>
<NumberInput placeholder="10" {...field} />
</FormControl>
<FormDescription>
Please set the refresh rate for the containers in seconds
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.server.cronJob"
render={({ field }) => (
<FormItem>
<FormLabel>Cron Job</FormLabel>
<FormControl>
<Input {...field} placeholder="0 0 * * *" />
</FormControl>
<FormDescription>
Cron job for cleaning up metrics
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.server.retentionDays"
render={({ field }) => (
<FormItem>
<FormLabel>Server Retention Days</FormLabel>
<FormControl>
<NumberInput {...field} />
</FormControl>
<FormDescription>
Number of days to retain server metrics data
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.server.port"
render={({ field }) => (
<FormItem className="flex flex-col justify-center max-sm:items-center">
<FormLabel>Port</FormLabel>
<FormControl>
<NumberInput placeholder="4500" {...field} />
</FormControl>
<FormDescription>
Please set the port for the metrics server
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.containers.services.include"
render={({ field }) => (
<FormItem>
<FormLabel>Include Services</FormLabel>
<FormControl>
<div className="flex flex-col gap-4">
<div className="flex gap-2">
<Popover>
<PopoverTrigger asChild>
<Button variant="outline">Add Service</Button>
</PopoverTrigger>
<PopoverContent
className="w-[300px] p-0"
align="start"
>
<Command>
<CommandInput
placeholder="Search service..."
value={search}
onValueChange={setSearch}
/>
{availableServices?.length === 0 ? (
<div className="p-4 text-sm text-muted-foreground">
No services available.
</div>
) : (
<>
<CommandEmpty>
No service found.
</CommandEmpty>
<CommandGroup>
{availableServices?.map((service) => (
<CommandItem
key={service}
value={service}
onSelect={() => {
field.onChange([
...(field.value ?? []),
service,
]);
setSearch("");
}}
>
{service}
</CommandItem>
))}
</CommandGroup>
</>
)}
</Command>
</PopoverContent>
</Popover>
</div>
<div className="flex flex-wrap gap-2">
{field.value?.map((service) => (
<Badge
key={service}
variant="secondary"
className="flex items-center gap-2"
>
{service}
<Button
type="button"
variant="ghost"
size="icon"
className="h-4 w-4 p-0"
onClick={() => {
field.onChange(
field.value?.filter((s) => s !== service),
);
}}
>
×
</Button>
</Badge>
))}
<FormDescription>
Services to monitor.
</FormDescription>
</div>
</div>
</FormControl>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.containers.services.exclude"
render={({ field }) => (
<FormItem>
<FormLabel>Exclude Services</FormLabel>
<FormControl>
<div className="flex flex-col gap-4">
<div className="flex gap-2">
<Popover>
<PopoverTrigger asChild>
<Button variant="outline">Add Service</Button>
</PopoverTrigger>
<PopoverContent
className="w-[300px] p-0"
align="start"
>
<Command>
<CommandInput
placeholder="Search service..."
value={searchExclude}
onValueChange={setSearchExclude}
/>
{availableServicesToExclude?.length === 0 ? (
<div className="p-4 text-sm text-muted-foreground">
No services available.
</div>
) : (
<>
<CommandEmpty>
No service found.
</CommandEmpty>
<CommandGroup>
{availableServicesToExclude.map(
(service) => (
<CommandItem
key={service}
value={service}
onSelect={() => {
field.onChange([
...(field.value ?? []),
service,
]);
setSearchExclude("");
}}
>
{service}
</CommandItem>
),
)}
</CommandGroup>
</>
)}
</Command>
</PopoverContent>
</Popover>
</div>
<div className="flex flex-wrap gap-2">
{field.value?.map((service, index) => (
<Badge
key={service}
variant="secondary"
className="flex items-center gap-2"
>
{service}
<Button
type="button"
variant="ghost"
size="icon"
className="h-4 w-4 p-0"
onClick={() => {
field.onChange(
field.value?.filter((_, i) => i !== index),
);
}}
>
×
</Button>
</Badge>
))}
<FormDescription>
Services to exclude from monitoring
</FormDescription>
</div>
</div>
</FormControl>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.server.thresholds.cpu"
render={({ field }) => (
<FormItem>
<FormLabel>CPU Threshold (%)</FormLabel>
<FormControl>
<NumberInput {...field} />
</FormControl>
<FormDescription>
Alert when CPU usage exceeds this percentage
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.server.thresholds.memory"
render={({ field }) => (
<FormItem>
<FormLabel>Memory Threshold (%)</FormLabel>
<FormControl>
<NumberInput {...field} />
</FormControl>
<FormDescription>
Alert when memory usage exceeds this percentage
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.server.token"
render={({ field }) => (
<FormItem>
<FormLabel>Metrics Token</FormLabel>
<FormControl>
<div className="flex gap-2">
<div className="relative flex-1">
<Input
type={showToken ? "text" : "password"}
placeholder="Enter your metrics token"
{...field}
/>
<Button
type="button"
variant="secondary"
size="icon"
className="absolute right-0 top-1/2 -translate-y-1/2"
onClick={() => setShowToken(!showToken)}
title={showToken ? "Hide token" : "Show token"}
>
{showToken ? (
<EyeOff className="h-4 w-4" />
) : (
<Eye className="h-4 w-4" />
)}
</Button>
</div>
<Button
type="button"
variant="outline"
size="icon"
onClick={() => {
const newToken = generateToken();
form.setValue(
"metricsConfig.server.token",
newToken,
);
toast.success("Token generated successfully");
}}
title="Generate new token"
>
<RefreshCw className="h-4 w-4" />
</Button>
</div>
</FormControl>
<FormDescription>
Token for authenticating metrics requests
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
<FormField
control={form.control}
name="metricsConfig.server.urlCallback"
render={({ field }) => (
<FormItem>
<FormLabel>Metrics Callback URL</FormLabel>
<FormControl>
<Input
placeholder="https://your-callback-url.com"
{...field}
/>
</FormControl>
<FormDescription>
URL where metrics will be sent
</FormDescription>
<FormMessage />
</FormItem>
)}
/>
</div>
<div className="flex items-center justify-end gap-2">
<Button type="submit" isLoading={form.formState.isSubmitting}>
Save changes
</Button>
</div>
</form>
</Form>
</CardContent>
</>
);
};

View File

@@ -19,6 +19,7 @@ import {
} from "@/components/ui/dialog";
import { DropdownMenuItem } from "@/components/ui/dropdown-menu";
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs";
import { cn } from "@/lib/utils";
import { api } from "@/utils/api";
import copy from "copy-to-clipboard";
import { CopyIcon, ExternalLinkIcon, ServerIcon } from "lucide-react";
@@ -30,6 +31,7 @@ import { type LogLine, parseLogs } from "../../docker/logs/utils";
import { EditScript } from "./edit-script";
import { GPUSupport } from "./gpu-support";
import { SecurityAudit } from "./security-audit";
import { SetupMonitoring } from "./setup-monitoring";
import { ValidateServer } from "./validate-server";
interface Props {
@@ -48,7 +50,7 @@ export const SetupServer = ({ serverId }: Props) => {
);
const [activeLog, setActiveLog] = useState<string | null>(null);
const { data: isCloud } = api.settings.isCloud.useQuery();
const [isDrawerOpen, setIsDrawerOpen] = useState(false);
const [filteredLogs, setFilteredLogs] = useState<LogLine[]>([]);
const [isDeploying, setIsDeploying] = useState(false);
@@ -112,11 +114,19 @@ export const SetupServer = ({ serverId }: Props) => {
</AlertBlock>
<Tabs defaultValue="ssh-keys">
<TabsList className="grid grid-cols-5 w-[700px]">
<TabsList
className={cn(
"grid w-[700px]",
isCloud ? "grid-cols-6" : "grid-cols-5",
)}
>
<TabsTrigger value="ssh-keys">SSH Keys</TabsTrigger>
<TabsTrigger value="deployments">Deployments</TabsTrigger>
<TabsTrigger value="validate">Validate</TabsTrigger>
<TabsTrigger value="audit">Security</TabsTrigger>
{isCloud && (
<TabsTrigger value="monitoring">Monitoring</TabsTrigger>
)}
<TabsTrigger value="gpu-setup">GPU Setup</TabsTrigger>
</TabsList>
<TabsContent
@@ -309,6 +319,16 @@ export const SetupServer = ({ serverId }: Props) => {
<SecurityAudit serverId={serverId} />
</div>
</TabsContent>
<TabsContent
value="monitoring"
className="outline-none ring-0 focus-visible:ring-0 focus-visible:ring-offset-0"
>
<div className="flex flex-col gap-2 text-sm pt-3">
<div className="rounded-xl bg-background shadow-md border">
<SetupMonitoring serverId={serverId} />
</div>
</div>
</TabsContent>
<TabsContent
value="gpu-setup"
className="outline-none ring-0 focus-visible:ring-0 focus-visible:ring-offset-0"

View File

@@ -0,0 +1,31 @@
import { Dialog, DialogContent, DialogTrigger } from "@/components/ui/dialog";
import { DropdownMenuItem } from "@/components/ui/dropdown-menu";
import { useState } from "react";
import { ShowPaidMonitoring } from "../../monitoring/paid/servers/show-paid-monitoring";
interface Props {
url: string;
token: string;
}
export const ShowMonitoringModal = ({ url, token }: Props) => {
const [isOpen, setIsOpen] = useState(false);
return (
<Dialog open={isOpen} onOpenChange={setIsOpen}>
<DialogTrigger asChild>
<DropdownMenuItem
className="w-full cursor-pointer "
onSelect={(e) => e.preventDefault()}
>
Show Monitoring
</DropdownMenuItem>
</DialogTrigger>
<DialogContent className="sm:max-w-7xl overflow-y-auto max-h-screen ">
<div className="flex gap-4 py-4 w-full">
<ShowPaidMonitoring BASE_URL={url} token={token} />
</div>
</DialogContent>
</Dialog>
);
};

View File

@@ -38,6 +38,7 @@ import { ShowServerActions } from "./actions/show-server-actions";
import { HandleServers } from "./handle-servers";
import { SetupServer } from "./setup-server";
import { ShowDockerContainersModal } from "./show-docker-containers-modal";
import { ShowMonitoringModal } from "./show-monitoring-modal";
import { ShowSwarmOverviewModal } from "./show-swarm-overview-modal";
import { ShowTraefikFileSystemModal } from "./show-traefik-file-system-modal";
import { WelcomeSuscription } from "./welcome-stripe/welcome-suscription";
@@ -314,6 +315,16 @@ export const ShowServers = () => {
<ShowDockerContainersModal
serverId={server.serverId}
/>
{isCloud && (
<ShowMonitoringModal
url={`http://${server.ipAddress}:${server?.metricsConfig?.server?.port}/metrics`}
token={
server?.metricsConfig?.server
?.token
}
/>
)}
<ShowSwarmOverviewModal
serverId={server.serverId}
/>

View File

@@ -15,7 +15,7 @@ export const OnboardingLayout = ({ children }: Props) => {
<div className="absolute inset-0 bg-muted" />
<Link
href="https://dokploy.com"
className="relative z-20 flex items-center text-lg font-medium gap-4"
className="relative z-20 flex items-center text-lg font-medium gap-4 text-primary"
>
<Logo className="size-10" />
Dokploy

View File

@@ -67,7 +67,7 @@ ChartContainer.displayName = "Chart";
const ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {
const colorConfig = Object.entries(config).filter(
([_, config]) => config.theme || config.color,
([, config]) => config.theme || config.color,
);
if (!colorConfig.length) {

View File

@@ -0,0 +1,4 @@
ALTER TABLE "admin" ADD COLUMN "enablePaidFeatures" boolean DEFAULT false NOT NULL;--> statement-breakpoint
ALTER TABLE "admin" ADD COLUMN "metricsConfig" jsonb DEFAULT '{"server":{"refreshRate":20,"port":4500,"token":"","retentionDays":2,"cronJob":"","urlCallback":"","thresholds":{"cpu":0,"memory":0}},"containers":{"refreshRate":20,"services":{"include":[],"exclude":[]}}}'::jsonb NOT NULL;--> statement-breakpoint
ALTER TABLE "notification" ADD COLUMN "serverThreshold" boolean DEFAULT false NOT NULL;--> statement-breakpoint
ALTER TABLE "server" ADD COLUMN "metricsConfig" jsonb DEFAULT '{"server":{"refreshRate":20,"port":4500,"token":"","urlCallback":"","cronJob":"","retentionDays":2,"thresholds":{"cpu":0,"memory":0}},"containers":{"refreshRate":20,"services":{"include":[],"exclude":[]}}}'::jsonb NOT NULL;

View File

@@ -0,0 +1,2 @@
ALTER TABLE "admin" ALTER COLUMN "metricsConfig" SET DEFAULT '{"server":{"type":"Dokploy","refreshRate":20,"port":4500,"token":"","retentionDays":2,"cronJob":"","urlCallback":"","thresholds":{"cpu":0,"memory":0}},"containers":{"refreshRate":20,"services":{"include":[],"exclude":[]}}}'::jsonb;--> statement-breakpoint
ALTER TABLE "server" ALTER COLUMN "metricsConfig" SET DEFAULT '{"server":{"type":"Remote","refreshRate":20,"port":4500,"token":"","urlCallback":"","cronJob":"","retentionDays":2,"thresholds":{"cpu":0,"memory":0}},"containers":{"refreshRate":20,"services":{"include":[],"exclude":[]}}}'::jsonb;

View File

@@ -0,0 +1,2 @@
ALTER TABLE "admin" ALTER COLUMN "metricsConfig" SET DEFAULT '{"server":{"type":"Dokploy","refreshRate":60,"port":4500,"token":"","retentionDays":2,"cronJob":"","urlCallback":"","thresholds":{"cpu":0,"memory":0}},"containers":{"refreshRate":60,"services":{"include":[],"exclude":[]}}}'::jsonb;--> statement-breakpoint
ALTER TABLE "server" ALTER COLUMN "metricsConfig" SET DEFAULT '{"server":{"type":"Remote","refreshRate":60,"port":4500,"token":"","urlCallback":"","cronJob":"","retentionDays":2,"thresholds":{"cpu":0,"memory":0}},"containers":{"refreshRate":60,"services":{"include":[],"exclude":[]}}}'::jsonb;

View File

@@ -1,5 +1,5 @@
{
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -252,7 +252,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -393,7 +396,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -522,7 +528,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -638,7 +647,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -692,7 +704,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -746,7 +761,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -828,7 +846,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -975,7 +996,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1110,7 +1134,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1257,7 +1284,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1399,7 +1429,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1471,7 +1504,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1532,7 +1568,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1700,7 +1739,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1754,7 +1796,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1796,7 +1841,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1863,7 +1911,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1926,7 +1977,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -1980,7 +2034,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2109,7 +2166,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2214,5 +2274,9 @@
"columns": {}
},
"id": "c6215051-7cd1-412d-b8df-b50d58acacff",
"prevId": "00000000-0000-0000-0000-000000000000"
"prevId": "00000000-0000-0000-0000-000000000000",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,5 +1,5 @@
{
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -252,7 +252,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -393,7 +396,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -522,7 +528,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -638,7 +647,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -698,7 +710,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -752,7 +767,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -834,7 +852,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -981,7 +1002,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1116,7 +1140,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1263,7 +1290,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1405,7 +1435,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1477,7 +1510,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1538,7 +1574,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1706,7 +1745,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1760,7 +1802,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1802,7 +1847,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1869,7 +1917,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1932,7 +1983,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -1986,7 +2040,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2115,7 +2172,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2220,5 +2280,9 @@
"columns": {}
},
"id": "3a4dfad7-ae33-4ae3-b60e-4f40f44f5652",
"prevId": "c6215051-7cd1-412d-b8df-b50d58acacff"
"prevId": "c6215051-7cd1-412d-b8df-b50d58acacff",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,5 +1,5 @@
{
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -252,7 +252,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -393,7 +396,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -522,7 +528,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -638,7 +647,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -705,7 +717,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -759,7 +774,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -841,7 +859,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -988,7 +1009,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1123,7 +1147,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1270,7 +1297,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1412,7 +1442,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1484,7 +1517,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1545,7 +1581,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1713,7 +1752,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1767,7 +1809,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1809,7 +1854,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1876,7 +1924,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1939,7 +1990,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -1993,7 +2047,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2122,7 +2179,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2227,5 +2287,9 @@
"columns": {}
},
"id": "665483bd-5123-4c2b-beef-bfa9b91b9356",
"prevId": "3a4dfad7-ae33-4ae3-b60e-4f40f44f5652"
"prevId": "3a4dfad7-ae33-4ae3-b60e-4f40f44f5652",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,5 +1,5 @@
{
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -252,7 +252,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -393,7 +396,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -529,7 +535,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -645,7 +654,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -712,7 +724,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -766,7 +781,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -848,7 +866,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -995,7 +1016,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1130,7 +1154,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1277,7 +1304,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1419,7 +1449,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1491,7 +1524,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1552,7 +1588,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1720,7 +1759,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1774,7 +1816,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1816,7 +1861,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1883,7 +1931,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1946,7 +1997,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2000,7 +2054,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2129,7 +2186,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2234,5 +2294,9 @@
"columns": {}
},
"id": "5a1d3f2b-9c31-4125-9645-015170550b51",
"prevId": "665483bd-5123-4c2b-beef-bfa9b91b9356"
"prevId": "665483bd-5123-4c2b-beef-bfa9b91b9356",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,5 +1,5 @@
{
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -228,7 +228,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -369,7 +372,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -505,7 +511,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -621,7 +630,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -688,7 +700,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -742,7 +757,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -824,7 +842,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -971,7 +992,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1106,7 +1130,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1253,7 +1280,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1395,7 +1425,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1467,7 +1500,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1528,7 +1564,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1696,7 +1735,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1750,7 +1792,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1792,7 +1837,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1859,7 +1907,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1922,7 +1973,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -1976,7 +2030,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2105,7 +2162,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2210,5 +2270,9 @@
"columns": {}
},
"id": "7bb4bbcf-791c-4888-919e-f74bc0528b5f",
"prevId": "5a1d3f2b-9c31-4125-9645-015170550b51"
"prevId": "5a1d3f2b-9c31-4125-9645-015170550b51",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,5 +1,5 @@
{
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -228,7 +228,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -369,7 +372,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -505,7 +511,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -621,7 +630,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -688,7 +700,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -742,7 +757,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -824,7 +842,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -971,7 +992,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1106,7 +1130,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1253,7 +1280,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1395,7 +1425,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1467,7 +1500,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1528,7 +1564,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1696,7 +1735,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1750,7 +1792,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1792,7 +1837,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1859,7 +1907,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1922,7 +1973,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -1976,7 +2030,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2105,7 +2162,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2178,7 +2238,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2291,5 +2354,9 @@
"columns": {}
},
"id": "92c75e26-64ef-484f-a7d2-72a9422c119f",
"prevId": "7bb4bbcf-791c-4888-919e-f74bc0528b5f"
"prevId": "7bb4bbcf-791c-4888-919e-f74bc0528b5f",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "8ca71247-d512-427d-b115-47a7287ac431",
"prevId": "92c75e26-64ef-484f-a7d2-72a9422c119f",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -219,40 +217,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -374,27 +375,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -505,32 +509,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -635,19 +642,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -710,12 +720,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -757,19 +770,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -840,19 +856,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -980,27 +999,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1116,27 +1138,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1264,27 +1289,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1363,71 +1391,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1487,19 +1518,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1549,19 +1583,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1654,84 +1691,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1780,12 +1820,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1815,19 +1858,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1882,19 +1928,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1936,28 +1985,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2000,19 +2052,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2122,27 +2177,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2204,19 +2262,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2324,8 +2385,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "8ca71247-d512-427d-b115-47a7287ac431",
"prevId": "92c75e26-64ef-484f-a7d2-72a9422c119f",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "80176730-273b-45e4-a7ca-760e29ad6d02",
"prevId": "8ca71247-d512-427d-b115-47a7287ac431",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -226,40 +224,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -381,27 +382,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -512,32 +516,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -642,19 +649,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -717,12 +727,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -764,19 +777,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -847,19 +863,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -987,27 +1006,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1123,27 +1145,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1271,27 +1296,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1370,71 +1398,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1494,19 +1525,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1556,19 +1590,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1661,84 +1698,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1787,12 +1827,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1822,19 +1865,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1889,19 +1935,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1943,28 +1992,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2007,19 +2059,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2129,27 +2184,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2211,19 +2269,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2331,8 +2392,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "80176730-273b-45e4-a7ca-760e29ad6d02",
"prevId": "8ca71247-d512-427d-b115-47a7287ac431",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "54b3cce8-c1ab-46ed-bef9-1bb945d965f9",
"prevId": "80176730-273b-45e4-a7ca-760e29ad6d02",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -226,40 +224,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -381,27 +382,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -512,32 +516,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -642,19 +649,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -717,12 +727,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -764,19 +777,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -847,19 +863,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -987,27 +1006,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1123,27 +1145,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1271,27 +1296,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1370,71 +1398,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1494,19 +1525,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1556,19 +1590,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1661,84 +1698,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1787,12 +1827,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1822,19 +1865,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1889,19 +1935,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1943,28 +1992,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2007,19 +2059,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2129,27 +2184,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2211,19 +2269,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2331,8 +2392,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "54b3cce8-c1ab-46ed-bef9-1bb945d965f9",
"prevId": "80176730-273b-45e4-a7ca-760e29ad6d02",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "81eb82a8-2190-4dee-a6c8-416ea98e2547",
"prevId": "54b3cce8-c1ab-46ed-bef9-1bb945d965f9",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -226,40 +224,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -381,27 +382,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -512,32 +516,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -642,19 +649,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -717,12 +727,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -764,19 +777,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -847,19 +863,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -987,27 +1006,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1123,27 +1145,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1271,27 +1296,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1370,71 +1398,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1494,19 +1525,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1556,19 +1590,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1661,84 +1698,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1787,12 +1827,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1822,19 +1865,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1889,19 +1935,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1943,28 +1992,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2007,19 +2059,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2129,27 +2184,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2211,19 +2269,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2331,8 +2392,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "81eb82a8-2190-4dee-a6c8-416ea98e2547",
"prevId": "54b3cce8-c1ab-46ed-bef9-1bb945d965f9",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "c4f34dc8-69d6-49f3-809d-be474f0f0fcf",
"prevId": "81eb82a8-2190-4dee-a6c8-416ea98e2547",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -226,40 +224,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -381,27 +382,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -512,32 +516,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -642,19 +649,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -717,12 +727,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -764,19 +777,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -847,19 +863,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -987,27 +1006,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1123,27 +1145,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1271,27 +1296,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1370,71 +1398,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1494,19 +1525,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1556,19 +1590,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1661,84 +1698,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1787,12 +1827,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1822,19 +1865,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1889,19 +1935,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1943,28 +1992,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2007,19 +2059,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2129,27 +2184,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2217,19 +2275,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2337,8 +2398,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "c4f34dc8-69d6-49f3-809d-be474f0f0fcf",
"prevId": "81eb82a8-2190-4dee-a6c8-416ea98e2547",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "9c6bb052-9f90-46fd-9382-67984e03f5b1",
"prevId": "c4f34dc8-69d6-49f3-809d-be474f0f0fcf",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -226,40 +224,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -381,27 +382,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -512,32 +516,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -642,19 +649,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -717,12 +727,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -764,19 +777,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -847,19 +863,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -987,27 +1006,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1123,27 +1145,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1271,27 +1296,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1370,71 +1398,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1494,19 +1525,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1556,19 +1590,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1661,84 +1698,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1787,12 +1827,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1822,19 +1865,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1889,19 +1935,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1943,28 +1992,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2007,19 +2059,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2129,27 +2184,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2217,19 +2275,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2337,8 +2398,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "9c6bb052-9f90-46fd-9382-67984e03f5b1",
"prevId": "c4f34dc8-69d6-49f3-809d-be474f0f0fcf",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "5e715d26-b9c1-4e9c-80b7-408d63832e85",
"prevId": "9c6bb052-9f90-46fd-9382-67984e03f5b1",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -268,40 +266,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -423,27 +424,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -554,32 +558,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -684,19 +691,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -759,12 +769,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -806,19 +819,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -889,19 +905,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1029,27 +1048,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1165,27 +1187,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1313,27 +1338,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1412,71 +1440,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1536,19 +1567,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1598,19 +1632,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1703,84 +1740,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1829,12 +1869,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1864,19 +1907,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1931,19 +1977,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1985,28 +2034,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2049,19 +2101,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2171,27 +2226,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2259,19 +2317,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2379,8 +2440,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "5e715d26-b9c1-4e9c-80b7-408d63832e85",
"prevId": "9c6bb052-9f90-46fd-9382-67984e03f5b1",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "5677e0b8-f22f-4565-9161-e97b381c0e1c",
"prevId": "5e715d26-b9c1-4e9c-80b7-408d63832e85",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -560,32 +564,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -690,19 +697,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -765,12 +775,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -812,19 +825,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -895,19 +911,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1035,27 +1054,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1171,27 +1193,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1319,27 +1344,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1418,71 +1446,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1542,19 +1573,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1604,19 +1638,22 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1709,84 +1746,87 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1835,12 +1875,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1870,19 +1913,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1937,19 +1983,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -1991,28 +2040,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2055,19 +2107,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2177,27 +2232,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2265,19 +2323,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2385,8 +2446,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "5677e0b8-f22f-4565-9161-e97b381c0e1c",
"prevId": "5e715d26-b9c1-4e9c-80b7-408d63832e85",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "c204362f-e392-4d30-829a-2b9df39b3001",
"prevId": "5677e0b8-f22f-4565-9161-e97b381c0e1c",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -560,32 +564,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -690,19 +697,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -765,12 +775,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -812,19 +825,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -895,19 +911,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1035,27 +1054,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1171,27 +1193,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1319,27 +1344,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1418,71 +1446,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1542,19 +1573,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1610,32 +1644,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1734,97 +1771,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1873,12 +1913,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1908,19 +1951,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1975,19 +2021,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2029,28 +2078,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2093,19 +2145,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2215,27 +2270,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2382,19 +2440,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2462,19 +2523,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2600,8 +2664,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "c204362f-e392-4d30-829a-2b9df39b3001",
"prevId": "5677e0b8-f22f-4565-9161-e97b381c0e1c",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "c6534c4b-5da2-4694-bd77-235eaeecc60a",
"prevId": "c204362f-e392-4d30-829a-2b9df39b3001",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -560,32 +564,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -690,19 +697,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -771,12 +781,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -818,19 +831,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -901,19 +917,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1041,27 +1060,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1177,27 +1199,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1325,27 +1350,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1424,71 +1452,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1548,19 +1579,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1616,32 +1650,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1740,97 +1777,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1879,12 +1919,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1914,19 +1957,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1981,19 +2027,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2035,28 +2084,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2099,19 +2151,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2221,27 +2276,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2388,19 +2446,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2468,19 +2529,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2606,8 +2670,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "c6534c4b-5da2-4694-bd77-235eaeecc60a",
"prevId": "c204362f-e392-4d30-829a-2b9df39b3001",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "2d8d7670-b942-4573-9c44-6e81d2a2fa16",
"prevId": "c6534c4b-5da2-4694-bd77-235eaeecc60a",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -567,32 +571,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -697,19 +704,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -778,12 +788,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -825,19 +838,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -908,19 +924,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1048,27 +1067,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1184,27 +1206,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1332,27 +1357,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1431,71 +1459,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1555,19 +1586,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1623,32 +1657,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1747,97 +1784,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1886,12 +1926,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1921,19 +1964,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1988,19 +2034,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2042,28 +2091,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2106,19 +2158,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2228,27 +2283,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2395,19 +2453,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2475,19 +2536,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2613,8 +2677,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "2d8d7670-b942-4573-9c44-6e81d2a2fa16",
"prevId": "c6534c4b-5da2-4694-bd77-235eaeecc60a",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "ec852f38-886a-43b4-9295-73984ed8ef45",
"prevId": "2d8d7670-b942-4573-9c44-6e81d2a2fa16",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -567,32 +571,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -697,19 +704,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -778,12 +788,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -825,19 +838,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -908,19 +924,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1048,27 +1067,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1184,27 +1206,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1332,27 +1357,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1431,71 +1459,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1555,19 +1586,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1629,32 +1663,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1753,97 +1790,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1892,12 +1932,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1927,19 +1970,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -1994,19 +2040,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2048,28 +2097,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2112,19 +2164,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2234,27 +2289,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2401,19 +2459,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2481,19 +2542,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2619,8 +2683,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "ec852f38-886a-43b4-9295-73984ed8ef45",
"prevId": "2d8d7670-b942-4573-9c44-6e81d2a2fa16",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "3d47456f-03b7-4b45-87f2-057df7e9cb0b",
"prevId": "ec852f38-886a-43b4-9295-73984ed8ef45",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -567,32 +571,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -703,19 +710,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -784,12 +794,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -831,19 +844,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -914,19 +930,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1054,27 +1073,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1190,27 +1212,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1338,27 +1363,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1437,71 +1465,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1561,19 +1592,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1635,32 +1669,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1759,97 +1796,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1898,12 +1938,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1933,19 +1976,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2000,19 +2046,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2054,28 +2103,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2118,19 +2170,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2240,27 +2295,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2407,19 +2465,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2487,19 +2548,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2625,8 +2689,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "3d47456f-03b7-4b45-87f2-057df7e9cb0b",
"prevId": "ec852f38-886a-43b4-9295-73984ed8ef45",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "7c8f815f-4fec-4505-b9c7-c28bac3451f0",
"prevId": "3d47456f-03b7-4b45-87f2-057df7e9cb0b",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -567,32 +571,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -703,19 +710,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -784,12 +794,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -831,19 +844,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -914,19 +930,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1054,27 +1073,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1190,27 +1212,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1338,27 +1363,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1437,71 +1465,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1561,19 +1592,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1635,32 +1669,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1759,97 +1796,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1898,12 +1938,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1933,19 +1976,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2000,19 +2046,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2054,28 +2103,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2118,19 +2170,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2240,27 +2295,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2407,19 +2465,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2487,19 +2548,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -2521,7 +2585,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -2573,7 +2640,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -2669,58 +2739,61 @@
"notification_slackId_slack_slackId_fk": {
"name": "notification_slackId_slack_slackId_fk",
"tableFrom": "notification",
"tableTo": "slack",
"columnsFrom": [
"slackId"
],
"tableTo": "slack",
"columnsTo": [
"slackId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_telegramId_telegram_telegramId_fk": {
"name": "notification_telegramId_telegram_telegramId_fk",
"tableFrom": "notification",
"tableTo": "telegram",
"columnsFrom": [
"telegramId"
],
"tableTo": "telegram",
"columnsTo": [
"telegramId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_discordId_discord_discordId_fk": {
"name": "notification_discordId_discord_discordId_fk",
"tableFrom": "notification",
"tableTo": "discord",
"columnsFrom": [
"discordId"
],
"tableTo": "discord",
"columnsTo": [
"discordId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_emailId_email_emailId_fk": {
"name": "notification_emailId_email_emailId_fk",
"tableFrom": "notification",
"tableTo": "email",
"columnsFrom": [
"emailId"
],
"tableTo": "email",
"columnsTo": [
"emailId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -2748,7 +2821,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -2776,7 +2852,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2912,8 +2991,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "7c8f815f-4fec-4505-b9c7-c28bac3451f0",
"prevId": "3d47456f-03b7-4b45-87f2-057df7e9cb0b",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "cbe2b41d-26b6-4ca5-b40d-0e37faa56f39",
"prevId": "7c8f815f-4fec-4505-b9c7-c28bac3451f0",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -567,32 +571,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -703,19 +710,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -784,12 +794,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -831,19 +844,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -914,19 +930,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1054,27 +1073,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1190,27 +1212,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1338,27 +1363,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1437,71 +1465,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1561,19 +1592,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1635,32 +1669,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1759,97 +1796,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1898,12 +1938,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1933,19 +1976,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2000,19 +2046,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2054,28 +2103,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2118,19 +2170,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2240,27 +2295,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2407,19 +2465,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2487,19 +2548,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -2521,7 +2585,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -2573,7 +2640,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -2676,58 +2746,61 @@
"notification_slackId_slack_slackId_fk": {
"name": "notification_slackId_slack_slackId_fk",
"tableFrom": "notification",
"tableTo": "slack",
"columnsFrom": [
"slackId"
],
"tableTo": "slack",
"columnsTo": [
"slackId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_telegramId_telegram_telegramId_fk": {
"name": "notification_telegramId_telegram_telegramId_fk",
"tableFrom": "notification",
"tableTo": "telegram",
"columnsFrom": [
"telegramId"
],
"tableTo": "telegram",
"columnsTo": [
"telegramId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_discordId_discord_discordId_fk": {
"name": "notification_discordId_discord_discordId_fk",
"tableFrom": "notification",
"tableTo": "discord",
"columnsFrom": [
"discordId"
],
"tableTo": "discord",
"columnsTo": [
"discordId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_emailId_email_emailId_fk": {
"name": "notification_emailId_email_emailId_fk",
"tableFrom": "notification",
"tableTo": "email",
"columnsFrom": [
"emailId"
],
"tableTo": "email",
"columnsTo": [
"emailId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -2755,7 +2828,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -2783,7 +2859,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2919,8 +2998,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "cbe2b41d-26b6-4ca5-b40d-0e37faa56f39",
"prevId": "7c8f815f-4fec-4505-b9c7-c28bac3451f0",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "10f88c8f-bc1e-4dc4-99a5-327469c0da70",
"prevId": "cbe2b41d-26b6-4ca5-b40d-0e37faa56f39",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -567,32 +571,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -703,19 +710,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -784,12 +794,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -831,19 +844,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -914,19 +930,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1054,27 +1073,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1190,27 +1212,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1338,27 +1363,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1437,71 +1465,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1561,19 +1592,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1635,32 +1669,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1759,97 +1796,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1898,12 +1938,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1933,19 +1976,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2000,19 +2046,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2054,28 +2103,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2118,19 +2170,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2240,27 +2295,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2407,19 +2465,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2487,19 +2548,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -2521,7 +2585,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -2573,7 +2640,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -2669,58 +2739,61 @@
"notification_slackId_slack_slackId_fk": {
"name": "notification_slackId_slack_slackId_fk",
"tableFrom": "notification",
"tableTo": "slack",
"columnsFrom": [
"slackId"
],
"tableTo": "slack",
"columnsTo": [
"slackId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_telegramId_telegram_telegramId_fk": {
"name": "notification_telegramId_telegram_telegramId_fk",
"tableFrom": "notification",
"tableTo": "telegram",
"columnsFrom": [
"telegramId"
],
"tableTo": "telegram",
"columnsTo": [
"telegramId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_discordId_discord_discordId_fk": {
"name": "notification_discordId_discord_discordId_fk",
"tableFrom": "notification",
"tableTo": "discord",
"columnsFrom": [
"discordId"
],
"tableTo": "discord",
"columnsTo": [
"discordId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_emailId_email_emailId_fk": {
"name": "notification_emailId_email_emailId_fk",
"tableFrom": "notification",
"tableTo": "email",
"columnsFrom": [
"emailId"
],
"tableTo": "email",
"columnsTo": [
"emailId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -2748,7 +2821,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -2776,7 +2852,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2912,8 +2991,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "10f88c8f-bc1e-4dc4-99a5-327469c0da70",
"prevId": "cbe2b41d-26b6-4ca5-b40d-0e37faa56f39",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "86052343-0056-486c-9168-fa84186b4323",
"prevId": "10f88c8f-bc1e-4dc4-99a5-327469c0da70",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -274,40 +272,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -429,27 +430,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -567,32 +571,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -703,19 +710,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -784,12 +794,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -831,19 +844,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -914,19 +930,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1054,27 +1073,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1190,27 +1212,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1338,27 +1363,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1437,71 +1465,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1561,19 +1592,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1635,32 +1669,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1759,97 +1796,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1898,12 +1938,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1933,19 +1976,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2000,19 +2046,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2054,28 +2103,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2118,19 +2170,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2240,27 +2295,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2407,19 +2465,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2487,19 +2548,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -2521,7 +2585,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -2573,7 +2640,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -2669,58 +2739,61 @@
"notification_slackId_slack_slackId_fk": {
"name": "notification_slackId_slack_slackId_fk",
"tableFrom": "notification",
"tableTo": "slack",
"columnsFrom": [
"slackId"
],
"tableTo": "slack",
"columnsTo": [
"slackId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_telegramId_telegram_telegramId_fk": {
"name": "notification_telegramId_telegram_telegramId_fk",
"tableFrom": "notification",
"tableTo": "telegram",
"columnsFrom": [
"telegramId"
],
"tableTo": "telegram",
"columnsTo": [
"telegramId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_discordId_discord_discordId_fk": {
"name": "notification_discordId_discord_discordId_fk",
"tableFrom": "notification",
"tableTo": "discord",
"columnsFrom": [
"discordId"
],
"tableTo": "discord",
"columnsTo": [
"discordId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_emailId_email_emailId_fk": {
"name": "notification_emailId_email_emailId_fk",
"tableFrom": "notification",
"tableTo": "email",
"columnsFrom": [
"emailId"
],
"tableTo": "email",
"columnsTo": [
"emailId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -2748,7 +2821,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -2776,7 +2852,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2913,8 +2992,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "86052343-0056-486c-9168-fa84186b4323",
"prevId": "10f88c8f-bc1e-4dc4-99a5-327469c0da70",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "730bfb9e-42e2-42de-a939-5cfe5ffe54b2",
"prevId": "86052343-0056-486c-9168-fa84186b4323",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -280,40 +278,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -435,27 +436,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -573,32 +577,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -709,19 +716,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -790,12 +800,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -837,19 +850,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -920,19 +936,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1060,27 +1079,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1196,27 +1218,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1344,27 +1369,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1443,71 +1471,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1567,19 +1598,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1641,32 +1675,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1765,97 +1802,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1904,12 +1944,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1939,19 +1982,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2006,19 +2052,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2060,28 +2109,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2124,19 +2176,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2246,27 +2301,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2413,19 +2471,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2493,19 +2554,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -2527,7 +2591,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -2579,7 +2646,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -2675,58 +2745,61 @@
"notification_slackId_slack_slackId_fk": {
"name": "notification_slackId_slack_slackId_fk",
"tableFrom": "notification",
"tableTo": "slack",
"columnsFrom": [
"slackId"
],
"tableTo": "slack",
"columnsTo": [
"slackId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_telegramId_telegram_telegramId_fk": {
"name": "notification_telegramId_telegram_telegramId_fk",
"tableFrom": "notification",
"tableTo": "telegram",
"columnsFrom": [
"telegramId"
],
"tableTo": "telegram",
"columnsTo": [
"telegramId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_discordId_discord_discordId_fk": {
"name": "notification_discordId_discord_discordId_fk",
"tableFrom": "notification",
"tableTo": "discord",
"columnsFrom": [
"discordId"
],
"tableTo": "discord",
"columnsTo": [
"discordId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_emailId_email_emailId_fk": {
"name": "notification_emailId_email_emailId_fk",
"tableFrom": "notification",
"tableTo": "email",
"columnsFrom": [
"emailId"
],
"tableTo": "email",
"columnsTo": [
"emailId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -2754,7 +2827,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -2782,7 +2858,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2919,8 +2998,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "730bfb9e-42e2-42de-a939-5cfe5ffe54b2",
"prevId": "86052343-0056-486c-9168-fa84186b4323",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "2c69b31b-ecee-4e20-9959-6dc0c76656fb",
"prevId": "730bfb9e-42e2-42de-a939-5cfe5ffe54b2",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -280,40 +278,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -435,27 +436,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -573,32 +577,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -709,19 +716,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -790,12 +800,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -837,19 +850,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -920,19 +936,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1060,27 +1079,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1196,27 +1218,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1344,27 +1369,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1443,71 +1471,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1567,19 +1598,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1641,32 +1675,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1771,97 +1808,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1910,12 +1950,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1945,19 +1988,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2012,19 +2058,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2066,28 +2115,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2130,19 +2182,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2252,27 +2307,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2419,19 +2477,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2499,19 +2560,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -2533,7 +2597,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -2585,7 +2652,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -2681,58 +2751,61 @@
"notification_slackId_slack_slackId_fk": {
"name": "notification_slackId_slack_slackId_fk",
"tableFrom": "notification",
"tableTo": "slack",
"columnsFrom": [
"slackId"
],
"tableTo": "slack",
"columnsTo": [
"slackId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_telegramId_telegram_telegramId_fk": {
"name": "notification_telegramId_telegram_telegramId_fk",
"tableFrom": "notification",
"tableTo": "telegram",
"columnsFrom": [
"telegramId"
],
"tableTo": "telegram",
"columnsTo": [
"telegramId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_discordId_discord_discordId_fk": {
"name": "notification_discordId_discord_discordId_fk",
"tableFrom": "notification",
"tableTo": "discord",
"columnsFrom": [
"discordId"
],
"tableTo": "discord",
"columnsTo": [
"discordId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_emailId_email_emailId_fk": {
"name": "notification_emailId_email_emailId_fk",
"tableFrom": "notification",
"tableTo": "email",
"columnsFrom": [
"emailId"
],
"tableTo": "email",
"columnsTo": [
"emailId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -2760,7 +2833,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -2788,7 +2864,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2925,8 +3004,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "2c69b31b-ecee-4e20-9959-6dc0c76656fb",
"prevId": "730bfb9e-42e2-42de-a939-5cfe5ffe54b2",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

View File

@@ -1,7 +1,5 @@
{
"id": "771c1412-7931-4f79-a789-055b0f51cf0f",
"prevId": "2c69b31b-ecee-4e20-9959-6dc0c76656fb",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -286,40 +284,43 @@
"application_registryId_registry_registryId_fk": {
"name": "application_registryId_registry_registryId_fk",
"tableFrom": "application",
"tableTo": "registry",
"columnsFrom": [
"registryId"
],
"tableTo": "registry",
"columnsTo": [
"registryId"
],
"onDelete": "set null",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "set null"
},
"application_projectId_project_projectId_fk": {
"name": "application_projectId_project_projectId_fk",
"tableFrom": "application",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"application_appName_unique": {
"name": "application_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -441,27 +442,30 @@
"postgres_projectId_project_projectId_fk": {
"name": "postgres_projectId_project_projectId_fk",
"tableFrom": "postgres",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"postgres_appName_unique": {
"name": "postgres_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -579,32 +583,35 @@
"user_adminId_admin_adminId_fk": {
"name": "user_adminId_admin_adminId_fk",
"tableFrom": "user",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"user_authId_auth_id_fk": {
"name": "user_authId_auth_id_fk",
"tableFrom": "user",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -715,19 +722,22 @@
"admin_authId_auth_id_fk": {
"name": "admin_authId_auth_id_fk",
"tableFrom": "admin",
"tableTo": "auth",
"columnsFrom": [
"authId"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -796,12 +806,15 @@
"uniqueConstraints": {
"auth_email_unique": {
"name": "auth_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -843,19 +856,22 @@
"project_adminId_admin_adminId_fk": {
"name": "project_adminId_admin_adminId_fk",
"tableFrom": "project",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -926,19 +942,22 @@
"domain_applicationId_application_applicationId_fk": {
"name": "domain_applicationId_application_applicationId_fk",
"tableFrom": "domain",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1066,27 +1085,30 @@
"mariadb_projectId_project_projectId_fk": {
"name": "mariadb_projectId_project_projectId_fk",
"tableFrom": "mariadb",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mariadb_appName_unique": {
"name": "mariadb_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1202,27 +1224,30 @@
"mongo_projectId_project_projectId_fk": {
"name": "mongo_projectId_project_projectId_fk",
"tableFrom": "mongo",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mongo_appName_unique": {
"name": "mongo_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1350,27 +1375,30 @@
"mysql_projectId_project_projectId_fk": {
"name": "mysql_projectId_project_projectId_fk",
"tableFrom": "mysql",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"mysql_appName_unique": {
"name": "mysql_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1449,71 +1477,74 @@
"backup_destinationId_destination_destinationId_fk": {
"name": "backup_destinationId_destination_destinationId_fk",
"tableFrom": "backup",
"tableTo": "destination",
"columnsFrom": [
"destinationId"
],
"tableTo": "destination",
"columnsTo": [
"destinationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_postgresId_postgres_postgresId_fk": {
"name": "backup_postgresId_postgres_postgresId_fk",
"tableFrom": "backup",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mariadbId_mariadb_mariadbId_fk": {
"name": "backup_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "backup",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mysqlId_mysql_mysqlId_fk": {
"name": "backup_mysqlId_mysql_mysqlId_fk",
"tableFrom": "backup",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"backup_mongoId_mongo_mongoId_fk": {
"name": "backup_mongoId_mongo_mongoId_fk",
"tableFrom": "backup",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -1573,19 +1604,22 @@
"destination_adminId_admin_adminId_fk": {
"name": "destination_adminId_admin_adminId_fk",
"tableFrom": "destination",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -1647,32 +1681,35 @@
"deployment_applicationId_application_applicationId_fk": {
"name": "deployment_applicationId_application_applicationId_fk",
"tableFrom": "deployment",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"deployment_composeId_compose_composeId_fk": {
"name": "deployment_composeId_compose_composeId_fk",
"tableFrom": "deployment",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -1777,97 +1814,100 @@
"mount_applicationId_application_applicationId_fk": {
"name": "mount_applicationId_application_applicationId_fk",
"tableFrom": "mount",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_postgresId_postgres_postgresId_fk": {
"name": "mount_postgresId_postgres_postgresId_fk",
"tableFrom": "mount",
"tableTo": "postgres",
"columnsFrom": [
"postgresId"
],
"tableTo": "postgres",
"columnsTo": [
"postgresId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mariadbId_mariadb_mariadbId_fk": {
"name": "mount_mariadbId_mariadb_mariadbId_fk",
"tableFrom": "mount",
"tableTo": "mariadb",
"columnsFrom": [
"mariadbId"
],
"tableTo": "mariadb",
"columnsTo": [
"mariadbId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mongoId_mongo_mongoId_fk": {
"name": "mount_mongoId_mongo_mongoId_fk",
"tableFrom": "mount",
"tableTo": "mongo",
"columnsFrom": [
"mongoId"
],
"tableTo": "mongo",
"columnsTo": [
"mongoId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_mysqlId_mysql_mysqlId_fk": {
"name": "mount_mysqlId_mysql_mysqlId_fk",
"tableFrom": "mount",
"tableTo": "mysql",
"columnsFrom": [
"mysqlId"
],
"tableTo": "mysql",
"columnsTo": [
"mysqlId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_redisId_redis_redisId_fk": {
"name": "mount_redisId_redis_redisId_fk",
"tableFrom": "mount",
"tableTo": "redis",
"columnsFrom": [
"redisId"
],
"tableTo": "redis",
"columnsTo": [
"redisId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"mount_composeId_compose_composeId_fk": {
"name": "mount_composeId_compose_composeId_fk",
"tableFrom": "mount",
"tableTo": "compose",
"columnsFrom": [
"composeId"
],
"tableTo": "compose",
"columnsTo": [
"composeId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -1916,12 +1956,15 @@
"uniqueConstraints": {
"certificate_certificatePath_unique": {
"name": "certificate_certificatePath_unique",
"nullsNotDistinct": false,
"columns": [
"certificatePath"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -1951,19 +1994,22 @@
"session_user_id_auth_id_fk": {
"name": "session_user_id_auth_id_fk",
"tableFrom": "session",
"tableTo": "auth",
"columnsFrom": [
"user_id"
],
"tableTo": "auth",
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2018,19 +2064,22 @@
"redirect_applicationId_application_applicationId_fk": {
"name": "redirect_applicationId_application_applicationId_fk",
"tableFrom": "redirect",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2072,28 +2121,31 @@
"security_applicationId_application_applicationId_fk": {
"name": "security_applicationId_application_applicationId_fk",
"tableFrom": "security",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"security_username_applicationId_unique": {
"name": "security_username_applicationId_unique",
"nullsNotDistinct": false,
"columns": [
"username",
"applicationId"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2136,19 +2188,22 @@
"port_applicationId_application_applicationId_fk": {
"name": "port_applicationId_application_applicationId_fk",
"tableFrom": "port",
"tableTo": "application",
"columnsFrom": [
"applicationId"
],
"tableTo": "application",
"columnsTo": [
"applicationId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2258,27 +2313,30 @@
"redis_projectId_project_projectId_fk": {
"name": "redis_projectId_project_projectId_fk",
"tableFrom": "redis",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"redis_appName_unique": {
"name": "redis_appName_unique",
"nullsNotDistinct": false,
"columns": [
"appName"
]
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -2425,19 +2483,22 @@
"compose_projectId_project_projectId_fk": {
"name": "compose_projectId_project_projectId_fk",
"tableFrom": "compose",
"tableTo": "project",
"columnsFrom": [
"projectId"
],
"tableTo": "project",
"columnsTo": [
"projectId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -2505,19 +2566,22 @@
"registry_adminId_admin_adminId_fk": {
"name": "registry_adminId_admin_adminId_fk",
"tableFrom": "registry",
"tableTo": "admin",
"columnsFrom": [
"adminId"
],
"tableTo": "admin",
"columnsTo": [
"adminId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -2539,7 +2603,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -2591,7 +2658,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -2687,58 +2757,61 @@
"notification_slackId_slack_slackId_fk": {
"name": "notification_slackId_slack_slackId_fk",
"tableFrom": "notification",
"tableTo": "slack",
"columnsFrom": [
"slackId"
],
"tableTo": "slack",
"columnsTo": [
"slackId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_telegramId_telegram_telegramId_fk": {
"name": "notification_telegramId_telegram_telegramId_fk",
"tableFrom": "notification",
"tableTo": "telegram",
"columnsFrom": [
"telegramId"
],
"tableTo": "telegram",
"columnsTo": [
"telegramId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_discordId_discord_discordId_fk": {
"name": "notification_discordId_discord_discordId_fk",
"tableFrom": "notification",
"tableTo": "discord",
"columnsFrom": [
"discordId"
],
"tableTo": "discord",
"columnsTo": [
"discordId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
},
"notification_emailId_email_emailId_fk": {
"name": "notification_emailId_email_emailId_fk",
"tableFrom": "notification",
"tableTo": "email",
"columnsFrom": [
"emailId"
],
"tableTo": "email",
"columnsTo": [
"emailId"
],
"onDelete": "cascade",
"onUpdate": "no action"
"onUpdate": "no action",
"onDelete": "cascade"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -2766,7 +2839,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -2794,7 +2870,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -2931,8 +3010,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "771c1412-7931-4f79-a789-055b0f51cf0f",
"prevId": "2c69b31b-ecee-4e20-9959-6dc0c76656fb",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,5 @@
{
"id": "1f4eada1-a120-490d-a152-2fc7a81eee7a",
"prevId": "8492fecb-69a3-4efb-86b1-7bbc62e1eba8",
"version": "6",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.application": {
@@ -562,7 +560,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.postgres": {
"name": "postgres",
@@ -723,7 +724,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.user": {
"name": "user",
@@ -880,7 +884,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.admin": {
"name": "admin",
@@ -1008,7 +1015,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.auth": {
"name": "auth",
@@ -1106,7 +1116,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.project": {
"name": "project",
@@ -1167,7 +1180,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.domain": {
"name": "domain",
@@ -1302,7 +1318,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mariadb": {
"name": "mariadb",
@@ -1469,7 +1488,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mongo": {
"name": "mongo",
@@ -1631,7 +1653,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mysql": {
"name": "mysql",
@@ -1798,7 +1823,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.backup": {
"name": "backup",
@@ -1941,7 +1969,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.destination": {
"name": "destination",
@@ -2019,7 +2050,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.deployment": {
"name": "deployment",
@@ -2157,7 +2191,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.mount": {
"name": "mount",
@@ -2352,7 +2389,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.certificate": {
"name": "certificate",
@@ -2445,7 +2485,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.session": {
"name": "session",
@@ -2487,7 +2530,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redirect": {
"name": "redirect",
@@ -2554,7 +2600,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.security": {
"name": "security",
@@ -2617,7 +2666,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.port": {
"name": "port",
@@ -2672,7 +2724,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.redis": {
"name": "redis",
@@ -2821,7 +2876,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.compose": {
"name": "compose",
@@ -3131,7 +3189,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.registry": {
"name": "registry",
@@ -3212,7 +3273,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.discord": {
"name": "discord",
@@ -3240,7 +3304,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.email": {
"name": "email",
@@ -3292,7 +3359,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.gotify": {
"name": "gotify",
@@ -3333,7 +3403,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.notification": {
"name": "notification",
@@ -3518,7 +3591,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.slack": {
"name": "slack",
@@ -3546,7 +3622,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.telegram": {
"name": "telegram",
@@ -3574,7 +3653,10 @@
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.ssh-key": {
"name": "ssh-key",
@@ -3647,7 +3729,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.git_provider": {
"name": "git_provider",
@@ -3703,7 +3788,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.bitbucket": {
"name": "bitbucket",
@@ -3757,7 +3845,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.github": {
"name": "github",
@@ -3835,7 +3926,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.gitlab": {
"name": "gitlab",
@@ -3920,7 +4014,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.server": {
"name": "server",
@@ -4040,7 +4137,10 @@
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
"uniqueConstraints": {},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
},
"public.preview_deployments": {
"name": "preview_deployments",
@@ -4165,7 +4265,10 @@
],
"nullsNotDistinct": false
}
}
},
"policies": {},
"isRLSEnabled": false,
"checkConstraints": {}
}
},
"enums": {
@@ -4334,8 +4437,14 @@
},
"schemas": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
"tables": {},
"columns": {}
},
"id": "1f4eada1-a120-490d-a152-2fc7a81eee7a",
"prevId": "8492fecb-69a3-4efb-86b1-7bbc62e1eba8",
"sequences": {},
"policies": {},
"views": {},
"roles": {}
}

Some files were not shown because too many files have changed in this diff Show More