How JIRA state transition can "push" changes from GIT local to remote repository?

Sudhakar P March 8, 2013

When I search with the above query, the results I get usually say how to change JIRA status on GIT commit -by using FishEye plug-in. I would prefer have some JIRA status change on PUSH also -as the changes actually merge with remote repository during PUSH.

For our project, where we have say 100+ developers, we need an option to ensure that code changes are pushed to main (remote) repository only when review group has okayed the changes.

To achieve this, I was considering following workflow: (with an additional repository called staging repository)

Step1> Developer tries to update the development status as say: Ready for review, in JIRA.
Step2> The state transition will execute a script in JIRA.
Step3> The script first Push'es the changes from local to remote(shared) staging repository.
Step4> The script also creates a review sub-task for the completed issue - if there was no prior review.
Step5> When the review is complete, the reviewer tries to update the review sub-task status.
Step6> The state transition will execute another script in JIRA.
Step7> If the review result is OK, the script Push'es the changes from staging to main repository.
Step8> The script also changes the main issue status to say: Ready to build.
Step9> If the review result is NOK, the script changes the main issue status back to say: In Progress.

I understand that, script execution can be performed on JIRA server using JIRA Script Runner add-on. But I'm not sure of the possibility of pushing the changes from local to remote through this add-on - which I intend to perform as part of Step3.

Could you please help me understand the possibility of "push"ing changes from local to remote GIT repository through JIRA status change.

1 answer

1 accepted

1 vote
Answer accepted
AdminB April 16, 2014

@sudhakar- I realize this comment is late, but I was just looking for this myself. Here's an example of how to commit in your case using the command line:

git commit -m ‘PLATFORM-<TICKET NUMBER> #comment Task ready for QA <VERSION NUMBER> #ready-for-review’

git merge origin review

Then, your QA team can test the code in the review branch (or staging, qa or whatever you call it). In this example, you will have a jira task that moves to "Ready for Review" (change this to whatever the exact name is of your workflow (i.e. "Ready for QA", etc). It will have a comment of "ready for QA v.1.2.3) and will be merged into the review branch. From there, you can use the agile board to move it into "ready for release" or whatever your "finished" state is.

Suggest an answer

Log in or Sign up to answer