From 86f4ef90126bcc46e8c8235fbb877fc7420bd221 Mon Sep 17 00:00:00 2001 From: "CTO (LegalAI)" Date: Sun, 12 Apr 2026 20:54:01 +0000 Subject: [PATCH] feat: add auto-incrementing version number (0.9.0.X) in footer - Added version.json to track base version and build number - Updated Gitea Actions workflow to bump build number on each deploy - Footer now shows version number alongside commit hash - Version passed as build arg through Docker build pipeline Co-Authored-By: Paperclip --- .gitea/workflows/deploy.yml | 18 ++++++++++++++++-- Dockerfile | 2 ++ docker-compose.yml | 1 + next.config.ts | 1 + src/app/(dashboard)/layout.tsx | 2 +- version.json | 4 ++++ 6 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 version.json diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 3c661eb..005cc1f 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -14,10 +14,24 @@ jobs: cd /home/remmer/StageAI git pull origin master + - name: Bump version + run: | + cd /home/remmer/StageAI + BUILD=$(jq '.build' version.json) + NEW_BUILD=$((BUILD + 1)) + VERSION=$(jq -r '.version' version.json) + jq --arg b "$NEW_BUILD" '.build = ($b | tonumber)' version.json > version.tmp && mv version.tmp version.json + echo "APP_VERSION=${VERSION}.${NEW_BUILD}" >> $GITHUB_ENV + git config user.name "Gitea Actions" + git config user.email "actions@gitea.local" + git add version.json + git commit -m "Bump build to ${VERSION}.${NEW_BUILD} [skip ci]" + git push origin master + - name: Build and deploy run: | cd /home/remmer/StageAI export COMMIT_HASH=$(git rev-parse --short HEAD) - docker compose build app + docker compose build --build-arg COMMIT_HASH=$COMMIT_HASH --build-arg APP_VERSION=${{ env.APP_VERSION }} app docker compose up -d app - echo "Deployed commit: $COMMIT_HASH" + echo "Deployed version: ${{ env.APP_VERSION }} (commit: $COMMIT_HASH)" diff --git a/Dockerfile b/Dockerfile index 0b17350..f808bd0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,7 +8,9 @@ RUN npm ci FROM base AS builder WORKDIR /app ARG COMMIT_HASH=dev +ARG APP_VERSION=0.9.0.1 ENV NEXT_PUBLIC_BUILD_HASH=$COMMIT_HASH +ENV NEXT_PUBLIC_APP_VERSION=$APP_VERSION COPY --from=deps /app/node_modules ./node_modules COPY . . RUN npm run build diff --git a/docker-compose.yml b/docker-compose.yml index 6863a9a..3c72b9d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,6 +4,7 @@ services: context: . args: COMMIT_HASH: ${COMMIT_HASH:-dev} + APP_VERSION: ${APP_VERSION:-0.9.0.1} ports: - "3002:3000" environment: diff --git a/next.config.ts b/next.config.ts index eaf1744..e9d89b5 100644 --- a/next.config.ts +++ b/next.config.ts @@ -14,6 +14,7 @@ const nextConfig: NextConfig = { serverExternalPackages: ["pdfjs-dist", "drizzle-orm", "pg"], env: { NEXT_PUBLIC_BUILD_HASH: commitHash, + NEXT_PUBLIC_APP_VERSION: process.env.NEXT_PUBLIC_APP_VERSION || "0.9.0.1", }, }; diff --git a/src/app/(dashboard)/layout.tsx b/src/app/(dashboard)/layout.tsx index 96a5363..0ed09e3 100644 --- a/src/app/(dashboard)/layout.tsx +++ b/src/app/(dashboard)/layout.tsx @@ -23,7 +23,7 @@ export default async function DashboardLayout({ {children} diff --git a/version.json b/version.json new file mode 100644 index 0000000..b7947ff --- /dev/null +++ b/version.json @@ -0,0 +1,4 @@ +{ + "version": "0.9.0", + "build": 1 +}