Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
55e3cf5042 | ||
|
|
c874d27d64 | ||
|
|
939ad8648d | ||
|
|
6f6caf3c5a |
@@ -146,5 +146,5 @@ For detailed technical documentation, see the [Project Architecture](../PROJECT_
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
**Version:** v1.8.1
|
**Version:** v1.8.4
|
||||||
**Last Updated:** 2026-04-13
|
**Last Updated:** 2026-04-13
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "1.8.1",
|
|
||||||
"last_build": "2026-04-13-1936",
|
|
||||||
"codename": "ConfigSync"
|
|
||||||
}
|
|
||||||
@@ -23,8 +23,7 @@ services:
|
|||||||
|
|
||||||
frontend:
|
frontend:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: ./frontend
|
||||||
dockerfile: frontend/Dockerfile
|
|
||||||
networks:
|
networks:
|
||||||
- inventory_net
|
- inventory_net
|
||||||
ports:
|
ports:
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
|
|
||||||
echo "📦 Preparing TFM aInventory Production Bundle..."
|
echo "📦 Preparing TFM aInventory Production Bundle..."
|
||||||
|
|
||||||
# Extract version from VERSION.json using grep to avoid macOS python/xcode stubs
|
# Extract version from frontend/VERSION.json
|
||||||
VERSION=$(grep '"version"' VERSION.json | head -n 1 | awk -F '"' '{print $4}')
|
VERSION=$(grep '"version"' frontend/VERSION.json | head -n 1 | awk -F '"' '{print $4}')
|
||||||
PROD_DIR="aInventory-PROD-v${VERSION}"
|
PROD_DIR="aInventory-PROD-v${VERSION}"
|
||||||
|
|
||||||
# Clean previous run if it exists
|
# Clean previous run if it exists
|
||||||
@@ -19,8 +19,10 @@ rsync -a --exclude 'node_modules' --exclude '.next' frontend/ "$PROD_DIR/fronten
|
|||||||
rsync -a --exclude '__pycache__' --exclude '.pytest_cache' --exclude '.venv' --exclude 'tests' backend/ "$PROD_DIR/backend/"
|
rsync -a --exclude '__pycache__' --exclude '.pytest_cache' --exclude '.venv' --exclude 'tests' backend/ "$PROD_DIR/backend/"
|
||||||
|
|
||||||
# Orchestration, Config & Scripts
|
# Orchestration, Config & Scripts
|
||||||
|
mkdir -p "$PROD_DIR/config" "$PROD_DIR/scripts"
|
||||||
cp docker-compose.yml "$PROD_DIR/"
|
cp docker-compose.yml "$PROD_DIR/"
|
||||||
rsync -a config/ "$PROD_DIR/config/"
|
rsync -a config/ "$PROD_DIR/config/"
|
||||||
|
rsync -a scripts/ "$PROD_DIR/scripts/"
|
||||||
cp start_server.sh "$PROD_DIR/"
|
cp start_server.sh "$PROD_DIR/"
|
||||||
cp run_standalone.sh "$PROD_DIR/"
|
cp run_standalone.sh "$PROD_DIR/"
|
||||||
cp install_service.sh "$PROD_DIR/"
|
cp install_service.sh "$PROD_DIR/"
|
||||||
@@ -28,7 +30,8 @@ cp inventory.service.template "$PROD_DIR/"
|
|||||||
cp USER_GUIDE.md "$PROD_DIR/"
|
cp USER_GUIDE.md "$PROD_DIR/"
|
||||||
cp README.md "$PROD_DIR/INSTALLATION_GUIDE.md"
|
cp README.md "$PROD_DIR/INSTALLATION_GUIDE.md"
|
||||||
cp .git_path "$PROD_DIR/" 2>/dev/null || true
|
cp .git_path "$PROD_DIR/" 2>/dev/null || true
|
||||||
cp VERSION.json "$PROD_DIR/"
|
cp frontend/VERSION.json "$PROD_DIR/"
|
||||||
|
cp frontend/VERSION.json "$PROD_DIR/frontend/"
|
||||||
|
|
||||||
# Setup persistent volume skeleton
|
# Setup persistent volume skeleton
|
||||||
mkdir -p "$PROD_DIR/data"
|
mkdir -p "$PROD_DIR/data"
|
||||||
|
|||||||
@@ -4,16 +4,15 @@ FROM node:20-alpine AS base
|
|||||||
FROM base AS deps
|
FROM base AS deps
|
||||||
RUN apk add --no-cache libc6-compat
|
RUN apk add --no-cache libc6-compat
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
# Context is root to allow access to VERSION.json
|
# We run this from the frontend folder context
|
||||||
COPY frontend/package.json frontend/package-lock.json* ./
|
COPY package.json package-lock.json* ./
|
||||||
RUN npm ci
|
RUN npm ci
|
||||||
|
|
||||||
# Step 2: Build the source code
|
# Step 2: Build the source code
|
||||||
FROM base AS builder
|
FROM base AS builder
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=deps /app/node_modules ./node_modules
|
COPY --from=deps /app/node_modules ./node_modules
|
||||||
COPY frontend .
|
COPY . .
|
||||||
COPY VERSION.json .
|
|
||||||
# Disable telemetry during build
|
# Disable telemetry during build
|
||||||
ENV NEXT_TELEMETRY_DISABLED 1
|
ENV NEXT_TELEMETRY_DISABLED 1
|
||||||
RUN npm run build
|
RUN npm run build
|
||||||
|
|||||||
5
frontend/VERSION.json
Normal file
5
frontend/VERSION.json
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"version": "1.8.5",
|
||||||
|
"last_build": "2026-04-13-1951",
|
||||||
|
"codename": "ConfigSync"
|
||||||
|
}
|
||||||
@@ -48,7 +48,7 @@ import { generateBarcode128, getQRCodeURL } from '@/lib/labels';
|
|||||||
import { clsx, type ClassValue } from 'clsx';
|
import { clsx, type ClassValue } from 'clsx';
|
||||||
import { twMerge } from 'tailwind-merge';
|
import { twMerge } from 'tailwind-merge';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import versionData from '../../VERSION.json';
|
import versionData from '../VERSION.json';
|
||||||
|
|
||||||
interface User {
|
interface User {
|
||||||
id: number;
|
id: number;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import os
|
|||||||
import sys
|
import sys
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
VERSION_FILE = 'VERSION.json'
|
VERSION_FILE = 'frontend/VERSION.json'
|
||||||
GIT_PATH_FILE = '.git_path'
|
GIT_PATH_FILE = '.git_path'
|
||||||
|
|
||||||
def get_git_path():
|
def get_git_path():
|
||||||
|
|||||||
Reference in New Issue
Block a user