Skip to content

chore: connect Xperience's own Content Sync in the two-instance rig - #6

Merged
andresvillenas merged 1 commit into
mainfrom
chore/content-sync-rig
Oct 1, 2026
Merged

andresvillenas merged 1 commit into
mainfrom
chore/content-sync-rig

Conversation

@andresvillenas

Copy link
Copy Markdown
Collaborator

Connects Xperience's built-in Content Sync between the two local test instances, so a real sync can be checked end to end. No library code changes.

Changes

  • Example host: examples/DancingGoat/Program.cs binds ContentSynchronizationOptions from the ContentSynchronization configuration section. Content Sync is enabled per instance through environment variables and stays off otherwise.
  • Docs:
    • docs/Contributing-Setup.md has a new Connecting Xperience's own Content Sync section: trusting the .NET development certificate (Kentico requires the target on HTTPS with a trusted certificate), giving the target an HTTPS address, the settings for both instances, and how to run and check a sync.
    • The foundation spec's last "not verified" item is now verified (below).
  • .gitignore: ignores examples/DancingGoat/assets/synchronizations/, where Content Sync writes its packages.

Verified (31.7.2, real Content Sync, target on https://localhost:27311)

Step Target Content sync status page
Unpublish /Articles/Clone_On_Roasts on the source not there Missing on target, "Unpublished here, and not on the target yet"
Sync this page created unpublished, ~10 s later In sync, "Unpublished on both instances"
Publish it on the source still unpublished Out of date on target, "Published here, unpublished on the target"
Sync this page again published In sync

This confirms Kentico's documented behavior for unpublished pages, and is the first check of the full missing → sync → in sync flow. The same setup can be used for the 30.8.0 two-instance release check.

The local rig could compare inventories but never run a real sync, so
the end-to-end flow (missing, then sync, then in sync) and Kentico's
handling of unpublished pages were unverified.

- Bind ContentSynchronizationOptions from configuration in the
  DancingGoat example, so Content Sync is enabled per instance through
  environment variables and stays off otherwise
- Document the setup in Contributing-Setup: trusting the development
  certificate, the target's HTTPS address, and the settings for both
  instances
- Record the verified result in the foundation spec: syncing an
  unpublished page creates it unpublished on the target, and the
  status page follows each step
- Ignore the sync packages Content Sync writes under the example's
  assets folder
@andresvillenas
andresvillenas merged commit 13e897e into main Oct 1, 2026
3 checks passed
@andresvillenas
andresvillenas deleted the chore/content-sync-rig branch October 1, 2026 21:57
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