Compare commits

..

3 Commits

Author SHA1 Message Date
Daniel Bedeleanu
939ad8648d Build [v1.8.3] (Explicit directory creation in bundle) 2026-04-13 19:39:33 +03:00
Daniel Bedeleanu
6f6caf3c5a Build [v1.8.2] (Fix missing scripts in bundle) 2026-04-13 19:38:11 +03:00
Daniel Bedeleanu
5e648002f0 Build [v1.8.1] (Fix Docker Context) 2026-04-13 19:36:06 +03:00
6 changed files with 15 additions and 15 deletions

View File

@@ -146,5 +146,5 @@ For detailed technical documentation, see the [Project Architecture](../PROJECT_
---
**Version:** v1.8.0
**Version:** v1.8.3
**Last Updated:** 2026-04-13

View File

@@ -1,5 +1,5 @@
{
"version": "1.8.0",
"last_build": "2026-04-13-1925",
"version": "1.8.3",
"last_build": "2026-04-13-1941",
"codename": "ConfigSync"
}

View File

@@ -59,7 +59,7 @@
**LDAP config:** `config/ldap_config.json`
**Network config:** `config/network_config.env`
**Proxy config:** `config/Caddyfile`
**Production Bundle:** `aInventory-PROD-v1.6.0.zip` (BoxMaster Final)
**Production Bundle:** `aInventory-PROD-v1.8.0.zip` (ConfigSync Final)
> [!IMPORTANT]
> **Git Access Fix**: The `xcode-select` breakage is bypassed by using the direct binary path: `/Library/Developer/CommandLineTools/usr/bin/git` (stored in `.git_path`). **DO NOT change this path.** Operations now work correctly via this direct link.

View File

@@ -1,5 +1,3 @@
version: '3.8'
services:
backend:
build:
@@ -8,7 +6,7 @@ services:
networks:
- inventory_net
ports:
- "${BACKEND_PORT:-8000}:8000"
- ${BACKEND_PORT:-8000}:8000
env_file:
- ./config/network_config.env
volumes:
@@ -18,10 +16,9 @@ services:
environment:
- DATA_DIR=/app/data
- LOGS_DIR=/app/logs
# [M-01] CORS allowed origins — dynamically constructed from config
- ALLOWED_ORIGINS=http://localhost:${FRONTEND_PORT:-3001},https://localhost:${FRONTEND_SSL_PORT:-3003},http://${SERVER_IP:-localhost}:${FRONTEND_PORT:-3001},https://${SERVER_IP:-localhost}:${FRONTEND_SSL_PORT:-3003},https://localhost:${BACKEND_SSL_PORT:-3002},https://${SERVER_IP:-localhost}:${BACKEND_SSL_PORT:-3002}
# [C-01] JWT secret key — GENERATE A SECURE VALUE FOR PRODUCTION!
- JWT_SECRET_KEY=${JWT_SECRET_KEY:-change-me-in-production}
- JWT_SECRET_KEY=${JWT_SECRET_KEY:-change_me_in_production}
restart: unless-stopped
frontend:
@@ -31,7 +28,7 @@ services:
networks:
- inventory_net
ports:
- "${FRONTEND_PORT:-3000}:3000"
- ${FRONTEND_PORT:-3000}:3000
env_file:
- ./config/network_config.env
volumes:
@@ -45,8 +42,8 @@ services:
networks:
- inventory_net
ports:
- "${BACKEND_SSL_PORT:-3002}:${BACKEND_SSL_PORT:-3002}"
- "${FRONTEND_SSL_PORT:-3003}:${FRONTEND_SSL_PORT:-3003}"
- ${BACKEND_SSL_PORT:-3002}:${BACKEND_SSL_PORT:-3002}
- ${FRONTEND_SSL_PORT:-3003}:${FRONTEND_SSL_PORT:-3003}
env_file:
- ./config/network_config.env
volumes:

View File

@@ -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/"
# Orchestration, Config & Scripts
mkdir -p "$PROD_DIR/config" "$PROD_DIR/scripts"
cp docker-compose.yml "$PROD_DIR/"
rsync -a config/ "$PROD_DIR/config/"
rsync -a scripts/ "$PROD_DIR/scripts/"
cp start_server.sh "$PROD_DIR/"
cp run_standalone.sh "$PROD_DIR/"
cp install_service.sh "$PROD_DIR/"

View File

@@ -4,15 +4,16 @@ FROM node:20-alpine AS base
FROM base AS deps
RUN apk add --no-cache libc6-compat
WORKDIR /app
# We run this from the frontend folder context
COPY package.json package-lock.json* ./
# Context is root to allow access to VERSION.json
COPY frontend/package.json frontend/package-lock.json* ./
RUN npm ci
# Step 2: Build the source code
FROM base AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
COPY frontend .
COPY VERSION.json .
# Disable telemetry during build
ENV NEXT_TELEMETRY_DISABLED 1
RUN npm run build