feat: initial La Gaufre v2 integration service

Multi-stage Docker image that:
- Builds lagaufre.js v2 widget from suitenumerique/integration source
  (context must be sunbeam/ root; see sunbeam build integration)
- Serves the widget, official La Suite SVG logos, custom logos for
  drive/mail/people, and a v1-compat gaufre.js wrapper via nginx

gaufre.js reveals the ui-kit GaufreButton (adds lasuite--gaufre-loaded
to <html>), loads the v2 widget, and wires button clicks via event
delegation to survive React hydration replacing the initial DOM element.

services.json is the only runtime-variable file; it is mounted from the
integration-config ConfigMap which contains the deployed service list
with DOMAIN_SUFFIX substituted at apply time.
This commit is contained in:
2026-03-03 16:09:21 +00:00
commit 14a01dd5e7
7 changed files with 158 additions and 0 deletions

16
.dockerignore Normal file
View File

@@ -0,0 +1,16 @@
# Allowlist: only send the files needed for the integration-service image build.
*
# Parent directories must be explicitly included for allowlist patterns to work.
!integration/
!integration/packages/
!integration/packages/widgets/
!integration/packages/widgets/**
!integration/packages/integration/
!integration/packages/integration/public/
!integration/packages/integration/public/logos/
!integration/packages/integration/public/logos/*.svg
# Our service-specific files
!integration-service/
!integration-service/**