Rundeck2.5からJava8で動作するようになってた
高機能なジョブスケジューラのRundeck
2.4.2まではJava7でしか動作しませんでした。Java7はEOLなのでつらいところ。
[vagrant@vagrant-centos65 rundeck2.4]$ java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) [vagrant@vagrant-centos65 rundeck2.4]$ [vagrant@vagrant-centos65 rundeck2.4]$ java -jar rundeck-launcher-2.4.2.jar WARNING: HTTPS is not enabled, specify -Drundeck.ssl.config=/home/vagrant/work/rundeck2.4/server/config/ssl.properties to enable. 2015-05-03 10:29:57.836:INFO:oejs.Server:jetty-7.6.0.v20120127 2015-05-03 10:29:59.798:INFO:oejw.StandardDescriptorProcessor:NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet 2015-05-03 10:30:01.210:INFO:/:Initializing Spring root WebApplicationContext 2015-05-03 10:30:04,042 [main] ERROR context.ContextLoader - Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pluginManager' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NullPointerException: Cannot invoke method getAt() on null object at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:733) at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:233) at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1214) at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:676) at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:455) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) at org.eclipse.jetty.server.Server.doStart(Server.java:261) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) at com.dtolabs.rundeck.RunServer.run(RunServer.java:112) at com.dtolabs.rundeck.RunServer.main(RunServer.java:72) at com.dtolabs.rundeck.ExpandRunServer.invokeMain(ExpandRunServer.java:690) at com.dtolabs.rundeck.ExpandRunServer.execute(ExpandRunServer.java:647) at com.dtolabs.rundeck.ExpandRunServer.run(ExpandRunServer.java:304) at com.dtolabs.rundeck.ExpandRunServer.main(ExpandRunServer.java:113) Caused by: java.lang.NullPointerException: Cannot invoke method getAt() on null object ... 15 more 2015-05-03 10:30:04,055 [main] ERROR context.GrailsContextLoader - Error initializing the application: Error creating bean with name 'pluginManager' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NullPointerException: Cannot invoke method getAt() on null object org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pluginManager' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NullPointerException: Cannot invoke method getAt() on null object at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:733) at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:233) at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1214) at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:676) at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:455) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) at org.eclipse.jetty.server.Server.doStart(Server.java:261) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) at com.dtolabs.rundeck.RunServer.run(RunServer.java:112) at com.dtolabs.rundeck.RunServer.main(RunServer.java:72) at com.dtolabs.rundeck.ExpandRunServer.invokeMain(ExpandRunServer.java:690) at com.dtolabs.rundeck.ExpandRunServer.execute(ExpandRunServer.java:647) at com.dtolabs.rundeck.ExpandRunServer.run(ExpandRunServer.java:304) at com.dtolabs.rundeck.ExpandRunServer.main(ExpandRunServer.java:113) Caused by: java.lang.NullPointerException: Cannot invoke method getAt() on null object
ですが、4/16日に出たRundeck2.5ではJava8に対応しているので問題なく起動できるようになってます。 もちろんtomcatへのdeploy時でも問題なし。
[vagrant@vagrant-centos65 rundeck2.5]$ java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) [vagrant@vagrant-centos65 rundeck2.5]$ java -jar rundeck-launcher-2.5.0.jar WARNING: HTTPS is not enabled, specify -Drundeck.ssl.config=/home/vagrant/work/rundeck2.5/server/config/ssl.properties to enable. 2015-05-03 10:37:16.034:INFO:oejs.Server:jetty-7.6.0.v20120127 2015-05-03 10:37:18.214:INFO:oejw.StandardDescriptorProcessor:NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet 2015-05-03 10:37:19.544:INFO:/:Initializing Spring root WebApplicationContext 2015-05-03 10:37:54,115 INFO BootStrap - Starting Rundeck 2.5.0-1... 2015-05-03 10:37:54,115 INFO BootStrap - using rdeck.base config property: /home/vagrant/work/rundeck2.5 2015-05-03 10:37:54,124 INFO BootStrap - Performing rundeck first-run initialization... 2015-05-03 10:37:54,746 INFO BootStrap - Rundeck initialization complete. 2015-05-03 10:37:54,775 INFO BootStrap - loaded configuration: /home/vagrant/work/rundeck2.5/etc/framework.properties 2015-05-03 10:37:54,856 ERROR BootStrap - NOT importing existing filesystem projects filesystem 2015-05-03 10:37:54,868 INFO BootStrap - RSS feeds disabled 2015-05-03 10:37:56.349:INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/,file:/home/vagrant/work/rundeck2.5/server/exp/webapp/},/home/vagrant/work/rundeck2.5/server/exp/webapp 2015-05-03 10:37:56.444:INFO:/:Initializing Spring FrameworkServlet 'grails' 2015-05-03 10:37:56.522:INFO:oejs.AbstractConnector:Started [email protected]:4440
これで安心してJava8環境に移行出来ます。
他にも2.5では rd-acl
というコマンドラインツールが追加されていて、Rundeck ACL policy ファイルを生成することが出来るようです。(アクセスコントロール周り)