I am using stash add-on 'Stash Webhook to Jenkins' to trigger Jenkins build when developer push his code to feature branch.
I want to reset to the previous commit if Jenkins build fail and if build succeed then only push should take place. Is there any add-on available for this or any other way?
Your opinion and help on this will really be appreciated.
I wouldn't recommend doing this, as rewriting (or resetting) history on a public branch can cause all sorts of problems because other developers may have pulled the offending commit and started creating new commits on top of it.
Instead of rewriting history, I'd recommend preventing feature branches from being merged by enforcing successful builds for Pull Requests via the Pull Request settings page. If you turn this setting on, developers will have to get a successful build by commiting working code on top of their broken branch, rather than rewriting its history.