Tenant Synchronization
What It Is
Tenant synchronization is Jetstack's implementation package export, preview, merge, and apply system. It moves implementation state between tenants or environments while preserving structure and providing reviewable previews.
Why It Matters
This is the platform's main lifecycle mechanism for:
- promoting implementation changes
- comparing tenant states
- reconciling differences
- reviewing merge conflicts
What Is Included
The sync manager models dependencies across implementation surfaces such as:
- modules
- views
- queries
- roles
- groups
- roots
- canvases
- automations
- email templates
- scheduler definitions
- legal grounds
- purposes
It also handles structured payloads such as:
- object actions
- top navigation
- custom query parameter definitions
- view actions
What Is Not The Same As Sync
Tenant synchronization is not a general-purpose full tenant snapshot of all runtime behavior. Some state is intentionally excluded, including some operator-managed runtime state like folder state or tag state.
Preview And Merge Model
Sync supports:
- package export
- preview
- deployment-style apply
- merge-oriented apply
- conflict resolution through selectors
flowchart LR
A[Export package] --> B[Load preview]
B --> C{Conflicts?}
C -- No --> D[Apply]
C -- Yes --> E[Resolve merge selectors]
E --> D
Why Merge Strategy Matters
Merge mode changes how the platform interprets differences between source and target. This is one of the highest-impact operator choices in rollout workflows because it determines whether the target tenant is treated like:
- a deployment target
- a merge participant
Best Practices
- always review the preview summary
- document conflict resolutions when they reflect intentional business choices
- keep sync activity aligned with version publication
- avoid treating sync as a substitute for release discipline