- dev/betrieb/deploy.sh: Deploy nur per Tag, mit --seed (Seeder im Wartungsmodus) und --initial (Vorschau/Live einmalig an Ort und Stelle auf Git umstellen) - dev/betrieb/vorschau-auffrischen.sh: Live-DB und Live-Medien in die Vorschau (Generalprobe) - InteriorReleaseSeeder: alle Inhaltsschritte des Relaunchs in einem Lauf, idempotent; Displays, Playlists und Mediathek bleiben unberührt - DisplayInteriorBrandingSeeder überschreibt keinen inzwischen gepflegten Claim mehr - Monitoring: GlitchTip (Server + Browser), /health mit Token, Scheduler-Herzschlag, Alarme per Mail und ntfy, Version in about und /health - public/build versioniert; .gitignore: macOS-Muster Icon traf resources/views/flux/icon/ - Runbook: dev/betrieb/README.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
49 lines
1.6 KiB
JavaScript
49 lines
1.6 KiB
JavaScript
import { defineConfig } from "vite";
|
|
import laravel from "laravel-vite-plugin";
|
|
import tailwindcss from "@tailwindcss/vite";
|
|
|
|
// SSL-Konfiguration - für Entwicklung ohne echte Zertifikate
|
|
const httpsConfig =
|
|
process.env.NODE_ENV === "production"
|
|
? {
|
|
// In Produktion: echte Zertifikate verwenden
|
|
key: process.env.SSL_KEY_PATH,
|
|
cert: process.env.SSL_CERT_PATH,
|
|
}
|
|
: true; // Self-signed für Entwicklung
|
|
|
|
export default defineConfig({
|
|
plugins: [
|
|
laravel({
|
|
input: ["resources/css/portal.css", "resources/js/app.js", "resources/js/error-reporting.js"],
|
|
refresh: ["resources/views/portal/**/*.blade.php"],
|
|
}),
|
|
tailwindcss({
|
|
config: "./tailwind.portal.config.js",
|
|
}),
|
|
],
|
|
server: {
|
|
https: false, // Traefik übernimmt SSL, Vite läuft intern auf HTTP
|
|
cors: true,
|
|
host: "0.0.0.0",
|
|
port: 5174, // oder 5175
|
|
hmr: {
|
|
host: "assets.b2in.test", // oder assets-web.b2in.test
|
|
protocol: "wss", // Explizit wss für WebSocket Secure
|
|
// WICHTIG: Die 'port'-Angabe hier entfernen!
|
|
// Der Browser soll den Standard-Port (443) von Traefik nutzen.
|
|
},
|
|
// Das origin ist nicht mehr notwendig, da der HMR-Port wegfällt.
|
|
},
|
|
build: {
|
|
outDir: "public/build/portal",
|
|
assetsDir: "",
|
|
manifest: "manifest.json",
|
|
rollupOptions: {
|
|
external: [/^\/fonts\//],
|
|
output: {
|
|
manualChunks: undefined,
|
|
},
|
|
},
|
|
},
|
|
});
|