Skip to content

feat(remotes): allow setting contentMode per remote project#236

Open
CaarLo1337 wants to merge 1 commit intoe-Spirit:masterfrom
CaarLo1337:feat(remotes)--remote-content-mode
Open

feat(remotes): allow setting contentMode per remote project#236
CaarLo1337 wants to merge 1 commit intoe-Spirit:masterfrom
CaarLo1337:feat(remotes)--remote-content-mode

Conversation

@CaarLo1337
Copy link

Hello,

we’ve noticed that RemoteProjectConfiguration currently does not allow specifying the content mode (preview or release) per remote project.

At the moment the type looks like this:

export type RemoteProjectConfiguration = {
  [name: string]: {
    id: string
    locale: string
  }
}

In multi-tenant setups with a shared remote project (e.g. for images or shared data sources), it is important to explicitly control whether remote content is resolved in preview or release mode.

In FirstSpirit ServerManager, it is possible to explicitly define in the remote project settings whether the preview version or only the release version should be used. Therefore, it should also be possible to specify the desired content mode in the JavaScript Content API configuration.

In a pure production setup, this is usually not an issue, since both the consuming project and the remote project resolve content in release mode.

However, problems arise in preview environments.
When a tenant project runs in preview mode, the remote project is currently also resolved in preview mode. In our setup, this is not desired. We want tenant projects in preview to always consume the released content from the shared master project — not its preview state.

In other words:

Tenant project → preview

Shared remote project → always release

Currently, this behavior cannot be configured explicitly.

Feature Request

Extend RemoteProjectConfiguration to optionally support a contentMode property:

export type RemoteProjectConfiguration = {
  [name: string]: {
    id: string
    locale: string
    contentMode?: 'preview' | 'release'
  }
}

This would provide explicit control over remote content resolution and improve support for multi-tenant and production setups.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant