Replaces the single cookie negotiator with a pluggable provider framework. Each provider handles preview activation/detection/teardown; the negotiator keeps expiry validation and link lookup.

Built-in providers (new Active provider setting):

- cookie (default), session: uncacheable, per-visitor
- acquia, pantheon: cacheable per-visitor at the edge, with bypass fallbacks

Adds CDN caching: when the provider allows it, Cache-Control becomes public, max-age=N capped to the link's remaining TTL; personalized responses stay uncacheable. In-preview responses carry a workspace_preview_link:{id} cache tag invalidated on save/delete. Publishing a workspace now deletes its preview links.

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

amateescu created an issue. See original summary.

  • amateescu committed 231fe199 on 1.0.x
    task: #3592750 Add pluggable preview authorization providers with CDN...
amateescu’s picture

Status: Active » Fixed

I've been testing this a lot locally and on Pantheon, and everything seems to be working great. Acquia doesn't provide free test sites afaik, but it's handled very much like the Pantheon provider, so it should work fine as well.

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.