Summary
This tool synchronizes multiple Workflow Manager (Classic) repositories participating in a Workflow Manager (Classic) Cluster. The tool performs two-way synchronization; changes from the child repositories are sent to the parent repository and changes from the parent are sent to all child repositories.
This tool requires that you have ArcGIS Workflow Manager (Classic) Server installed and configured across all participating nodes.
Learn more about Workflow Manager (Classic) replicationUsage
This tool can only be used for connected child repositories. For disconnected child repositories, you can use the Export Job Data and Import Job Data tools. See Workflow Manager (Classic) replication for more information.
The changes from all child repositories are sent to the parent repository for consolidation. These consolidated changes, along with changes made in the parent repository, are then sent to all the child repositories in the cluster.
The parent and child Workflow Manager (Classic) services must be online for synchronizing changes.
Syntax
arcpy.wmx.SynchronizeJobData(Input_Parent_Repository_URL, Input_Parent_Repository_Name, Input_Multi_Name)
Parameter | Explanation | Data Type |
Input_Parent_Repository_URL | The URL for the parent repository will be the Workflow Manager (Classic) server URL, for example, http://localhost/arcgis/rest/services/parent/wmserver. | String |
Input_Parent_Repository_Name | The parent repository that will be distributing the Workflow Manager (Classic) jobs and configuration elements. | String |
Input_Multi_Name [[child_repository, connected, URL, last_sync_time],...] | The child repositories that will be updated with the parent repository configuration.
| Value Table |
Derived Output
Name | Explanation | Data Type |
Output_SynchronizeReplicaStatus | The result of the synchronization operation. Returns 0 on success. | Long |
Output_LastSync | A table view of job synchronization information. | Value Table |
Code sample
SynchronizeJobData example (stand-alone script)
In this example, changes made in the Workflow Manager (Classic) repositories are getting synchronized between two repositories.
# Import arcpy module
import arcpy
# Check out any necessary licenses
arcpy.CheckOutExtension("JTX")
# Local variables:
Input_Parent_Repository_URL = "http://ServerName/arcgis/rest/services/ServerObjectName/WMServer"
Input_Parent_Repository_Name = "Redlands_Repository"
Input_Multi_Name = "Ohio_Repository true http://ohioServer/arcgis/rest/services/SO/WMServer 2011-08-08 12:00;AZ_Repository true http://AZServer/arcgis/rest/services/SO/WMServer 2011-08-08 12:00"
# Process: Synchronize Job Data
arcpy.SynchronizeJobData_wmx(Input_Parent_Repository_URL, Input_Parent_Repository_Name, Input_Multi_Name)
Environments
This tool does not use any geoprocessing environments.
Licensing information
- Basic: No
- Standard: Requires Workflow Manager
- Advanced: Requires Workflow Manager