added Windows batch script for build /dist for distribution of project to server
This commit is contained in:
@ -100,3 +100,66 @@ Layout:
|
||||
|
||||
Výsledok:
|
||||
Čistý, konzistentný, moderný vzhľad bez prehnaných farieb.
|
||||
|
||||
|
||||
----- 2026-02-14 13:35:31 -----------------------------------------------------
|
||||
V koreňovom adresári projektu vytvor Windows batch skript build.bat.
|
||||
|
||||
Štruktúra projektu:
|
||||
- frontend/ (Vue 3 + Vite) -> build do frontend/dist
|
||||
- backend/ (PHP) -> web root je backend/public a PHP súbory v public používajú relatívne cesty typu ../src/Init.php
|
||||
=> Musíme zachovať štruktúru, aby v dist platilo: dist/public/.. = dist/
|
||||
|
||||
Cieľ:
|
||||
- v koreňi vytvoriť root/dist tak, aby som na serveri nastavil DocumentRoot na dist/public
|
||||
- relatívne cesty v PHP z dist/public na dist/src musia fungovať (napr. dist/public/index.php -> ../src/Init.php)
|
||||
- frontend (Vite) nasadiť ako statické súbory do dist/public/app (aby nekolidoval s backend/public/index.php)
|
||||
|
||||
Výsledná štruktúra dist:
|
||||
- dist/public/ (WEB ROOT) = kópia backend/public
|
||||
- dist/src/ = kópia backend/src
|
||||
- dist/vendor/ = kópia backend/vendor (ak existuje)
|
||||
- dist/config/ = kópia backend/config (ak existuje)
|
||||
- dist/… = ostatné potrebné backend súbory/adresáre z backend/ (mimo public)
|
||||
- dist/public/app/ = Vite build (obsah frontend/dist)
|
||||
|
||||
Požiadavky na build.bat:
|
||||
|
||||
1) Vyčistenie:
|
||||
- ak existuje root/dist, zmaž ho celý
|
||||
- vytvor root/dist
|
||||
|
||||
2) Frontend build (nepoužívaj npm ci):
|
||||
- cd frontend
|
||||
- spusti "npm install"
|
||||
- spusti "npm run build"
|
||||
- ak build zlyhá, ukonči skript s exit code 1
|
||||
- vráť sa do root
|
||||
|
||||
3) Kopírovanie backend do dist:
|
||||
- skopíruj backend/public -> dist/public
|
||||
- skopíruj všetko potrebné z backend/ do dist/ TAK, aby platili relatívne cesty z dist/public na dist/src atď.
|
||||
Konkrétne:
|
||||
- kopíruj backend/src -> dist/src (ak existuje)
|
||||
- kopíruj backend/vendor -> dist/vendor (ak existuje)
|
||||
- kopíruj ďalšie bežné backend adresáre (napr. config, templates, storage…) do dist/ na rovnakú úroveň ako public
|
||||
- NEkopíruj backend/public druhýkrát mimo dist/public
|
||||
- NEkopíruj: .git, .vscode, tests, node_modules, frontend, dist
|
||||
|
||||
4) Skopírovanie Vite buildu do dist/public:
|
||||
- vytvor dist/public
|
||||
- skopíruj obsah frontend/dist -> dist/public
|
||||
|
||||
5) .env:
|
||||
- ak existuje backend/.env.production, skopíruj ho do dist/.env
|
||||
- inak nič
|
||||
|
||||
6) Robustnosť:
|
||||
- použi robocopy na kopírovanie (rýchle a s exclude)
|
||||
- kontroluj ERRORLEVEL po každom kritickom kroku a pri chybe ukonči skript s exit code 1
|
||||
- používaj echo logy (kroky + DONE)
|
||||
|
||||
7) Výstup:
|
||||
- na konci vypíš, že DocumentRoot má byť nastavený na dist/public a frontend je v dist/public
|
||||
|
||||
Dodaj kompletný obsah súboru build.bat.
|
||||
|
||||
Reference in New Issue
Block a user