Commit Graph
17 Commits
Author SHA1 Message Date
SluijsensandClaude Sonnet 5 b5e8ae1820 Voeg productie-nginx-voorbeeldconfiguratie toe voor de reverse-proxy-Pi
Continuous Integration / config (pull_request) Successful in 10s
Continuous Integration / prepare (pull_request) Successful in 1m15s
Continuous Integration / build-production (pull_request) Skipped
Continuous Integration / build (pull_request) Successful in 1m57s
Continuous Integration / test (pull_request) Successful in 1m51s
Continuous Integration / deploy-test (pull_request) Skipped
Continuous Integration / deploy-production (pull_request) Skipped
production-nginx.conf.example (vóór certbot) en
production-nginx.conf.post-certbot.example (referentie, na certbot) dekken
alléén de react-frontend-site op slpsoftware.nl/www.slpsoftware.nl; de
mail/iRedAdmin-proxying die op de daadwerkelijke productieserver ook op dit
domein draait valt buiten de scope van deze feature en is bewust
weggelaten. Bevat de acme-challenge location in het 443-blok (niet het
poort-80-blok) en de sentry-tunnel-proxy, analoog aan de testomgeving-
configuratie. Documentatie in deployment-plan.md en
deployment-instructions.md bijgewerkt met productie-nginx-setupstappen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-27 13:11:47 +02:00
SluijsensandClaude Sonnet 5 3af15159fe Consistente _TEST/_PRODUCTION postfix voor omgevingsspecifieke Gitea variables
Continuous Integration / config (pull_request) Successful in 10s
Continuous Integration / prepare (pull_request) Successful in 1m14s
Continuous Integration / build-production (pull_request) Skipped
Continuous Integration / build (pull_request) Successful in 1m56s
Continuous Integration / test (pull_request) Successful in 1m48s
Continuous Integration / deploy-test (pull_request) Skipped
Continuous Integration / deploy-production (pull_request) Skipped
Hernoemt de Gitea-variable achter VITE_UMAMI_WEBSITE_ID naar
VITE_UMAMI_WEBSITE_ID_TEST, zodat deze consistent is met
VITE_UMAMI_WEBSITE_ID_PRODUCTION en DEPLOY_PATH_TEST/DEPLOY_PATH_PRODUCTION.
De Vite build-time envvar-naam die de app zelf verwacht
(VITE_UMAMI_WEBSITE_ID) verandert niet, alleen de naam van de Gitea
repository variable erachter. Bewust gedeelde variabelen (VITE_UMAMI_SCRIPT_URL,
VITE_SENTRY_DSN, PI_MAIN_* secrets) krijgen geen postfix, want die zijn
geen omgevingsspecifieke waarden. Documentatie in umami-setup.md,
deployment-instructions.md en monitoring-plan.md bijgewerkt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-27 12:16:10 +02:00
SluijsensandClaude Sonnet 5 4bddcbbc50 Splits Umami website-ID per omgeving in productie-build (was per ongeluk gedeeld)
build-production hergebruikte vars.VITE_UMAMI_WEBSITE_ID van de testbuild,
maar Umami-website-ID's horen bij één specifieke domeinentry in het
dashboard. Zonder deze fix zou productieverkeer in de teststatistieken
terechtkomen. Introduceert VITE_UMAMI_WEBSITE_ID_PRODUCTION als losse Gitea
variable, en documenteert dat er twee aparte Umami-website-entries nodig
zijn (test.slpsoftware.nl / slpsoftware.nl). VITE_UMAMI_SCRIPT_URL en
VITE_SENTRY_DSN blijven bewust gedeeld tussen omgevingen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-27 12:12:13 +02:00
SluijsensandClaude Sonnet 5 a208aebae0 Automatiseer productie-deploy als opt-in stap naast de bestaande testdeploy
Voegt build-production en deploy-production jobs toe aan
continuous_integration.yaml, alleen actief bij een handmatige
workflow_dispatch-run met het deploy_production-vinkje aangevinkt (nooit
automatisch bij een push naar master). Een aparte build-production job is
nodig omdat VITE_APP_ENV een build-time Vite-variabele is: dezelfde bundel
kan niet zowel als test als production getagd zijn in Sentry/analytics.
Uploadpad komt uit de nieuwe Gitea-variable DEPLOY_PATH_PRODUCTION, analoog
aan DEPLOY_PATH_TEST. Documentatie en production-readiness-checklist
bijgewerkt om dit open item als opgelost te markeren.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-27 12:05:19 +02:00
SluijsensandClaude Sonnet 5 78f68d52f7 Maak DEPLOY_PATH configureerbaar via Gitea Actions variable i.p.v. hardcoded
Continuous Integration / config (pull_request) Successful in 10s
Continuous Integration / prepare (pull_request) Successful in 1m18s
Continuous Integration / build (pull_request) Successful in 1m55s
Continuous Integration / test (pull_request) Successful in 1m50s
Continuous Integration / deploy-test (pull_request) Skipped
Vervangt het hardcoded testpad in continuous_integration.yaml door de
Gitea repository variable DEPLOY_PATH_TEST, zodat het uploadpad aan te
passen is zonder de workflow zelf te wijzigen. Documentatie bijgewerkt
met de vereiste eenmalige Gitea-variable-setup.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-27 11:59:16 +02:00
Sluijsens d71d0636c0 Split nginx voorbeeldconfigs in pre- en post-certbot varianten, plus access/error logs
Continuous Integration / config (pull_request) Successful in 10s
Continuous Integration / prepare (pull_request) Successful in 1m13s
Continuous Integration / build (pull_request) Successful in 2m2s
Continuous Integration / test (pull_request) Successful in 1m51s
Continuous Integration / deploy-test (pull_request) Skipped
De reverse-proxy en analytics nginx-configs toonden al de door certbot beheerde
eindstaat (met SSL-directives), terwijl je die juist nodig hebt vóórdat certbot
draait. Nu is het .example-bestand de kale HTTP-versie om te kopiëren, met een
apart .post-certbot.example ter referentie voor de staat erna. Alle configs
(inclusief webserver-nginx.conf.example) hebben nu ook expliciete error_log/
access_log directives.
2026-07-25 23:45:34 +02:00
SluijsensandJunie 11b77a6994 fix: change Umami external port from 3000 to 3001 to avoid conflict with Gitea
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-25 22:53:34 +02:00
Sluijsens 844a470c18 Merge branch 'master' into feature/analytics_uptime_dashboard
# Conflicts:
#	.env.example
#	aidlc-docs/features/react-frontend/aidlc-state.md
#	aidlc-docs/features/react-frontend/audit.md
#	aidlc-docs/features/react-frontend/operations/monitoring/monitoring-plan.md
#	aidlc-docs/features/react-frontend/operations/monitoring/monitoring-setup.md
#	aidlc-docs/features/react-frontend/operations/production-readiness-checklist.md
#	src/components/RootLayout.tsx
#	src/vite-env.d.ts
2026-07-25 20:14:16 +02:00
SluijsensandJunie 08b489e305 Voeg self-hosted Umami analytics + UptimeRobot uptime dashboard toe
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-25 19:59:40 +02:00
SluijsensandJunie f650c01c3e Add Sentry tunnel to bypass ad-blocker on test environment
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-25 15:40:14 +02:00
SluijsensandJunie 7e53d4d7e2 Verduidelijk pad-verschil tussen deploy_path en nginx root in documentatie
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-25 13:09:38 +02:00
SluijsensandJunie 7e3a0c5490 docs: restore push trigger to branches: [master] and document PR-trigger investigation
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-24 16:36:45 +02:00
SluijsensandJunie f47aed55c7 Centralize deploy_path, environment and artifact name/path as workflow variables
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-24 16:24:20 +02:00
SluijsensandJunie 3e537162c0 Rename PI_TEST_* secrets to PI_MAIN_* and centralize adjustable workflow values
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-24 16:18:46 +02:00
SluijsensandJunie fd31f02091 Fix webserver Pi port to 80 in nginx example configs
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-24 15:56:03 +02:00
SluijsensandJunie 1ffe884eba Add automated test-environment deploy via SCP with nginx reverse proxy, domain names and SSL (certbot) setup
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-24 15:52:16 +02:00
SluijsensandJunie 19b1101c1b Add Deployment Setup: manual Gitea Actions build/test/artifact pipeline
Co-authored-by: Junie <junie@jetbrains.com>
2026-07-20 01:40:46 +02:00