serverfrom:
  host: mysite.atlassian.net # the hostname of the Atlassian Cloud Instance
  auth:
    password: # password or API key
    username: # username of the user that is acting as the sync user
    accountid: 612369b2ec0a83006a1d5c33 # only for cloud - the user id of the Atlassian user account
  iscloud: true
  isjiraservicedesk: false # set to true if the original project is a Jira service desk
  projectkey: TS # project to be synced - add the project ID here
  createTargetRemoteLink: true # true/false - creates an issue link to the target instance in every synced ticket
  syncComments: one-way
    # set to two-way to enable two-way synchronization of comments
    # set to one-way to enable one-way synchronization from source to target (this is the default)
    # set to disabled to disable all comment synchronization.
  syncAttachments: one-way
    # set to two-way to enable two-way synchronization of attachments.
    # set to one-way to one-way synchronization from source to target (this is the default)
    # set to disabled to disable all attachment synchronization.
  syncPeopleFields: # enable if assignee and reporter should be synced
    assignee: true
    reporter: true # set to true if the project is based in Atlassian Cloud
  customfields: # values see here  https://<baseURL>/rest/api/3/field
    epiclink: customfield_10014 #  epics links are set as custom field
    epicname: customfield_10011 #  epics name are set as custom field
  issuetypes: # name just for matching serverfrom and serverto values. For values see here https://<baseURL>/rest/api/3/issuetype
    subtask: 10051 # every value must be set here
    task: 10049
    epic: 10000
    bug: 10031
    story: 10079
    improvement: __ignore__
    newfeature: __ignore__
  syncPriorities: true # enable to sync priorities
  prioritiesFieldMapping: # https://<baseURL>/rest/api/3/priority - use auth above
    fieldTo: priority
    mapping: # check for both Jira: source: target
      1: 1 # Highest - Highest
      2: 2 # High - High
      3: 3 # Medium - Medium
      4: 4 # Low - Low
      5: 5 # Lowest - Lowest
  # syncWorkflowStatus: true # Set to true to enable sync of workflow status. This is now a deprecated configuration. Please see syncSettings below for new config.
  # workflowStatusFieldMapping: # Configure to make workflow status sync work
    # workflow status id for serverfrom https://<baseURL>/rest/api/3/project/<SourceProjectID>/statuses
    # workflow transition id for serverto https://<baseURL>/rest/api/3/issue/<TargetIssueID>/transitions
    # mapping: # name just for matching serverfrom and serverto values. For values see here https://<baseURL>/rest/api/3/issuetype
      # 1: 31 # Open <-> Open
      # 3: 11 # In Progress -> In Progress
      # 10001: 21 # Done -> Done
  syncOtherSystemFields: true # Default is false. Set this to true to sync other possible system fields.
  syncOtherSystemFieldsList:
    labels: true # Default is false. Set to true to enable sync of labels
    labelsOptions:
      overrideTargetLabels: false # Default is false. Set this to true to delete all labels from the target issue that is not existing on the source issue.
    fixVersion: true # Default is false. Set to true to enable sync of fix versions.
    fixVersionOptions:
      overrideTargetVersions: true # Default is false. Set this to true to delete all fixVersions from the target issue that is not existing on the source issue.
    affectsVersion: true # Default is false. Set to true to enable sync of affected version.
    affectsVersionOptions:
      overrideTargetVersions: true # Default is false. Set this to true to delete all affectsVersion from the target issue that is not existing on the source issue.
  syncCustomFields: true # Default is false. Set this to true to sync custom fields
  customFieldMapping: # Define custom field mapping with the key value format of Source Field customfield_id to the Target customfield_id
    mapping:
      customfield_13202: customfield_10700 # Text Area (Source) to Text Area (Target)
      # Currently supported custom fields and system fields for the source issue
      # - Select field
      # - Multi-Select Field
      # - Cascading Select Field
      # - TextArea Field
      # - assignee
      # - reporter
      # - duedate
      # - created
      # Supported custom fields for target system fields
      # - Text Field
      # - Text Area
      # Sample configurations to sync:
      #  customfield(supported) values to (textfield/textarea)
      # - assignee to custom field(textfield/textarea)
      # - reporter to custom field(textfield/textarea)
      # - duedate to custom field(textfield/textarea)
      # - created to custom field(textfield/textarea)
    mappingWithDefaultValue: # Set this configuration to create issues with default values to the custom field.
      # customfield_id: 'value'
      # radio button field - accepts string value
      customfield_10502: 'no'
      # radio button field - accepts string value
      customfield_10503: 'yes'
      # radio button field - accepts id of option
      customfield_10504: 10301
      # Text Field (Single Line) - accepts any string value
      customfield_11100: 'This is the test value for custom field'
      # Test Field (Multi Line) Jira setup - accepts any string value. Line breaks can be included by using two backslashes (\\). Links can also be added by using Jira format [title|http://example.com]
      customfield_11202: 'This is test\\Line Break\\ [Google|https://www.google.com]'
      # Date and Time Picker - accepts any string and will have the value of the current date and time as the ticket is created
      customfield_11200: 'currentTime'
      # Date Picker - accepts any string and will have the value of the current date as the ticket is created
      customfield_11201: 'currentDate'
      # Single Select field - accepts string value or accepts id of option
      customfield_11400: 'Test2'
      # Currently supported custom fields with default value mapping:
      # - Radio Button - value supported can be the string value or the option id
      # - Text Field (Single Line) - accepts any string value
      # - Text Field (Multi Line) - accepts any string value and uses \ for line breaks
      # - Date and Time Picker - current date and time as the ticket is created
      # - Date Picker - current date as the ticket is created
      # - Single Select - accepts any string value or the option id
serverto:
  host: mysite.atlassian.net # the hostname of the Atlassian Cloud Instance
  auth:
    password: # password or API key
    username: # username of the user that is acting as the sync user
    accountid: 612369b2ec0a83006a1d5c33 # only for cloud - the user id of the Atlassian user account
  iscloud: true # set to true if the project is based in Atlassian Cloud
  isjiraservicedesk: false # set to true if the original project is a Jira service desk
  projectkey: TST  # project to be synced - add the project ID here!
  issuetypes: # values see here https://<baseURL>/rest/api/3/issuetype - use auth above
    subtask: 10003  # every value must be set here
    task: 10002
    epic: 10000
    bug: 10004
    story: 10100
    improvement: __ignore__
    newfeature: __ignore__
  customfields:  # values see here  https://<baseURL>/rest/api/3/field
    epiclink: customfield_10014 #  epics links are set as custom field
    epicname: customfield_10011 #  epics name are set as custom field
  userMappingEnabled: true # enable to sync users https://<baseURL>/rest/api/3/user/assignable/multiProjectSearch?projectKeys=<projectkey>
  userFieldMapping:
    reporter:
      fieldTo: reporter
      userMapping:
        612369b2ec0a83006a1d5c33: 612369b2ec0a83006a1d5c33 # unique Atlassian Cloud user ID for user
    assignee:
      fieldTo: assignee
      userMapping:
        612369b2ec0a83006a1d5c33: 612369b2ec0a83006a1d5c33 # unique Atlassian Cloud user ID for user.
pushJQL: Project = TS # the JQL for issues to be synced. Use backslash for escaping symbols!
syncSettings: # Setup sync settings to enable two-way sync support for fields.
  # Current Fields supported
  # - Status / Workflow Status
  workflowStatus:
    # Default false.
    enabled: true
    # Default false. Setting this to true will ignore the transition for the issue if the transition is not mapped.
    ignoreUnmappedTransitions: true
    # values for direction: one-way, two-way
    direction: two-way
    # setting for two way status sync conflict. e.g. both source and target was changed before sync.
    # conflictResolution setting will let jira sync decide which server takes priority.
    conflictResolution:
      serverPriority:
        enabled: false
        server: source
      latestStatusChangePriority:
        enabled: true
    mappings:
      workflows:
        openworkflow:
          issueTypes: # Set the issue types associated with the workflow.
            - task
          sourceToTarget:
            # format
            # source ticket status id:
            # default: transition id of target system
            1: # open
              default: 31 # open
            3: # in progress
              default: 11 # in progress
            10001: # done
              default: 21 # done
          targetToSource:
            1: # open
              default: 31 # open
            3: # in progress
              default: 11 # in progress
            10016: # done
              default: 21 # done
