From 3c6cb193eb7f5b561acf9ec7a16312d8d02ee76f Mon Sep 17 00:00:00 2001 From: Martin Berg Alstad Date: Sun, 9 Feb 2025 13:01:34 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=AA=F0=9F=90=9B=20Fixed=20pnpm=20in=20?= =?UTF-8?q?Dockerfile,=20moved=20config=20to=20src?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 2 +- Dockerfile | 12 +++++++++--- package.json | 1 - packages/common/logger.ts | 2 +- src/actual.ts | 2 +- src/bank/sparebank1.ts | 2 +- config.ts => src/config.ts | 0 src/main.ts | 2 +- src/mappings.ts | 2 +- tsconfig.json | 2 +- 10 files changed, 16 insertions(+), 11 deletions(-) rename config.ts => src/config.ts (100%) diff --git a/.dockerignore b/.dockerignore index 89fbfbb..6a712e3 100644 --- a/.dockerignore +++ b/.dockerignore @@ -4,7 +4,7 @@ httpRequests .env.* *.sqlite jest.config.ts -node_modules +**/node_modules .git .gitignore *.md \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 6c73068..e14ee19 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,14 @@ FROM node:22-slim LABEL authors="Martin Berg Alstad" -COPY . . +COPY . ./app +WORKDIR ./app -RUN --mount=type=cache,id=npm,target=/store npm install --omit=dev --frozen-lockfile +ENV PNPM_HOME="/pnpm" +ENV PATH="$PNPM_HOME:$PATH" +RUN corepack enable pnpm +RUN corepack prepare pnpm@9.15.3 --activate +RUN npm i -g corepack@latest +RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --recursive --frozen-lockfile -ENTRYPOINT ["npm", "run", "start-prod"] \ No newline at end of file +ENTRYPOINT ["pnpm", "start-prod"] \ No newline at end of file diff --git a/package.json b/package.json index e236ef7..42a629e 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,6 @@ "name": "sparebank1_actual_budget_integration", "version": "1.0.0", "description": "", - "main": "index.js", "scripts": { "start": "dotenvx run --env-file=.env.local -- node --import=tsx ./src/main.ts | ./packages/common/node_modules/pino-pretty/bin.js", "start-prod": "node --import=tsx ./src/main.ts", diff --git a/packages/common/logger.ts b/packages/common/logger.ts index 3b38e60..664eb74 100644 --- a/packages/common/logger.ts +++ b/packages/common/logger.ts @@ -1,5 +1,5 @@ import pino from "pino" -import { LOG_LEVEL } from "@/../config.ts" +import { LOG_LEVEL } from "@/config.ts" /** * / Returns a logging instance with the default log-level "info" diff --git a/src/actual.ts b/src/actual.ts index 516fab9..8bb8a13 100644 --- a/src/actual.ts +++ b/src/actual.ts @@ -4,7 +4,7 @@ import { ACTUAL_PASSWORD, ACTUAL_SERVER_URL, ACTUAL_SYNC_ID, -} from "../config.ts" +} from "@/config.ts" import type { TransactionEntity } from "@actual-app/api/@types/loot-core/types/models" import { type UUID } from "node:crypto" import logger from "@common/logger.ts" diff --git a/src/bank/sparebank1.ts b/src/bank/sparebank1.ts index 79377bf..f7c01f6 100644 --- a/src/bank/sparebank1.ts +++ b/src/bank/sparebank1.ts @@ -2,7 +2,7 @@ import { BANK_INITIAL_REFRESH_TOKEN, BANK_OAUTH_CLIENT_ID, BANK_OAUTH_CLIENT_SECRET, -} from "@/../config.ts" +} from "@/config.ts" import logger from "@common/logger.ts" import dayjs, { type Dayjs } from "dayjs" import type { Database } from "better-sqlite3" diff --git a/config.ts b/src/config.ts similarity index 100% rename from config.ts rename to src/config.ts diff --git a/src/main.ts b/src/main.ts index ea5e4aa..a9a3a67 100644 --- a/src/main.ts +++ b/src/main.ts @@ -8,7 +8,7 @@ import { DB_FILENAME, TRANSACTION_RELATIVE_FROM_DATE, TRANSACTION_RELATIVE_TO_DATE, -} from "../config.ts" +} from "@/config.ts" import logger from "@common/logger.ts" import type { UUID } from "node:crypto" import { createDb } from "@/bank/db/queries.ts" diff --git a/src/mappings.ts b/src/mappings.ts index 9c15cd5..cab08c6 100644 --- a/src/mappings.ts +++ b/src/mappings.ts @@ -1,7 +1,7 @@ import type { UUID } from "node:crypto" import dayjs from "dayjs" import { type ActualTransaction } from "@/actual.ts" -import { ACTUAL_ACCOUNT_IDS, BANK_ACCOUNT_IDS } from "../config.ts" +import { ACTUAL_ACCOUNT_IDS, BANK_ACCOUNT_IDS } from "@/config.ts" import logger from "@common/logger.ts" import { toISODateString } from "@common/date.ts" import type { SB1Transaction } from "@sb1/types.ts" diff --git a/tsconfig.json b/tsconfig.json index 0fc3989..ad3d7f7 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,5 +1,5 @@ { - "include": ["./src/**/*.ts", "./tests/**/*.ts"], + "include": ["./src/**/*.ts", "./packages/**/*.ts", "./tests/**/*.ts"], "compilerOptions": { "target": "esnext", "module": "ESNext",