Sync Milestones between GitHub and Jira On-premise

    This article shows how to synchronize milestones from GitHub issues to Jira.

    Introduction

    Milestone on GitHub is an object that includes Name, Due date(optional) and Description fields.

    Milestones are groups of issues that corresponds to a project, feature, or time period.

    Common GitHub milestones use example is tracking the progress on a group of issues like fix version or affected version of the release.

    Find more details about GitHub milestones here.

    Source Side(GitHub)

    To send the milestone object from GitHub dd the code below to the 

    Outgoing sync(Data Filter)

    replica.fixVersions = issue.fixVersions 

    Destination Side(Jira)

    When syncing milestones you can add the data into a text custom field or populate Jira fixVersion field.

    Below you can fins the example how to sync GitHub milestones into fixVersion Jira field.

    Add the code below to the Incoming sync(Create/Change processor) on Jira side.

    // assign milestones from GitHub to JIRA fixVersions and ensure that all the milestones are available on Jira as a fixVersions
    issue.fixVersions = replica.fixVersions.collect { v -> nodeHelper.createVersion(issue, v.name, v.description) }