Stash Post Web Hook Plugin compatibility for Stash 3.0.4
Asked by Christopher Lefevre:

We have upgraded our Stash instance with the new Stash 3.0.4 but have found that the Post Web Hook plugin from Atlassian is no longer working. The error from the logs seems to indicate that the localization library used was either removed or renamed. Any updates to this or a known way to fix the plug-in? Not sure if the code is readily available.

The actual error as follows:

\[UpmAsynchronousTaskManager:thread-2\] User 494x298x1 16jf8iz 192.168.1.4 "POST /rest/plugins/1.0/ HTTP/1.1" c.a.s.i.i18n.I18nClasspathScanner Skipping adding plugin Stash Web Post Hooks Plugin - no i18n resources


Answers:
author: ThiagoBomfim
body: Hi Christopher,

Existing Stash add-ons (or plugins) that use the API interfaces that have been removed in Stash 3.0 will not work. As you can see on the [Upgrading to Stash 3.0](https://confluence.atlassian.com/display/STASH/Stash+upgrade+guide#Stashupgradeguide-UpgradingtoStash3.0) document:
> However, if you are upgrading from Stash 2.x to Stash 3.0, you should be aware that some existing installed add-ons may be incompatible with Stash 3.0. After upgrading, you should go to **Admin** \> **Manage add-ons** , look for messages of this form, and follow the advice to update:

Please make sure that this plugin is on the its latest version (1.1.0). You can download it from [Marketplace](https://marketplace.atlassian.com/plugins/com.atlassian.stash.plugin.stash-web-post-receive-hooks-plugin) and [manually install it](https://confluence.atlassian.com/display/UPM/Installing+Add-ons#Installingadd-ons-Installingbyfileupload) if you are unable to update it using the instructions above.

Best regards,

Thiago Bomfim

Atlassian Support

comments: author: Christopher Lefevre
body: This has been resolved now. Apparently in updating the plugin, it was not loading the new version, even though it was updated to 1.1.0.

Upon restarting Stash, uninstalling and re-installing the plug-in, it's now working again. Sorry for wasting your time, but hopefully someone else will see this and not have the same issue.


author: Paul Traylor
body: I tried to follow Christopher's steps but it didn't seem to work in my instance. It seems like push's that remove a branch (git push origin :something) work fine, but pushes that update a branch "git push origin something) cause it to fail.

```
2014-06-11 22:22:26,974 ERROR [AtlassianEvent::pool-2-thread-25] &lt;name&gt; 1342x12287x0 14h4c69 38.99.52.154 SSH - git-receive-pack '/&lt;project&gt;/&lt;repo&gt;.git' c.a.s.i.e.AsyncBatchingInvokersTransformer There was an exception thrown trying to dispatch event 'com.atlassian.stash.event.RepositoryPushEvent[source=com.atlassian.stash.internal.hook.PushPostReceiveHook@4b50461a]' for the invoker 'SingleParameterMethodListenerInvoker{method=public void com.atlassian.stash.internal.hook.repository.AsyncPostReceiveRepositoryHookAdapter.onRefsChangedEvent(com.atlassian.stash.event.RepositoryRefsChangedEvent), listener=com.atlassian.stash.internal.hook.repository.AsyncPostReceiveRepositoryHookAdapter@1ba5ec88}'.java.lang.RuntimeException: com.atlassian.stash.pull.PullRequestService.findInDirection(Lcom/atlassian/stash/pull/PullRequestDirection;ILjava/lang/String;Lcom/atlassian/stash/pull/PullRequestState;Lcom/atlassian/stash/pull/PullRequestOrder;Lcom/atlassian/stash/util/PageRequest;)Lcom/atlassian/stash/util/Page;        at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:54) ~[atlassian-event-2.3.5.jar:na]        at com.atlassian.stash.internal.event.AsyncBatchingInvokersTransformer$AsyncInvokerBatch.invoke(AsyncBatchingInvokersTransformer.java:100) ~[stash-platform-3.0.4.jar:na]        at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$1$1.run(AsynchronousAbleEventDispatcher.java:48) [atlassian-event-2.3.5.jar:na]        at com.atlassian.sal.core.executor.ThreadLocalDelegateRunnable.run(ThreadLocalDelegateRunnable.java:38) [sal-core-2.11.0.jar:na]        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_45]        at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45]        ... 1 frame trimmedCaused by: java.lang.NoSuchMethodError: com.atlassian.stash.pull.PullRequestService.findInDirection(Lcom/atlassian/stash/pull/PullRequestDirection;ILjava/lang/String;Lcom/atlassian/stash/pull/PullRequestState;Lcom/atlassian/stash/pull/PullRequestOrder;Lcom/atlassian/stash/util/PageRequest;)Lcom/atlassian/stash/util/Page;        at com.atlassian.stash.unapprove.UnapproveReviewersHook$2.get(UnapproveReviewersHook.java:75) ~[na:na]        at com.atlassian.stash.util.PagedIterable.iterator(PagedIterable.java:23) ~[stash-util-3.0.4.jar:na]        at com.atlassian.stash.unapprove.UnapproveReviewersHook.postReceive(UnapproveReviewersHook.java:44) ~[na:na]        at com.atlassian.stash.internal.hook.repository.AsyncPostReceiveRepositoryHookAdapter$1.visit(AsyncPostReceiveRepositoryHookAdapter.java:49) ~[stash-service-impl-3.0.4.jar:na]        at com.atlassian.stash.internal.hook.repository.AsyncPostReceiveRepositoryHookAdapter$1.visit(AsyncPostReceiveRepositoryHookAdapter.java:45) ~[stash-service-impl-3.0.4.jar:na]        at com.atlassian.stash.internal.hook.repository.DefaultRepositoryHookService$8.doInTransaction(DefaultRepositoryHookService.java:411) ~[stash-service-impl-3.0.4.jar:na]        at com.atlassian.stash.internal.hook.repository.DefaultRepositoryHookService$8.doInTransaction(DefaultRepositoryHookService.java:405) ~[stash-service-impl-3.0.4.jar:na]        at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133) ~[spring-tx-4.0.3.RELEASE.jar:4.0.3.RELEASE]        at com.atlassian.stash.internal.hook.repository.DefaultRepositoryHookService.visitEnabledHooks(DefaultRepositoryHookService.java:405) ~[stash-service-impl-3.0.4.jar:na]        at com.sun.proxy.$Proxy229.visitEnabledHooks(Unknown Source) ~[na:na]        at com.atlassian.stash.internal.hook.repository.AsyncPostReceiveRepositoryHookAdapter.postReceive(AsyncPostReceiveRepositoryHookAdapter.java:45) ~[stash-service-impl-3.0.4.jar:na]        at com.atlassian.stash.internal.hook.repository.AsyncPostReceiveRepositoryHookAdapter.onRefsChangedEvent(AsyncPostReceiveRepositoryHookAdapter.java:40) ~[stash-service-impl-3.0.4.jar:na]        at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:36) ~[atlassian-event-2.3.5.jar:na]        ... 6 common frames omitted
```

comments: author: ThiagoBomfim
body: Hi Paul!

From your stack trace, I can see you're having issues with a different plugin:

```
at com.atlassian.stash.unapprove.UnapproveReviewersHook$2.get(UnapproveReviewersHook.java:75) ~[na:na]
```

Notice that you are having issues with the [Stash Unapprove Reviewers](https://bitbucket.org/atlassian/stash-unapprove-reviewers-hook) which is no longer supported as you can read on its link. Could you please confirm that? If that is the case, please uninstall this plugin and install the newest version of the [Stash Auto Unapprove plugin](https://marketplace.atlassian.com/plugins/com.atlassian.stash.plugin.stash-auto-unapprove-plugin) that is compatible with Stash 3.0.

I hope that helps. Please let us know how you go from here.

Best regards,

Thiago Bomfim

Atlassian Support


author: Paul Traylor
body: Hmm you are right. I've uninstalled the UnapproveReviewersHook and re-installed it and now both seem to be working. Sorry about that.


author: Bhargavi Nannapaneni
body: Hello,

I recently upgraded stash to 3.3.0 and since then i'm unable to clone any of the repositories. Below is the error i get.

2014-10-07 07:18:37,839 DEBUG \[http-nio-7990-exec-9\] @36O84Xx438x130x0 10.80.13.114,10.100.158.239 "GET /mvc/error500 HTTP/1.1" c.a.s.i.i18n.PluginI18nService No values found in any valid locale for key Jira and locales \[en_US, en\]  
2014-10-07 07:18:37,845 DEBUG \[http-nio-7990-exec-9\] @36O84Xx438x130x0 10.80.13.114,10.100.158.239 "GET /mvc/error500 HTTP/1.1" c.a.s.i.i18n.PluginI18nService No values found in any valid locale for key Jira and locales \[en_US, en\]  
2014-10-07 07:18:37,857 DEBUG \[http-nio-7990-exec-9\] @36O84Xx438x130x0 10.80.13.114,10.100.158.239 "GET /mvc/error500 HTTP/1.1" c.a.s.i.i18n.PluginI18nService No values found in any valid locale for key stash.web.header.inbox.pullrequests and locales \[en_US, en\]

I found that among installed plugins, three of them are incompatible and are not supported by atlassian. As the newer version of plugins are unavailable, I uninstalled them, restarted stash and tried to clone repository .But it still resulted in the same error. Can anyone of you please verify the error and let me know if theres something i missed?

Thanks in advance.


Tags: addon-com.atlassian.stash.plugin.stash-web-post-receive-hooks-plugin

bitbucket-server