The Issue Tracking Systems page, which can be accessed through the Administration - Integrations - Issue Tracking Systems menu, allows management of integrations into third-party issue - tracking systems. FlexDeploy currently provides out of box integration with Atlassian Jira. You can define custom implementation using either Java class or Groovy script. FlexDeploy reads ticket SCM commit message comments to associate tickets. As an example, if you use SVN, when committing a change back to the repository, simply put the issue name in the commit comment(case sensitive). If using Git as your SCM, make sure that the Git executable is installed on FlexDeploy server and is accessible on the PATH. The Git executable version must be 1.7.9 or higher.
Here is the out of box issue tracking systems. To configure, select Jira and click the Edit button. Issue Tracking System screen allows you to view the details on our of box Jira. FlexDeploy comes up with Java Implementation to integrate with Jira, you are not allowed to change implementation class and change or add new properties. You can create additional Issue Tracking System as necessary using the Create button.
You can provide global customizations for the Jira integration here, or override the settings at the environment, project, or environment/project level. The customizations available are as follows.
...
Method Name | Parameter | Return Type | Description |
---|---|---|---|
populateTicket | Ticket pTicket | void | This method should call the issue Tracking System using the ticket number(pTicket.getNumber()) and set the Description and Type |
getTicketURL | Ticket pTicket | String | This method should constrct the URL to access the ticket. (Ex http://<hostname>:<port>/redmine/issues/<issuenumber>.json) |
addCommentToTicket | Ticket pTicket, String pComment | void | Adding pComment to the ticket. The ticket number(pTicket.getNumber()) from Ticket object should be used to get the Ticket and add the comment. |
changeTicketStatusTo | Ticket pTicket, String pStatus | void | Change the status of the ticket to pStatus. The ticket number(pTicket.getNumber()) from Ticket object should be used to get the Ticket and change the status. |
getTicketStatus | Ticket pTicket | String | Get the current status of the ticket. The ticket number(pTicket.getNumber()) from Ticket object should be used to get the Ticket status. |
checkConnection | void | This should invoke any status or heath check URL of the issue tracking system to ensure the system is up and running | |
parseTicketNumberFromChangeLogs | String pProjectName, List<String> pMessagesToParse, List<String> pTicketPatternList | Collection<String> | pProjectName - name of the project for which the Issue tracking system is condifured pMessageToParse - list of string from the SCM commit logs pTicketPatterList - pattern configured in the project or for the issues tracking system. Add a custom rule by project to parse the message log string using single or multiple patterns. You can also use a different pattern list. Should return a unique list of ticket numbers |
Java Implementation
Here are high level steps for Java implementation. You can use any IDE to prepare this implementation.
...