chore(release): 2.2.0 #115
@@ -28,9 +28,8 @@ jobs:
|
||||
docker version
|
||||
docker buildx version
|
||||
- run: npm ci
|
||||
- run: npx --no-install prisma generate
|
||||
- run: npm run verify
|
||||
- run: npm run test:e2e
|
||||
- run: node test/sqlite.cjs --all
|
||||
- name: Login with dedicated Nexus writer
|
||||
env:
|
||||
REGISTRY_USERNAME: ${{ secrets.NEXUS_USERNAME }}
|
||||
|
||||
@@ -83,12 +83,10 @@ jobs:
|
||||
with:
|
||||
node-version-file: .nvmrc
|
||||
- run: npm ci
|
||||
- name: Generate Prisma client before typechecks
|
||||
run: npx --no-install prisma generate
|
||||
- name: Run all backend gates
|
||||
run: npm run verify
|
||||
- name: Run isolated SQLite and runtime OpenAPI suites
|
||||
run: npm run test:e2e
|
||||
run: node test/sqlite.cjs --all
|
||||
- name: Analyze develop with SonarQube
|
||||
if: gitea.event_name == 'push' && gitea.ref == 'refs/heads/develop'
|
||||
# v2.3.0: same Docker-based scanner used for SonarQube 9.9.
|
||||
|
||||
+2
-1
@@ -19,7 +19,8 @@ EXPOSE 3000
|
||||
CMD ["npm", "run", "start:dev"]
|
||||
|
||||
FROM dependencies AS build
|
||||
RUN npm run build && npm prune --omit=dev --omit=optional
|
||||
# The client is already generated at the shared dependencies stage (same revision).
|
||||
RUN npx --no-install nest build && npm prune --omit=dev --omit=optional
|
||||
|
||||
FROM base AS production
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates=20250419~deb12u1 openssl=3.0.20-1~deb12u2 && rm -rf /var/lib/apt/lists/* \
|
||||
|
||||
@@ -14,6 +14,7 @@ cp .env.example .env
|
||||
nvm use --silent
|
||||
npm ci
|
||||
npx prisma migrate deploy
|
||||
npx prisma generate
|
||||
npm run start:dev
|
||||
```
|
||||
|
||||
@@ -60,7 +61,7 @@ Compose topology принадлежит workspace, эксплуатационн
|
||||
npm run verify
|
||||
```
|
||||
|
||||
Он запускает zero-warning lint,
|
||||
Он запускает генерацию Prisma client, zero-warning lint,
|
||||
application/test typechecks, Jest с покрытием и build. `npm run lint:fix` — отдельная
|
||||
записывающая команда. `npm run test:cov` также доступен отдельно; общего числового
|
||||
threshold нет. `npm run test:e2e` отдельно проверяет функциональные HTTP suites
|
||||
@@ -84,8 +85,9 @@ TypeScript 7 требует поддержки со стороны `ts-jest` и
|
||||
и `verify` на metadata-only событии не запускаются.
|
||||
Новый запуск отменяет устаревший для того же PR/ветки и типа события
|
||||
(требуется Gitea 1.26+). Ежедневно в 05:47 UTC выполняется только `security`.
|
||||
Job `verify` запускает `npm ci`, генерацию Prisma client,
|
||||
`npm run verify` и функциональный `npm run test:e2e`. Используется только checkout
|
||||
Job `verify` запускает `npm ci` и `npm run verify` (генерация Prisma client
|
||||
внутри gate, один Nest build), затем функциональный `node test/sqlite.cjs --all`
|
||||
на уже собранных артефактах. Используется только checkout
|
||||
backend и его зависимости; OpenAPI генерируется во время проверки, SHA записывается в лог.
|
||||
Успешный unit gate не заменяет SQLite/e2e; ошибка любой suite завершает job с FAIL.
|
||||
|
||||
@@ -253,7 +255,10 @@ breaking changes относительно предыдущего выпуска.
|
||||
проверяет уникальность DB, сохранность вымышленного внешнего файла, отказ migration
|
||||
и SIGINT/SIGTERM cleanup. Полный e2e набор остаётся в `npm run test:e2e`.
|
||||
Логи остаются в каталоге из вывода. Для одной suite:
|
||||
`node test/sqlite.cjs app.e2e-spec.ts`.
|
||||
`node test/sqlite.cjs app.e2e-spec.ts`. Crash-регрессия в
|
||||
`tbank-operations-sync.e2e-spec.ts` загружает классы из `dist/`, поэтому перед
|
||||
адресным запуском этой suite выполните `npm run build`, иначе child/dist может
|
||||
расходиться с parent/src.
|
||||
|
||||
| Риск | Проверка реальной DB |
|
||||
| --- | --- |
|
||||
|
||||
+2
-2
@@ -14,7 +14,7 @@
|
||||
"format": "npm run lint:fix",
|
||||
"start": "nest start",
|
||||
"start:dev": "NODE_ENV=development nest start --watch --path tsconfig.dev.json",
|
||||
"start:debug": "nest start --debug --watch --path tsconfig.dev.json",
|
||||
"start:debug": "NODE_ENV=development nest start --debug --watch --path tsconfig.dev.json",
|
||||
"start:prod": "node dist/src/main.js",
|
||||
"lint": "npm run lint:check",
|
||||
"lint:check": "eslint . --max-warnings=0",
|
||||
@@ -31,7 +31,7 @@
|
||||
"test:container": "node test/container-smoke.cjs",
|
||||
"test:durability": "node test/bank-cards-durability.cjs",
|
||||
"test:openapi-contract": "npm run build && node test/sqlite.cjs openapi-contract.e2e-spec.ts",
|
||||
"verify": "npm run lint && npm run test:lint && npm run typecheck:app && npm run typecheck:test && npm run test:cov -- --runInBand && npm run build",
|
||||
"verify": "prisma generate && npm run lint && npm run test:lint && npm run typecheck:app && npm run typecheck:test && npm run test:cov -- --runInBand && nest build",
|
||||
"release:preview": "release-it --dry-run --ci",
|
||||
"release:prepare": "release-it --ci",
|
||||
"commitlint": "commitlint",
|
||||
|
||||
Reference in New Issue
Block a user