[
https://issues.apache.org/jira/browse/UNOMI-695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18095510#comment-18095510
]
Serge Huber commented on UNOMI-695:
-----------------------------------
h2. Re-targeted to unomi-3.2.0
Moved fixVersion from {{unomi-3.1.0}} to {{unomi-3.2.0}}.
Disabling demo/learning web resources via {{unomi.website.enabled}} (or
equivalent) is planned production hygiene. It is not implemented on {{master}}:
demo WABs and samples are still tied to Karaf feature selection and
distribution descriptors.
3.1.0 GA does not depend on this; we will deliver configurable production vs
developer profiles in 3.2 (see ticket description: {{wab/}},
{{extensions/web-tracker/wab/}}, manual samples).
h2. Workaround for 3.1
Ship a minimal production feature set (core persistence, REST, tracker as
needed) and omit optional WAB/demo features from {{feature.xml}} / custom Karaf
assembly.
> Add feature flag to disable Unomi website and other learning resources not
> needed for production use
> ----------------------------------------------------------------------------------------------------
>
> Key: UNOMI-695
> URL: https://issues.apache.org/jira/browse/UNOMI-695
> Project: Apache Unomi
> Issue Type: Task
> Reporter: Francois Gerthoffert
> Priority: Major
> Fix For: unomi-3.2.0
>
>
> h2. Context
> For production deployments, Apache Unomi should be able to run without
> exposing demo/learning web resources (for example default sample pages and
> related static assets), while preserving developer/demo workflows when
> explicitly enabled.
> Current work in unomi-3-ddev branch includes web-layer refactoring and
> documentation/sample restructuring, but does not yet define a clear
> production control mechanism. This task makes that behavior explicit,
> configurable, and testable.
> h2. Goal
> Introduce a feature flag to disable website/learning resources in
> production-targeted deployments.
> h2. Proposed behavior
> Add a dedicated configuration switch (example: unomi.website.enabled)
> controlling availability of demo/learning web resources.
> Default production-oriented behavior to disabled.
> Keep developer/demo behavior available when explicitly enabled.
> Keep core APIs and tracker runtime behavior unaffected.
> h2. In scope
> Configuration/property definition and wiring.
> Conditional registration/serving of demo/static website resources.
> Build/profile alignment so production artifacts do not include or expose
> unnecessary learning/demo content by default.
> Documentation update for developer vs production behavior.
> h2. Out of scope
> Functional changes to core REST/GraphQL APIs.
> Business logic changes unrelated to static/demo resource exposure.
> h2. Acceptance criteria
> With the flag disabled, demo/static website resources are not served at
> runtime and are not exposed in production-targeted setup.
> With the flag enabled, current developer/demo behavior remains available.
> CI includes at least one verification path for disabled mode (integration or
> startup-level check).
> Documentation clearly explains flag semantics and recommended production
> setting.
> h2. Implementation notes (aligned with current changes)
> Web/refactor area: wab/, extensions/web-tracker/wab/
> Docs/sample area touched: manual/src/main/asciidoc/samples/,
> samples/login-integration/
--
This message was sent by Atlassian Jira
(v8.20.10#820010)