From 2c0eba4130b72ce68bd5841ccf3e8026fb2f2ac0 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Tue, 10 Mar 2026 14:20:40 -0400 Subject: [PATCH] DevOps: add svelte-kit sync step to Dockerfile before build Fixes a build warning about missing .svelte-kit/tsconfig.json that appears when building inside Docker. Running npx svelte-kit sync pre-generates the required SvelteKit scaffolding before the main build step. Also update README title to reflect Svelte v5 and trim a trailing whitespace in the environment handling section. --- Dockerfile | 4 ++++ README.md | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 849efd71..87e2e522 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,6 +16,10 @@ COPY . . ARG BUILD_MODE=staging ENV NODE_ENV=production +# Sync the SvelteKit project to generate ./.svelte-kit/tsconfig.json +# and other required files, which avoids the build warning. +RUN npx svelte-kit sync + # Perform the build based on the BUILD_MODE argument. # This runs the existing scripts in package.json, which already # handle copying the correct .env file to .env.production for Vite. diff --git a/README.md b/README.md index f7804bba..01537f5d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# One Sky IT's Aether App - SvelteKit v2 +# One Sky IT's Aether App - SvelteKit v2 with Svelte v5 This uses SvelteKit version 2.x with Svelte version 5.x, DexieJS 4.x, TailwindCSS 4.1, and Skeleton. @@ -145,7 +145,7 @@ npm run deploy:prod - **Unified Orchestration**: All services (API, UI, Redis) are managed via `~/OSIT_dev/aether_container_env/docker-compose.yml`. - **Dockerfile**: Uses a multi-stage build. Stage 1 (builder) installs dependencies and builds the app using the `BUILD_MODE` argument passed from Docker Compose. Stage 2 (runtime) creates the final lightweight image. -- **Environment Handling**: +- **Environment Handling**: - `PUBLIC_` variables are baked into the image during the build step. - Private runtime variables are passed via the orchestration's `.env` file. - **Networking**: The frontend communicates with the backend via the high-speed internal Docker network (`http://ae_api:5005`).