build: migrate yarn to pnpm and restrict engine to node@^20.0.0

This commit is contained in:
fallenbagel
2024-06-23 22:47:34 +05:00
parent fac81f75c9
commit 99ee19c714
7 changed files with 17673 additions and 14772 deletions

View File

@@ -17,16 +17,18 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Pnpm Setup
uses: pnpm/action-setup@v4
- name: Install dependencies
env:
HUSKY: 0
run: yarn
run: pnpm install
- name: Lint
run: yarn lint
run: pnpm lint
- name: Formatting
run: yarn format:check
run: pnpm format:check
- name: Build
run: yarn build
run: pnpm build
build_and_push:
name: Build & Publish Docker Images

View File

@@ -14,11 +14,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Pnpm Setup
uses: pnpm/aciton-setup@v4
- name: Cypress run
uses: cypress-io/github-action@v6
with:
build: yarn cypress:build
start: yarn start
build: pnpm cypress:build
start: pnpm start
wait-on: 'http://localhost:5055'
record: true
env:

View File

@@ -26,8 +26,10 @@ jobs:
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
- name: Pnpm Setup
uses: pnpm/action-setup@v4
- name: Install dependencies
run: yarn
run: pnpm install
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}

1
.npmrc Normal file
View File

@@ -0,0 +1 @@
engine-strict=true

View File

@@ -3,10 +3,11 @@
"version": "0.1.0",
"private": true,
"scripts": {
"preinstall": "npx only-allow pnpm",
"dev": "nodemon -e ts --watch server --watch overseerr-api.yml -e .json,.ts,.yml -x ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/index.ts",
"build:server": "tsc --project server/tsconfig.json && copyfiles -u 2 server/templates/**/*.{html,pug} dist/templates && tsc-alias -p server/tsconfig.json",
"build:next": "next build",
"build": "yarn build:next && yarn build:server",
"build": "pnpm build:next && pnpm build:server",
"lint": "eslint \"./server/**/*.{ts,tsx}\" \"./src/**/*.{ts,tsx}\" --cache",
"lintfix": "eslint \"./server/**/*.{ts,tsx}\" \"./src/**/*.{ts,tsx}\" --fix",
"start": "NODE_ENV=production node dist/index.js",
@@ -16,13 +17,13 @@
"migration:run": "ts-node -r tsconfig-paths/register --project server/tsconfig.json ./node_modules/typeorm/cli.js migration:run -d server/datasource.ts",
"format": "prettier --loglevel warn --write --cache .",
"format:check": "prettier --check --cache .",
"typecheck": "yarn typecheck:server && yarn typecheck:client",
"typecheck": "pnpm typecheck:server && pnpm typecheck:client",
"typecheck:server": "tsc --project server/tsconfig.json --noEmit",
"typecheck:client": "tsc --noEmit",
"prepare": "husky install",
"cypress:open": "cypress open",
"cypress:prepare": "ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/scripts/prepareTestDb.ts",
"cypress:build": "yarn build && yarn cypress:prepare"
"cypress:build": "pnpm build && pnpm cypress:prepare"
},
"repository": {
"type": "git",
@@ -92,7 +93,7 @@
"sharp": "^0.33.4",
"sqlite3": "5.1.4",
"swagger-ui-express": "4.6.2",
"swr": "2.0.4",
"swr": "2.2.5",
"typeorm": "0.3.12",
"web-push": "3.5.0",
"winston": "3.8.2",
@@ -165,7 +166,10 @@
"tsconfig-paths": "4.1.2",
"typescript": "4.9.5"
},
"resolutions": {
"engines": {
"node": "^20.0.0"
},
"overrides": {
"sqlite3/node-gyp": "8.4.1",
"@types/express-session": "1.17.6"
},

17650
pnpm-lock.yaml generated Normal file

File diff suppressed because it is too large Load Diff

14760
yarn.lock

File diff suppressed because it is too large Load Diff