mirror of
https://github.com/nicotsx/ironmount.git
synced 2025-12-10 12:10:51 +01:00
fix: build issues
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
*
|
||||
|
||||
!turbo.json
|
||||
!bun.lock
|
||||
!package.json
|
||||
|
||||
!**/package.json
|
||||
!**/bun.lock
|
||||
@@ -8,6 +10,7 @@
|
||||
!**/vite.config.ts
|
||||
!**/react-router.config.ts
|
||||
!**/build.ts
|
||||
!**/components.json
|
||||
|
||||
!apps/**/src/**
|
||||
!apps/**/drizzle/**
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
ARG BUN_VERSION="1.2.20"
|
||||
ARG BUN_VERSION="1.2.23"
|
||||
|
||||
FROM oven/bun:${BUN_VERSION}-alpine AS runner_base
|
||||
|
||||
RUN apk add --no-cache davfs2
|
||||
RUN apk add --no-cache davfs2=1.6.1-r2
|
||||
|
||||
# ------------------------------
|
||||
# DEVELOPMENT
|
||||
@@ -49,7 +49,9 @@ FROM runner_base AS production
|
||||
|
||||
ENV NODE_ENV="production"
|
||||
|
||||
RUN apk add --no-cache davfs2
|
||||
# RUN bun i ssh2
|
||||
|
||||
RUN apk add --no-cache davfs2=1.6.1-r2
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
FROM node:20-alpine AS development-dependencies-env
|
||||
COPY . /app
|
||||
WORKDIR /app
|
||||
RUN npm ci
|
||||
|
||||
FROM node:20-alpine AS production-dependencies-env
|
||||
COPY ./package.json package-lock.json /app/
|
||||
WORKDIR /app
|
||||
RUN npm ci --omit=dev
|
||||
|
||||
FROM node:20-alpine AS build-env
|
||||
COPY . /app/
|
||||
COPY --from=development-dependencies-env /app/node_modules /app/node_modules
|
||||
WORKDIR /app
|
||||
RUN npm run build
|
||||
|
||||
FROM node:20-alpine
|
||||
COPY ./package.json package-lock.json /app/
|
||||
COPY --from=production-dependencies-env /app/node_modules /app/node_modules
|
||||
COPY --from=build-env /app/build /app/build
|
||||
WORKDIR /app
|
||||
CMD ["npm", "run", "start"]
|
||||
@@ -8,7 +8,7 @@ export const authMiddleware: MiddlewareFunction = async ({ context }) => {
|
||||
if (!session.data?.user.id) {
|
||||
const status = await getStatus();
|
||||
if (!status.data?.hasUsers) {
|
||||
throw redirect("/register");
|
||||
throw redirect("/onboarding");
|
||||
}
|
||||
|
||||
throw redirect("/login");
|
||||
|
||||
@@ -63,7 +63,7 @@ export default function OnboardingPage() {
|
||||
<div className="min-h-screen flex items-center justify-center p-4">
|
||||
<Card className="w-full max-w-md">
|
||||
<CardHeader>
|
||||
<CardTitle className="text-2xl font-bold">Welcome to IronMount</CardTitle>
|
||||
<CardTitle className="text-2xl font-bold">Welcome to Ironmount</CardTitle>
|
||||
<CardDescription>Create the admin user to get started</CardDescription>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
|
||||
@@ -9,50 +9,51 @@
|
||||
"tsc": "react-router typegen && tsc"
|
||||
},
|
||||
"dependencies": {
|
||||
"@hookform/resolvers": "^5.2.1",
|
||||
"@hookform/resolvers": "^5.2.2",
|
||||
"@ironmount/schemas": "workspace:*",
|
||||
"@radix-ui/react-alert-dialog": "^1.1.15",
|
||||
"@radix-ui/react-dialog": "^1.1.15",
|
||||
"@radix-ui/react-label": "^2.1.7",
|
||||
"@radix-ui/react-scroll-area": "^1.2.10",
|
||||
"@radix-ui/react-select": "^2.2.5",
|
||||
"@radix-ui/react-select": "^2.2.6",
|
||||
"@radix-ui/react-slot": "^1.2.3",
|
||||
"@radix-ui/react-switch": "^1.2.6",
|
||||
"@radix-ui/react-tabs": "^1.1.13",
|
||||
"@radix-ui/react-tooltip": "^1.2.8",
|
||||
"@react-router/node": "^7.7.1",
|
||||
"@react-router/serve": "^7.7.1",
|
||||
"@tanstack/react-query": "^5.84.2",
|
||||
"@tanstack/react-query-devtools": "^5.85.9",
|
||||
"@react-router/node": "^7.9.3",
|
||||
"@react-router/serve": "^7.9.3",
|
||||
"@tanstack/react-query": "^5.90.2",
|
||||
"@tanstack/react-query-devtools": "^5.90.2",
|
||||
"@tanstack/react-table": "^8.21.3",
|
||||
"arktype": "^2.1.20",
|
||||
"arktype": "^2.1.22",
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"date-fns": "^4.1.0",
|
||||
"isbot": "^5.1.27",
|
||||
"isbot": "^5.1.31",
|
||||
"lucide-react": "^0.544.0",
|
||||
"next-themes": "^0.4.6",
|
||||
"prismjs": "^1.30.0",
|
||||
"react": "^19.1.0",
|
||||
"react-dom": "^19.1.0",
|
||||
"react-hook-form": "^7.62.0",
|
||||
"react": "^19.2.0",
|
||||
"react-dom": "^19.2.0",
|
||||
"react-hook-form": "^7.63.0",
|
||||
"react-router": "^7.9.3",
|
||||
"recharts": "2.15.4",
|
||||
"recharts": "3.2.1",
|
||||
"sonner": "^2.0.7",
|
||||
"tailwind-merge": "^3.3.1",
|
||||
"yaml": "^2.8.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@react-router/dev": "^7.9.3",
|
||||
"@tailwindcss/vite": "^4.1.4",
|
||||
"@types/node": "^20",
|
||||
"@tailwindcss/vite": "^4.1.14",
|
||||
"@types/node": "^24.6.2",
|
||||
"@types/prismjs": "^1.26.5",
|
||||
"@types/react": "^19.1.2",
|
||||
"@types/react-dom": "^19.1.2",
|
||||
"tailwindcss": "^4.1.4",
|
||||
"tw-animate-css": "^1.3.6",
|
||||
"typescript": "^5.8.3",
|
||||
"vite": "npm:rolldown-vite@latest",
|
||||
"@types/react": "^19.2.0",
|
||||
"@types/react-dom": "^19.2.0",
|
||||
"lightningcss": "^1.30.2",
|
||||
"tailwindcss": "^4.1.14",
|
||||
"tw-animate-css": "^1.4.0",
|
||||
"typescript": "^5.9.3",
|
||||
"vite": "^7.1.9",
|
||||
"vite-bundle-analyzer": "^1.2.3",
|
||||
"vite-tsconfig-paths": "^5.1.4"
|
||||
}
|
||||
|
||||
@@ -9,5 +9,5 @@ await Bun.build({
|
||||
identifiers: true,
|
||||
syntax: true,
|
||||
},
|
||||
external: [],
|
||||
external: ["ssh2"],
|
||||
});
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
"dev": "bun run --watch src/index.ts",
|
||||
"build": "rm -rf dist && bun build.ts",
|
||||
"tsc": "tsc --noEmit",
|
||||
"gen:migrations": "drizzle-kit generate"
|
||||
"gen:migrations": "drizzle-kit generate",
|
||||
"studio": "drizzle-kit studio"
|
||||
},
|
||||
"dependencies": {
|
||||
"@hono/arktype-validator": "^2.0.1",
|
||||
@@ -15,7 +16,7 @@
|
||||
"arktype": "^2.1.20",
|
||||
"dockerode": "^4.0.8",
|
||||
"dotenv": "^17.2.1",
|
||||
"drizzle-orm": "^0.44.4",
|
||||
"drizzle-orm": "^0.44.6",
|
||||
"hono": "^4.9.2",
|
||||
"hono-openapi": "^1.1.0",
|
||||
"http-errors-enhanced": "^3.0.2",
|
||||
@@ -24,8 +25,9 @@
|
||||
"winston": "^3.17.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@libsql/client": "^0.15.15",
|
||||
"@types/bun": "^1.2.20",
|
||||
"@types/dockerode": "^3.3.44",
|
||||
"drizzle-kit": "^0.31.4"
|
||||
"drizzle-kit": "^0.31.5"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,14 +34,14 @@ export const scalarDescriptor = Scalar({
|
||||
const driver = new Hono().use(honoLogger()).route("/", driverController);
|
||||
const app = new Hono()
|
||||
.use(honoLogger())
|
||||
.get("*", serveStatic({ root: "./assets/frontend" }))
|
||||
.get("healthcheck", (c) => c.json({ status: "ok" }))
|
||||
.basePath("/api/v1")
|
||||
.route("/auth", authController)
|
||||
.route("/volumes", volumeController.use(requireAuth));
|
||||
.route("/api/v1/auth", authController.basePath("/api/v1"))
|
||||
.route("/api/v1/volumes", volumeController.use(requireAuth))
|
||||
.get("/assets/*", serveStatic({ root: "./assets/frontend" }))
|
||||
.get("*", serveStatic({ path: "./assets/frontend/index.html" }));
|
||||
|
||||
app.get("/openapi.json", generalDescriptor(app));
|
||||
app.get("/docs", scalarDescriptor);
|
||||
app.get("/api/v1/openapi.json", generalDescriptor(app));
|
||||
app.get("/api/v1/docs", scalarDescriptor);
|
||||
|
||||
app.onError((err, c) => {
|
||||
logger.error(`${c.req.url}: ${err.message}`);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "ironmount",
|
||||
"private": true,
|
||||
"packageManager": "bun@1.2.15",
|
||||
"packageManager": "bun@1.2.23",
|
||||
"scripts": {
|
||||
"dev": "turbo dev",
|
||||
"tsc": "turbo run tsc",
|
||||
@@ -16,6 +16,9 @@
|
||||
],
|
||||
"devDependencies": {
|
||||
"@hey-api/openapi-ts": "^0.80.17",
|
||||
"turbo": "^2.5.6"
|
||||
}
|
||||
"turbo": "^2.5.8"
|
||||
},
|
||||
"trustedDependencies": [
|
||||
"@tailwindcss/oxide"
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user