Skip to content

IBX-12664: Added siteaccess-aware headless mode configuration - #2109

Merged
tbialcz merged 3 commits into
6.0from
IBX-12664-headless-config
Sep 23, 2026
Merged

tbialcz merged 3 commits into
6.0from
IBX-12664-headless-config

Conversation

@tbialcz

@tbialcz tbialcz commented Sep 22, 2026

Copy link
Copy Markdown
Contributor
🎫 Issue IBX-12664

Related PRs:

Description:

Adds one shared, siteaccess-aware configuration for headless mode (the site is rendered by an external front-end app). Until now it lived in page-builder as page_builder.headless.*, but content preview, content view and content tree will need the same settings, so it moves here.

ibexa:
    system:
        admin_group:
            headless:
                enabled: true
                page_builder:
                    preview_url: 'http://localhost:5173/preview'   # loaded into the Page Builder iframe
                content:
                    preview_url: ~                                 # for content previews, no consumer yet
                configuration_url: ~                               # optional, SaaS links its front-end settings page here
  • New config parser Headless with defaults enabled: false and all URLs null.
  • New HeadlessConfigurationInterface (isEnabled(), getPageBuilderPreviewUrl(), getContentPreviewUrl(), getConfigurationUrl()), implemented by HeadlessConfiguration on top of the config resolver.
  • A key omitted on a siteaccess inherits the group value. isEnabled() is just the flag, consumers also check the URL they need.

For QA:

  1. Add the YAML above and clear the cache. bin/console debug:container --parameter=ibexa.site_access.config.admin_group.headless.enabled shows true, ...headless.page_builder.preview_url shows the URL.
  2. Add ibexa.system.admin.headless.enabled: false. The admin siteaccess resolves enabled = false but still inherits page_builder.preview_url from the group.
  3. With page-builder#630 installed: edit a landing page on the admin siteaccess, the headless Page Builder opens with the preview URL in the iframe.

Documentation:

New siteaccess configuration node headless (keys above). It replaces the unreleased page_builder.headless.enabled / base_url from page-builder#550.

@tbialcz tbialcz added Doc needed The changes require some documentation Ready for review labels Sep 22, 2026
@tbialcz
tbialcz requested a review from a team September 22, 2026 11:08
@tbialcz
tbialcz force-pushed the IBX-12664-headless-config branch from 1c74e41 to 1a0fa0a Compare September 22, 2026 11:10
Comment thread src/bundle/Resources/config/services/headless.yaml Outdated
Comment thread src/lib/Headless/HeadlessConfigurationInterface.php
@konradoboza

Copy link
Copy Markdown
Contributor

I see you use that in other packages - then I would say it should be an internal contract (mark as @internal for now, we will move that to a separate namespace once Deptrac changes land in AdminUI).

@konradoboza

Copy link
Copy Markdown
Contributor

Why isn't this config part of Page Builder or Page Fieldtype package?

@tbialcz

tbialcz commented Sep 22, 2026

Copy link
Copy Markdown
Contributor Author

Why isn't this config part of Page Builder or Page Fieldtype package?

I think admin-ui is the right place because this is not only for Page Builder. The same front-end URL will also be used for content previews, and the Headless edition doesn’t have Page packages. Admin-ui is the common place where everyone can access it.

@tbialcz
tbialcz requested a review from konradoboza September 22, 2026 12:01

@konradoboza konradoboza left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 once #2109 (comment) is done. Reasoning: #2109 (comment).

@tbialcz
tbialcz force-pushed the IBX-12664-headless-config branch from e69dbb1 to bfdd4ae Compare September 23, 2026 07:15
@sonarqubecloud

Copy link
Copy Markdown

@tbialcz
tbialcz merged commit 1a35c67 into 6.0 Sep 23, 2026
21 checks passed
@tbialcz
tbialcz deleted the IBX-12664-headless-config branch September 23, 2026 09:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Doc needed The changes require some documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants