We are looking at using Stash as our Git server alongside JIRA and Team City.
One of our requirements we would like to fill is the automatic building of Pull/Merge Requests. Ideally, we would like to be able to:
1. Fork a repository
2. Update the forked repository
3. Issue a PR from the fork
4. Have the CI server be notified of the PR and build the merged result of the PR & run tests etc
5. Have the CI server notify Stash of the success of the build
6. If any updates are made on the PR, they are rebuilt and the status updated
At present we are using TeamCity as the CI server. I’ve not seen anything that suggests that Stash/JIRA has this functionality with TeamCity out-of-the-box. Is that correct?
Looking for info on adapting Stash/JIRA to work this way this implies that we would need to go beyond just having webhooks and develop some plug-ins on both side to notify TeamCity that a PR has been issued and has passed Stash’s merge, and then one to notify Stash about the build result from TeamCity. This suggested solution makes use of the internal refs that Stash uses for merging PRs and have them monitored by TeamCity. Is this an acceptable band-aid solution for the problem?