It is possible to make a “Create only” connection and not force further changes/overwrites?

Originally asked by Andres Martynowicz on 22 March 2022 (original question)


We exalate a ticket from Zendesk to Jira. the Jira ticket is created and the next time a comment or status is changed in Zendesk, Exalate syncs the ticket with the associated JIRA Issue and replaces the Summary and Description with what is written in Zendesk. We do not want bi-directional which would in theory solve this because the summary and descriptions would be matching, but we do not want to change in Zendesk the Subject and Description form what was originally reported.


Answer by Andres Martynowicz on 22 March 2022

Yes, it is possible to do it.

You can do the following on zendesk/Jira sides:

Outgoing script (add the if condition):

if (issue.customFields."remote issue"?.value == null) {
replica.key            = issue.key
replica.assignee       = issue.assignee 
replica.reporter       = issue.reporter
replica.summary        = issue.summary
replica.description    = issue.description
replica.type           = issue.type
replica.labels         = issue.labels
replica.attachments    = issue.attachments
replica.comments       = issue.comments
replica.status       = issue.status
}

Incoming script (add the custom field + the syncHelper.syncBackAfterProcessing():

issue.labels  = replica.labels
issue.summary      = replica.summary
issue.description  = replica.description ?: "No description"
issue.attachments  = attachmentHelper.mergeAttachments(issue, replica)
issue.comments     += replica.addedComments
issue.customFields."remote issue".value = replica.key
syncHelper.syncBackAfterProcessing()

Kind regards,

Andres