Update deps, fix Docker build errors
This commit is contained in:
parent
162390008b
commit
c62bfd2a4c
31 changed files with 832 additions and 1227 deletions
50
apps/bridge-frontend/Dockerfile
Normal file
50
apps/bridge-frontend/Dockerfile
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
FROM node:20-bookworm AS base
|
||||
|
||||
FROM base AS builder
|
||||
ARG APP_DIR=/opt/bridge-frontend
|
||||
RUN mkdir -p ${APP_DIR}/
|
||||
RUN npm i -g turbo
|
||||
WORKDIR ${APP_DIR}
|
||||
COPY . .
|
||||
RUN turbo prune --scope=bridge-frontend --docker
|
||||
|
||||
FROM base AS installer
|
||||
ARG APP_DIR=/opt/bridge-frontend
|
||||
WORKDIR ${APP_DIR}
|
||||
COPY --from=builder ${APP_DIR}/.gitignore .gitignore
|
||||
COPY --from=builder ${APP_DIR}/out/json/ .
|
||||
COPY --from=builder ${APP_DIR}/out/package-lock.json ./package-lock.json
|
||||
RUN npm ci
|
||||
|
||||
COPY --from=builder ${APP_DIR}/out/full/ .
|
||||
RUN npm i -g turbo
|
||||
RUN turbo run build --filter=bridge-frontend
|
||||
|
||||
FROM base AS runner
|
||||
ARG APP_DIR=/opt/bridge-frontend
|
||||
WORKDIR ${APP_DIR}/
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
LABEL maintainer="Darren Clarke <darren@redaranj.com>"
|
||||
LABEL org.label-schema.build-date=$BUILD_DATE
|
||||
LABEL org.label-schema.version=$VERSION
|
||||
ENV APP_DIR ${APP_DIR}
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
dumb-init
|
||||
RUN mkdir -p ${APP_DIR}
|
||||
RUN chown -R node ${APP_DIR}/
|
||||
|
||||
USER node
|
||||
WORKDIR ${APP_DIR}
|
||||
COPY --from=installer ${APP_DIR}/node_modules/ ./node_modules/
|
||||
COPY --from=installer ${APP_DIR}/apps/bridge-frontend/ ./apps/bridge-frontend/
|
||||
COPY --from=installer ${APP_DIR}/package.json ./package.json
|
||||
USER root
|
||||
WORKDIR ${APP_DIR}/apps/bridge-frontend/
|
||||
RUN chmod +x docker-entrypoint.sh
|
||||
USER node
|
||||
EXPOSE 3000
|
||||
ENV PORT 3000
|
||||
ENV NODE_ENV production
|
||||
ENTRYPOINT ["/opt/link/apps/bridge-frontend/docker-entrypoint.sh"]
|
||||
5
apps/bridge-frontend/docker-entrypoint.sh
Normal file
5
apps/bridge-frontend/docker-entrypoint.sh
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
echo "starting bridge-frontend"
|
||||
exec dumb-init npm run start
|
||||
|
|
@ -9,7 +9,7 @@
|
|||
"lint": "next lint"
|
||||
},
|
||||
"dependencies": {
|
||||
"@auth/kysely-adapter": "^1.0.0",
|
||||
"@auth/kysely-adapter": "^1.1.0",
|
||||
"@emotion/cache": "^11.11.0",
|
||||
"@emotion/react": "^11.11.4",
|
||||
"@emotion/styled": "^11.11.5",
|
||||
|
|
@ -17,9 +17,11 @@
|
|||
"@mui/lab": "^5.0.0-alpha.170",
|
||||
"@mui/material": "^5",
|
||||
"@mui/material-nextjs": "^5.15.11",
|
||||
"@mui/x-data-grid-pro": "^7.3.2",
|
||||
"@mui/x-date-pickers-pro": "^7.3.2",
|
||||
"@mui/x-data-grid-pro": "^7.4.0",
|
||||
"@mui/x-date-pickers-pro": "^7.4.0",
|
||||
"@mui/x-license": "^7.2.0",
|
||||
"bridge-common": "*",
|
||||
"bridge-ui": "*",
|
||||
"date-fns": "^3.6.0",
|
||||
"dotenv": "^16.4.5",
|
||||
"graphile-worker": "^0.16.6",
|
||||
|
|
@ -33,13 +35,12 @@
|
|||
"react-cookie": "^7.1.4",
|
||||
"react-digit-input": "^2.1.0",
|
||||
"react-dom": "18.3.1",
|
||||
"react-qr-code": "^2.0.12",
|
||||
"react-qr-code": "^2.0.13",
|
||||
"react-timer-hook": "^3.0.7",
|
||||
"sharp": "^0.33.3",
|
||||
"tss-react": "^4.9.10",
|
||||
"tsx": "^4.9.3",
|
||||
"ui": "*",
|
||||
"bridge-common": "*",
|
||||
"bridge-ui": "*"
|
||||
"tsx": "^4.10.2",
|
||||
"ui": "*"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^20",
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
"skipLibCheck": true,
|
||||
"strict": true,
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"esModuleInterop": true,
|
||||
"module": "esnext",
|
||||
"moduleResolution": "bundler",
|
||||
|
|
@ -12,14 +13,14 @@
|
|||
"isolatedModules": true,
|
||||
"jsx": "preserve",
|
||||
"incremental": true,
|
||||
"paths": {
|
||||
"@/*": ["./*"]
|
||||
},
|
||||
"plugins": [
|
||||
{
|
||||
"name": "next"
|
||||
}
|
||||
],
|
||||
"paths": {
|
||||
"@/*": ["./*"]
|
||||
}
|
||||
]
|
||||
},
|
||||
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
|
||||
"exclude": ["node_modules"]
|
||||
|
|
|
|||
|
|
@ -16,14 +16,14 @@
|
|||
"bridge-common": "*",
|
||||
"hapi-auth-bearer-token": "^8.0.0",
|
||||
"hapi-pino": "^12.1.0",
|
||||
"kysely": "^0.27.3"
|
||||
"kysely": "^0.26.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "*",
|
||||
"eslint-config": "*",
|
||||
"jest-config": "*",
|
||||
"ts-config": "*",
|
||||
"tsx": "^4.9.3",
|
||||
"tsx": "^4.10.2",
|
||||
"typescript": "^5.4.5"
|
||||
},
|
||||
"scripts": {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
FROM node:18-alpine as base
|
||||
|
||||
FROM base AS builder
|
||||
ARG APP_DIR=/opt/bridge
|
||||
ARG APP_DIR=/opt/bridge-worker
|
||||
RUN mkdir -p ${APP_DIR}/
|
||||
RUN npm i -g turbo
|
||||
WORKDIR ${APP_DIR}
|
||||
|
|
@ -9,9 +9,9 @@ COPY . .
|
|||
RUN turbo prune --scope=bridge-worker --docker
|
||||
|
||||
FROM base AS installer
|
||||
ARG APP_DIR=/opt/bridge
|
||||
ARG APP_DIR=/opt/bridge-worker
|
||||
WORKDIR ${APP_DIR}
|
||||
COPY .gitignore .gitignore
|
||||
COPY --from=builder ${APP_DIR}/.gitignore .gitignore
|
||||
COPY --from=builder ${APP_DIR}/out/json/ .
|
||||
COPY --from=builder ${APP_DIR}/out/package-lock.json ./package-lock.json
|
||||
COPY --from=builder ${APP_DIR}/out/full/ .
|
||||
|
|
@ -20,7 +20,7 @@ RUN npm i -g turbo
|
|||
RUN turbo run build --filter=bridge-worker
|
||||
|
||||
FROM graphile/worker:0.16.5 as runner
|
||||
ARG APP_DIR=/opt/bridge
|
||||
ARG APP_DIR=/opt/bridge-worker
|
||||
RUN mkdir -p ${APP_DIR}/
|
||||
ARG BUILD_DIR=${APP_DIR}/apps/bridge-worker/build/main
|
||||
RUN mkdir -p ${APP_DIR}/
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ RUN turbo prune --scope=leafcutter --docker
|
|||
FROM base AS installer
|
||||
ARG APP_DIR=/opt/leafcutter
|
||||
WORKDIR ${APP_DIR}
|
||||
COPY .gitignore .gitignore
|
||||
COPY --from=builder ${APP_DIR}/.gitignore .gitignore
|
||||
COPY --from=builder ${APP_DIR}/out/json/ .
|
||||
COPY --from=builder ${APP_DIR}/out/package-lock.json ./package-lock.json
|
||||
RUN npm ci
|
||||
|
|
|
|||
|
|
@ -20,9 +20,9 @@
|
|||
"@mui/icons-material": "^5",
|
||||
"@mui/lab": "^5.0.0-alpha.170",
|
||||
"@mui/material": "^5",
|
||||
"@mui/x-data-grid-pro": "^7.3.2",
|
||||
"@mui/x-date-pickers-pro": "^7.3.2",
|
||||
"@opensearch-project/opensearch": "^2.7.0",
|
||||
"@mui/x-data-grid-pro": "^7.4.0",
|
||||
"@mui/x-date-pickers-pro": "^7.4.0",
|
||||
"@opensearch-project/opensearch": "^2.8.0",
|
||||
"cryptr": "^6.3.0",
|
||||
"date-fns": "^3.6.0",
|
||||
"http-proxy-middleware": "^3.0.0",
|
||||
|
|
@ -47,8 +47,8 @@
|
|||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.24.5",
|
||||
"@types/node": "^20.12.10",
|
||||
"@types/react": "18.3.1",
|
||||
"@types/node": "^20.12.11",
|
||||
"@types/react": "18.3.2",
|
||||
"@types/uuid": "^9.0.8",
|
||||
"babel-loader": "^9.1.3",
|
||||
"eslint": "^8.0.0",
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ RUN turbo prune --scope=link --docker
|
|||
FROM base AS installer
|
||||
ARG APP_DIR=/opt/link
|
||||
WORKDIR ${APP_DIR}
|
||||
COPY .gitignore .gitignore
|
||||
COPY --from=builder ${APP_DIR}/.gitignore .gitignore
|
||||
COPY --from=builder ${APP_DIR}/out/json/ .
|
||||
COPY --from=builder ${APP_DIR}/out/package-lock.json ./package-lock.json
|
||||
RUN npm ci
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ export const createTicketAction = async (
|
|||
setBody("");
|
||||
};
|
||||
|
||||
*/
|
||||
|
||||
try {
|
||||
const ticket = {
|
||||
title: formData.get("title"),
|
||||
|
|
@ -50,12 +50,14 @@ export const createTicketAction = async (
|
|||
} catch (e: any) {
|
||||
return { success: false, message: e?.message ?? "Unknown error" };
|
||||
}
|
||||
*/
|
||||
};
|
||||
|
||||
export const updateTicketAction = async (
|
||||
currentState: any,
|
||||
formData: FormData,
|
||||
) => {
|
||||
/*
|
||||
try {
|
||||
const { id, project } = currentState.values;
|
||||
const updatedTicket = {
|
||||
|
|
@ -80,12 +82,14 @@ export const updateTicketAction = async (
|
|||
} catch (e: any) {
|
||||
return { success: false, message: e?.message ?? "Unknown error" };
|
||||
}
|
||||
*/
|
||||
};
|
||||
|
||||
export const updateTicketTagsAction = async (
|
||||
currentState: any,
|
||||
formData: FormData,
|
||||
) => {
|
||||
/*
|
||||
try {
|
||||
const { id, project } = currentState.values;
|
||||
const updatedTicket = {
|
||||
|
|
@ -110,4 +114,5 @@ export const updateTicketTagsAction = async (
|
|||
} catch (e: any) {
|
||||
return { success: false, message: e?.message ?? "Unknown error" };
|
||||
}
|
||||
*/
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,10 +1,15 @@
|
|||
/** @type {import('next').NextConfig} */
|
||||
const nextConfig = {
|
||||
reactStrictMode: true,
|
||||
experimental: {
|
||||
missingSuspenseWithCSRBailout: false,
|
||||
},
|
||||
transpilePackages: ["leafcutter-ui", "bridge-ui", "opensearch-common", "ui"],
|
||||
transpilePackages: [
|
||||
"leafcutter-ui",
|
||||
"opensearch-common",
|
||||
"ui",
|
||||
"bridge-common",
|
||||
"bridge-ui",
|
||||
],
|
||||
publicRuntimeConfig: {
|
||||
linkURL: process.env.LINK_URL ?? "http://localhost:3000",
|
||||
bridgeURL: process.env.BRIDGE_URL ?? "http://localhost:8002",
|
||||
|
|
@ -13,4 +18,4 @@ const nextConfig = {
|
|||
},
|
||||
};
|
||||
|
||||
module.exports = nextConfig;
|
||||
export default nextConfig;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
"name": "link",
|
||||
"version": "0.0.1",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "next dev",
|
||||
"build": "next build",
|
||||
|
|
@ -18,12 +19,13 @@
|
|||
"@mui/icons-material": "^5",
|
||||
"@mui/lab": "^5.0.0-alpha.170",
|
||||
"@mui/material": "^5",
|
||||
"@mui/x-data-grid-pro": "^7.3.2",
|
||||
"@mui/x-date-pickers-pro": "^7.3.2",
|
||||
"@mui/x-data-grid-pro": "^7.4.0",
|
||||
"@mui/x-date-pickers-pro": "^7.4.0",
|
||||
"bridge-common": "*",
|
||||
"bridge-ui": "*",
|
||||
"date-fns": "^3.6.0",
|
||||
"graphql-request": "^6.1.0",
|
||||
"graphql": "^16.8.1",
|
||||
"graphql-request": "^7.0.1",
|
||||
"leafcutter-ui": "*",
|
||||
"material-ui-popup-state": "^5.1.0",
|
||||
"mui-chips-input": "^2.1.4",
|
||||
|
|
@ -43,8 +45,8 @@
|
|||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.24.5",
|
||||
"@types/node": "^20.12.10",
|
||||
"@types/react": "18.3.1",
|
||||
"@types/node": "^20.12.11",
|
||||
"@types/react": "18.3.2",
|
||||
"@types/uuid": "^9.0.8",
|
||||
"babel-loader": "^9.1.3",
|
||||
"eslint": "^8.0.0",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
"compilerOptions": {
|
||||
"target": "es5",
|
||||
"lib": ["dom", "dom.iterable", "esnext"],
|
||||
"allowJs": true,
|
||||
"skipLibCheck": true,
|
||||
|
|
@ -9,7 +8,7 @@
|
|||
"noEmit": true,
|
||||
"esModuleInterop": true,
|
||||
"module": "esnext",
|
||||
"moduleResolution": "node",
|
||||
"moduleResolution": "bundler",
|
||||
"resolveJsonModule": true,
|
||||
"isolatedModules": true,
|
||||
"jsx": "preserve",
|
||||
|
|
@ -24,12 +23,6 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
"next-env.d.ts",
|
||||
"**/*.ts",
|
||||
"**/*.tsx",
|
||||
".next/types/**/*.ts",
|
||||
"../leafcutter/app/(login)/login/link/_components/AutoLogin.tsx"
|
||||
],
|
||||
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
|
||||
"exclude": ["node_modules"]
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue