Runtime
Server deployment membutuhkan:
- PHP 8.1+ dan PHP-FPM.
- Composer.
- Node.js dan npm.
- MySQL serta MongoDB sesuai koneksi yang digunakan.
- Web server yang mengarahkan document root ke
public/. - Jika SSR aktif, service Inertia SSR yang menjalankan bundle hasil build.
Production workflow aktual
Workflow .github/workflows/deploy_production.yml berjalan pada push ke branch v3_ssr melalui self-hosted runner. Langkah utamanya:
php artisan optimize:clear
git fetch --all
composer install --no-dev --optimize-autoloader --ignore-platform-req=ext-mongodb
npm ci --legacy-peer-deps
npm run buildSetelah build, workflow menjalankan script permission server dan me-restart service inertia-ssr.
Staging workflow aktual
Workflow .github/workflows/deploy_staging.yml berjalan pada push ke branch staging. Alurnya sama secara umum:
php artisan optimize:clear
composer install --no-dev --optimize-autoloader --ignore-platform-req=ext-mongodb
npm ci --legacy-peer-deps
npm run buildWorkflow staging saat ini tidak menunjukkan langkah restart SSR. Pastikan service staging mengambil bundle baru jika SSR diaktifkan.
Konfigurasi web server
Document root harus menunjuk ke:
<project-root>/publicSemua request yang bukan file statis perlu diteruskan ke public/index.php. Jangan menaruh project root sebagai document root karena dapat membuka file konfigurasi dan source.
Checklist pascadeploy
-
APP_DEBUG=falsepada environment production. - Koneksi database utama, CRM, dan covendor telah diverifikasi sesuai kebutuhan.
- Asset client tersedia di
public/build. - Bundle SSR tersedia bila SSR aktif.
- Process SSR telah direstart setelah perubahan frontend SSR.
- Store published, product detail, cart, dan checkout dapat dibuka.
- Payment status proxy dapat mencapai service tujuan.
- Credential tidak berada di source atau log.