I tried to create a very simple Jenkins setup on openshift. Here are the steps I followed: 1. Create a new openshift app using the "Jenkins Server" cartridge. 2. Log in to the new Jenkins server using the supplied username and password. 3. Create a very simple freestyle build with a shell build step that echos some text. 4. Run the build
The new build appears briefly in the jenkins server UI and then disappears, so I checked the log in the jenkins server app to find some error messages.
May 29, 2014 4:55:41 PM hudson.plugins.openshift.OpenShiftCloud reloadConfig
INFO: Reload ResponseCode: 200
May 29, 2014 4:55:41 PM hudson.plugins.openshift.OpenShiftCloud reloadConfig
INFO: Config reload result:
May 29, 2014 4:55:41 PM hudson.plugins.openshift.OpenShiftSlave <init>
INFO: Creating slave with 15mins time-to-live
May 29, 2014 4:55:41 PM hudson.plugins.openshift.OpenShiftCloud provision
WARNING: Caught com.openshift.client.OpenShiftException: Cartridge for not found. Will retry 0 more times before canceling build.
May 29, 2014 4:55:46 PM hudson.plugins.openshift.OpenShiftCloud provision
WARNING: Cancelling build due to earlier exceptions
com.openshift.client.OpenShiftException: Cartridge for not found
at hudson.plugins.openshift.OpenShiftSlave.getCartridge(OpenShiftSlave.java:129)
at hudson.plugins.openshift.OpenShiftSlave.createApp(OpenShiftSlave.java:262)
at hudson.plugins.openshift.OpenShiftSlave.provision(OpenShiftSlave.java:253)
at hudson.plugins.openshift.OpenShiftCloud.provisionSlave(OpenShiftCloud.java:489)
at hudson.plugins.openshift.OpenShiftCloud.provision(OpenShiftCloud.java:413)
at hudson.slaves.NodeProvisioner.update(NodeProvisioner.java:264)
at hudson.slaves.NodeProvisioner.access$000(NodeProvisioner.java:51)
at hudson.slaves.NodeProvisioner$NodeProvisionerInvoker.doRun(NodeProvisioner.java:347)
at hudson.triggers.SafeTimerTask.run(SafeTimerTask.java:54)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
May 29, 2014 4:55:46 PM hudson.plugins.openshift.OpenShiftCloud cancelItem
INFO: Cancelling Item
It appears that some configuration is missing that would tell openshift which cartridge to use for the new slave, but I'm not sure where to configure this. Any help is greatly appreciated, thanks!