From 5637145864f7cc3c7f423273eee4fbe34e1e1703 Mon Sep 17 00:00:00 2001 From: MaxymBeregovoi <108676512+maksberegovoi@users.noreply.github.com> Date: Mon, 2 Mar 2026 07:29:28 +0200 Subject: [PATCH 1/7] feat: fix root package.json scripts --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index a7dfdbf..ec2b3ec 100644 --- a/package.json +++ b/package.json @@ -15,14 +15,14 @@ "format:check": "pnpm run --recursive format:check", "lint:frontend": "pnpm --filter @task-tracker/frontend lint", "lint:fsd:frontend": "pnpm --filter @task-tracker/frontend lint:fsd", - "typecheck:frontend": "pnpm --filter @task-tracker/frontend type-check", + "typecheck:frontend": "pnpm --filter @task-tracker/frontend typecheck", "build:frontend": "pnpm --filter @task-tracker/frontend build", "dev:backend": "pnpm --filter @task-tracker/backend start:dev", "start:backend": "pnpm --filter @task-tracker/backend start:prod", "build:backend": "pnpm --filter @task-tracker/backend build", "lint:backend": "pnpm --filter @task-tracker/backend lint", "test:backend:ci": "pnpm --filter @task-tracker/backend test:ci", - "typecheck:backend": "pnpm --filter @task-tracker/backend type-check", + "typecheck:backend": "pnpm --filter @task-tracker/backend typecheck", "prisma:generate:backend": "pnpm --filter @task-tracker/backend prisma:generate", "prisma:migrate:deploy:backend": "pnpm --filter @task-tracker/backend prisma:migrate:deploy" }, From b73addd87653de699034270e1d98cb4228365d31 Mon Sep 17 00:00:00 2001 From: MaxymBeregovoi <108676512+maksberegovoi@users.noreply.github.com> Date: Mon, 2 Mar 2026 07:33:14 +0200 Subject: [PATCH 2/7] feat: update pnpm version in workflow files --- .github/workflows/backend-ci.yml | 2 +- .github/workflows/frontend-ci.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backend-ci.yml b/.github/workflows/backend-ci.yml index 00aca52..7a1a407 100644 --- a/.github/workflows/backend-ci.yml +++ b/.github/workflows/backend-ci.yml @@ -37,7 +37,7 @@ jobs: - name: Setup pnpm uses: pnpm/action-setup@v3 with: - version: 9 + version: 10.29.3 - name: Setup Node uses: actions/setup-node@v4 diff --git a/.github/workflows/frontend-ci.yml b/.github/workflows/frontend-ci.yml index 005065f..1cabef0 100644 --- a/.github/workflows/frontend-ci.yml +++ b/.github/workflows/frontend-ci.yml @@ -15,7 +15,7 @@ jobs: - name: Setup pnpm uses: pnpm/action-setup@v3 with: - version: 9 + version: 10.29.3 - name: Setup Node uses: actions/setup-node@v4 From 4128ba5ae90ed9e6a4b30aa1c8439641e156f555 Mon Sep 17 00:00:00 2001 From: MaxymBeregovoi <108676512+maksberegovoi@users.noreply.github.com> Date: Mon, 2 Mar 2026 09:04:12 +0200 Subject: [PATCH 3/7] feat: combine ci workflows to one file --- .github/workflows/CI-workflow.yml | 110 ++++++++++++++++++++++++++++++ .github/workflows/backend-ci.yml | 70 ------------------- .github/workflows/frontend-ci.yml | 48 ------------- 3 files changed, 110 insertions(+), 118 deletions(-) create mode 100644 .github/workflows/CI-workflow.yml delete mode 100644 .github/workflows/backend-ci.yml delete mode 100644 .github/workflows/frontend-ci.yml diff --git a/.github/workflows/CI-workflow.yml b/.github/workflows/CI-workflow.yml new file mode 100644 index 0000000..d7a1eb1 --- /dev/null +++ b/.github/workflows/CI-workflow.yml @@ -0,0 +1,110 @@ +name: CI workflow + +on: + push: + branches: ['fix/CI-workflow'] + pull_request: + branches: ['dev', 'main'] + +jobs: + frontend: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup pnpm + uses: pnpm/action-setup@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 22 + cache: 'pnpm' + + - name: Install deps + run: pnpm install --frozen-lockfile + + - name: Lint + run: pnpm lint:frontend + + - name: Lint FSD + run: pnpm lint:fsd:frontend + + - name: Format + run: pnpm format:check + + - name: Typecheck + run: pnpm typecheck:frontend + + # - name: Unit tests + # run: pnpm test:frontend:ci + + - name: Build + run: pnpm build:frontend + + # - name: Build Storybook + # run: pnpm build-storybook + + backend: + runs-on: ubuntu-latest + + services: + postgres: + image: postgres:16 + env: + POSTGRES_DB: test + POSTGRES_USER: test + POSTGRES_PASSWORD: test + ports: + - 5432:5432 + options: >- + --health-cmd="pg_isready" + --health-interval=10s + --health-timeout=5s + --health-retries=5 + + env: + DATABASE_URL: postgresql://test:test@localhost:5432/test + PORT: 3000 + JWT_SECRET: test + JWT_EXPIRES_IN: 7d + NODE_ENV: test + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup pnpm + uses: pnpm/action-setup@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 222 + cache: 'pnpm' + + - name: Install deps + run: pnpm install --frozen-lockfile + + - name: Prisma generate + run: pnpm prisma:generate:backend + + - name: Apply migrations (test DB) + run: pnpm prisma:migrate:deploy:backend + + - name: Lint + run: pnpm lint:backend + + - name: Format + run: pnpm format:check + + - name: Typecheck + run: pnpm typecheck:backend + + - name: Unit tests + run: pnpm test:backend:ci + + - name: Build + run: pnpm build:backend diff --git a/.github/workflows/backend-ci.yml b/.github/workflows/backend-ci.yml deleted file mode 100644 index 7a1a407..0000000 --- a/.github/workflows/backend-ci.yml +++ /dev/null @@ -1,70 +0,0 @@ -name: Backend CI - -on: - pull_request: - branches: ['dev', 'main'] - -jobs: - backend: - runs-on: ubuntu-latest - - services: - postgres: - image: postgres:16 - env: - POSTGRES_DB: test - POSTGRES_USER: test - POSTGRES_PASSWORD: test - ports: - - 5432:5432 - options: >- - --health-cmd="pg_isready" - --health-interval=10s - --health-timeout=5s - --health-retries=5 - - env: - DATABASE_URL: postgresql://test:test@localhost:5432/test - PORT: 3000 - JWT_SECRET: test - JWT_EXPIRES_IN: 7d - NODE_ENV: test - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup pnpm - uses: pnpm/action-setup@v3 - with: - version: 10.29.3 - - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: 'pnpm' - - - name: Install deps - run: pnpm install --frozen-lockfile - - - name: Prisma generate - run: pnpm prisma:generate:backend - - - name: Apply migrations (test DB) - run: pnpm prisma:migrate:deploy:backend - - - name: Lint - run: pnpm lint:backend - - - name: Format - run: pnpm format:check - - - name: Typecheck - run: pnpm typecheck:backend - - - name: Unit tests - run: pnpm test:backend:ci - - - name: Build - run: pnpm build:backend diff --git a/.github/workflows/frontend-ci.yml b/.github/workflows/frontend-ci.yml deleted file mode 100644 index 1cabef0..0000000 --- a/.github/workflows/frontend-ci.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: Frontend CI - -on: - pull_request: - branches: ['dev', 'main'] - -jobs: - frontend: - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup pnpm - uses: pnpm/action-setup@v3 - with: - version: 10.29.3 - - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: 'pnpm' - - - name: Install deps - run: pnpm install --frozen-lockfile - - - name: Lint - run: pnpm lint:frontend - - - name: Lint FSD - run: pnpm lint:fsd:frontend - - - name: Format - run: pnpm format:check - - - name: Typecheck - run: pnpm typecheck:frontend - - # - name: Unit tests - # run: pnpm test:frontend:ci - - - name: Build - run: pnpm build:frontend - - # - name: Build Storybook - # run: pnpm build-storybook From e801ed62e5c4069de084107fe4207ffa6b142f0e Mon Sep 17 00:00:00 2001 From: MaxymBeregovoi <108676512+maksberegovoi@users.noreply.github.com> Date: Mon, 2 Mar 2026 09:06:10 +0200 Subject: [PATCH 4/7] fix node version --- .github/workflows/CI-workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/CI-workflow.yml b/.github/workflows/CI-workflow.yml index d7a1eb1..fa8e948 100644 --- a/.github/workflows/CI-workflow.yml +++ b/.github/workflows/CI-workflow.yml @@ -82,7 +82,7 @@ jobs: - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 222 + node-version: 22 cache: 'pnpm' - name: Install deps From 0e2be960e2d1ef2ff18e14ad98624dbde7256bd5 Mon Sep 17 00:00:00 2001 From: MaxymBeregovoi <108676512+maksberegovoi@users.noreply.github.com> Date: Mon, 2 Mar 2026 09:11:57 +0200 Subject: [PATCH 5/7] remove branch fix/CI-workflow from workflow --- .github/workflows/CI-workflow.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/CI-workflow.yml b/.github/workflows/CI-workflow.yml index fa8e948..d54507a 100644 --- a/.github/workflows/CI-workflow.yml +++ b/.github/workflows/CI-workflow.yml @@ -1,8 +1,6 @@ name: CI workflow on: - push: - branches: ['fix/CI-workflow'] pull_request: branches: ['dev', 'main'] From 7e5c02dd38f915a02511a11ac2f60d3d40d49c72 Mon Sep 17 00:00:00 2001 From: MaxymBeregovoi <108676512+maksberegovoi@users.noreply.github.com> Date: Tue, 3 Mar 2026 13:11:25 +0200 Subject: [PATCH 6/7] feat: resolve problems from review - add concurrency, paths-ignore - fix "format" scripts, - update pnpm/action-setup from v3 to v4 --- .github/workflows/CI-workflow.yml | 15 +++++++++++---- package.json | 4 ++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/.github/workflows/CI-workflow.yml b/.github/workflows/CI-workflow.yml index d54507a..9f3472d 100644 --- a/.github/workflows/CI-workflow.yml +++ b/.github/workflows/CI-workflow.yml @@ -3,6 +3,13 @@ name: CI workflow on: pull_request: branches: ['dev', 'main'] + paths-ignore: + - '*.md' + - 'docs/**' + +concurrency: + group: {{ github.workflow }}-{{ github.ref }} + cancel-in-progress: true jobs: frontend: @@ -13,7 +20,7 @@ jobs: uses: actions/checkout@v4 - name: Setup pnpm - uses: pnpm/action-setup@v3 + uses: pnpm/action-setup@v4 - name: Setup Node uses: actions/setup-node@v4 @@ -31,7 +38,7 @@ jobs: run: pnpm lint:fsd:frontend - name: Format - run: pnpm format:check + run: pnpm format:check:frontend - name: Typecheck run: pnpm typecheck:frontend @@ -75,7 +82,7 @@ jobs: uses: actions/checkout@v4 - name: Setup pnpm - uses: pnpm/action-setup@v3 + uses: pnpm/action-setup@v4 - name: Setup Node uses: actions/setup-node@v4 @@ -96,7 +103,7 @@ jobs: run: pnpm lint:backend - name: Format - run: pnpm format:check + run: pnpm format:check:backend - name: Typecheck run: pnpm typecheck:backend diff --git a/package.json b/package.json index ec2b3ec..b35c261 100644 --- a/package.json +++ b/package.json @@ -13,14 +13,18 @@ "lint:fix": "pnpm run --recursive lint:fix", "format": "pnpm run --recursive format", "format:check": "pnpm run --recursive format:check", + "lint:frontend": "pnpm --filter @task-tracker/frontend lint", + "format:check:frontend": "pnpm --filter @task-tracker/frontend format:check", "lint:fsd:frontend": "pnpm --filter @task-tracker/frontend lint:fsd", "typecheck:frontend": "pnpm --filter @task-tracker/frontend typecheck", "build:frontend": "pnpm --filter @task-tracker/frontend build", + "dev:backend": "pnpm --filter @task-tracker/backend start:dev", "start:backend": "pnpm --filter @task-tracker/backend start:prod", "build:backend": "pnpm --filter @task-tracker/backend build", "lint:backend": "pnpm --filter @task-tracker/backend lint", + "format:check:backend": "pnpm --filter @task-tracker/backend format:check", "test:backend:ci": "pnpm --filter @task-tracker/backend test:ci", "typecheck:backend": "pnpm --filter @task-tracker/backend typecheck", "prisma:generate:backend": "pnpm --filter @task-tracker/backend prisma:generate", From 066be38b477a881d33efb09a0605ff7094cb946b Mon Sep 17 00:00:00 2001 From: MaxymBeregovoi <108676512+maksberegovoi@users.noreply.github.com> Date: Tue, 3 Mar 2026 13:17:21 +0200 Subject: [PATCH 7/7] fix syntax error --- .github/workflows/CI-workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/CI-workflow.yml b/.github/workflows/CI-workflow.yml index 9f3472d..343a78c 100644 --- a/.github/workflows/CI-workflow.yml +++ b/.github/workflows/CI-workflow.yml @@ -8,7 +8,7 @@ on: - 'docs/**' concurrency: - group: {{ github.workflow }}-{{ github.ref }} + group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: