Two Sources to One Destination

Case

Assume we have two source systems with a content type that both need to migrate to the same destination system's content type. These contents need to be able to be updated and created by the source systems.

Source one content

Source two content

In this example we have the following systems:

  • Source 1 - Contentstack

  • Source 2 - Strapi 4

  • Destination - Contentstack

We need to be able to:

  1. Sync content from multiple sources to the same destination

  2. Update content based on a common field

Solution

ImpulseSync can solve this with a few jobs and the aligner.

First a couple jobs can be created to sync the content from the first source to the destination.

These jobs are configured as necessary. In this case, there are no special manipulators or mappings used.

The next couple jobs can be created to align any content necessary and sync any content from the second source to the destination.

The Strapi Author Align job is used to align author content from the Strapi source system to the author content that now exists at the destination. This job has a mapping config with field aligner set.

When this job runs ImpulseSync use the specified fields to align content and create ID maps are required. (Note: since this job is used for aligning content only, the No Deliver job option is used for the destination endpoint.)

The next job is the Strapi Headlines Sync. This job will sync the headline content from the second source, our Strapi system to the same destination content type. This job also has a mapping config with the field aligner set and the appropriate fields mapped.

When this job runs the content will be aligned based on the specified fields. If those fields match then the content will be updated based on the Strapi source. If there is no match for the field from the source, then a new content will be created at the destination.

Last updated