Launch a campaign with a workstream
Prepare a landing page, the updates to three existing pages and a new menu entry together, show the whole set to stakeholders on one preview link, and publish everything in one action, now or at a scheduled time.
Before you start: an author or editor account; an editor (content.publish) merges at the end.
Steps
- Workstreams → New workstream. Key
spring-campaign, label Spring campaign. The admin switches into it: a banner shows the workstream name and every save now goes to the branch, not the live site. - Create the landing page and edit the pages that should link to it. Edit the main menu to add the entry. Each change shows in the workstream's item list; the live site is unchanged.
- Open the workstream's Preview. It renders the site as it would look after the merge, with internal links kept inside the preview. Share link creates a URL a stakeholder can open without an account for seven days.
- Diff lists every item with the number of changed fields and blocks and its pre-publish checks. Fix errors inside the workstream. A conflict means someone changed the live version of an item since you branched; reopen it, take over their change, save again.
- An editor chooses Merge (or Schedule with a date and time). The merge publishes every item through the normal path: checks, audit rows, cache invalidation, notifications.
Check the result
- The landing page, the edited pages and the menu entry are live together; before the merge none of them were.
- The workstream shows merged with the time, and the item list is read-only.
GET /api/workstreams/<id>reportsstatus: "merged"; the audit log has oneentity.publishrow per item and aworkstream.mergednotification went out.- Revisions of each page show the workstream revision followed by the merge revision.
Notes
- Publish, unpublish and submit are refused inside a workstream (409
workstream_scope); merging is how the branch reaches the site. - Discard deletes the branch revisions and the pages created inside it; the live site never saw them.
Going further
- Workstreams: preview, diff, conflicts, scheduling and limits.
- Workstreams in the API and the
X-Spillway-Workstreamheader for scripts and agents.
Spillway 0.1.0 · Edit this page on GitHub