HackAttack / bamboo-github-status

A plugin for Atlassian Bamboo that reports build results to the GitHub status API
MIT License
22 stars 23 forks source link

After upgrade to Bamboo 6.2.5, UI in Miscellaneous tab does not render correctly #26

Open kjonick1 opened 6 years ago

kjonick1 commented 6 years ago

We just upgraded our server to Bamboo 6.2.5. The plugin is working with regard to updating the GitHub repo when builds are run. However, in the build job configuration, the plugin no longer renders correctly (I'll attach screen shot). We are not able to select the repos on the miscellaneous tab.

screen shot 2017-12-19 at 8 59 32 pm
doronlh commented 6 years ago

Experiencing this too: Here's the relevant error that is printed in the logs - <bamboo_home_dir>/logs/atlassian-bamboo.log

2017-12-20 09:36:44,120 ERROR [http-nio-8085-exec-6] [runtime] Error executing FreeMarker template
FreeMarker template error:
The following has evaluated to null or missing:
==> itemValue  [in template "template/aui/checkboxlist.ftl" at line 65, column 27]

----
Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use [#if myOptionalVar??]when-present[#else]when-missing[/#if]. (
These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
        - Failed at: ${itemValue?html}  [in template "template/aui/checkboxlist.ftl" at line 65, column 25]
        - Reached through: @ww.iterator value="parameters.list"  [in template "template/aui/checkboxlist.ftl" at line 32, column 9]
        ~ Reached through: #nested  [in template "freemarker-lib/ui.ftl" in macro "bambooSection" at line 124, column 9]
        ~ Reached through: @ui.bambooSection id=fieldsetId cssCl...  [in template "template/aui/checkboxlist.ftl" at line 12, column 1]
----

Java stack trace (for programmers):
----
freemarker.core.InvalidReferenceException: [... Exception message was already printed; see it above ...]
        at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134)
        at freemarker.core.EvalUtil.coerceModelToTextualCommon(EvalUtil.java:451)
        at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:374)
        at freemarker.core.BuiltInForLegacyEscaping._eval(BuiltInForLegacyEscaping.java:34)
        at freemarker.core.Expression.eval(Expression.java:81)
        at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:96)
        at freemarker.core.DollarVariable.accept(DollarVariable.java:59)
        at freemarker.core.Environment.visit(Environment.java:326)
        at freemarker.core.Environment.visit(Environment.java:368)
        ...
        ... (removed for length)
        ...
        at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:70)
        at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:58)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
        at org.apache.catalina.valves.StuckThreadDetectionValve.invoke(StuckThreadDetectionValve.java:206)
        at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1099)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:670)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:748)
2017-12-20 09:36:44,125 INFO [http-nio-8085-exec-6] [UnifiedCallHelper] class freemarker.template.FalseTemplateBooleanModel
2017-12-20 09:36:44,125 INFO [http-nio-8085-exec-6] [UnifiedCallHelper] class freemarker.template.TrueTemplateBooleanModel
doronlh commented 6 years ago

@HackAttack, are you planning to fix this? Your plugin currently does not work in the latest version of Bamboo

HackAttack commented 6 years ago

Yes, I am planning to fix this, I just haven’t figured out how yet. As @kjonick1 noted, the plugin works but the configuration UI is broken, which doesn’t affect the common case of a plan with only one repo (since no configuration is needed).

doronlh commented 6 years ago

Great to hear @HackAttack I see it does still work with single repo plans, but I feel less comfortable using it in my continuous integration pipeline if it is buggy. In the meantime I've created tasks in my various plans to to update the statuses. But would be happy to move back to your plugin when its fixed.

hnryjms commented 6 years ago

It looks like @lei-at-mel has addressed this issue in #29 but there's been no progress on getting that PR merged. Have you abandoned this repo @HackAttack because the plugin is completely broken in current versions (see #25 #27 #30 #35).

My team has upgraded bamboo and I'm not entirely sure where to go now because this plugin isn't being maintained.