Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.8.1
-
None
-
Ubuntu 13.04
Java 1.7
Description
Code that works on 1.7.0, breaks with error after update to version 1.8.1 (it works without the .overrideLoginCredentials setting). The following command breaks:
_newNodes = (Set<NodeMetadata>) _compute.createNodesInGroup( _clustername, _nodeids.size(), _compute.templateBuilder() .hardwareId(_instanceType) .locationId(_region) .imageId(_image) .options( new TemplateOptions() .runAsRoot(false) .wrapInInitScript(true) .inboundPorts(Tools.getPortsToOpen()) .userMetadata("daemons", _daemons.toString()) .runScript(new StatementList(_initScript)) .overrideLoginCredentials(Tools.getPrivateKeyCredentials(_username)) .authorizePublicKey(Tools.getPublicKey())) .build());
I get the following error:
2015-01-26 00:23:50 [ERROR] << problem customizing node(eu-west-1/i-6130e886): java.lang.IllegalStateException: Optional.get() cannot be called on an absent value at com.google.common.base.Absent.get(Absent.java:47) at org.jclouds.compute.callables.SudoAwareInitManager.execScriptAsRoot(SudoAwareInitManager.java:116) at org.jclouds.compute.callables.SudoAwareInitManager.runAction(SudoAwareInitManager.java:84) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.doCall(RunScriptOnNodeAsInitScriptUsingSsh.java:131) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.future(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:64) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.doCall(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:56) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.call(RunScriptOnNodeAsInitScriptUsingSsh.java:73) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:121) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) 2015-01-26 00:25:19 [ERROR] Problem launching instance org.jclouds.compute.RunNodesException: error running 1 node group(kxperiment) location(eu-west-1) image(ami-f1f80a86) size(m1.medium) options({loginUser=ubuntu, loginPrivateKeyPresent=true, authenticateSudo=true, inboundPorts=[22, 6627, 8080, 80], scriptPresent=true, publicKeyPresent=true, userMetadata={daemons=[ZK, MASTER, UI]}, userDataCksum=2f4a740b}) Execution failures: 0 error[s] Node failures: 1) IllegalStateException on node eu-west-1/i-6130e886: java.lang.IllegalStateException: Optional.get() cannot be called on an absent value at com.google.common.base.Absent.get(Absent.java:47) at org.jclouds.compute.callables.SudoAwareInitManager.execScriptAsRoot(SudoAwareInitManager.java:116) at org.jclouds.compute.callables.SudoAwareInitManager.runAction(SudoAwareInitManager.java:84) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.doCall(RunScriptOnNodeAsInitScriptUsingSsh.java:131) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.future(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:64) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.doCall(RunScriptOnNodeAsInitScriptUsingSshAndBlockUntilComplete.java:56) at org.jclouds.compute.callables.RunScriptOnNodeAsInitScriptUsingSsh.call(RunScriptOnNodeAsInitScriptUsingSsh.java:73) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:121) at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:49) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) 1 error[s] at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:222) at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:148) at dk.kaspergsm.stormdeploy.LaunchNodeThread.run(LaunchNodeThread.java:76)