Aled Sage created BROOKLYN-402:
----------------------------------
Summary: jclouds-google-compute fails to provision windows VM:
json parse in ResetWindowsPassword
Key: BROOKLYN-402
URL: https://issues.apache.org/jira/browse/BROOKLYN-402
Project: Brooklyn
Issue Type: Bug
Reporter: Aled Sage
In Brooklyn 0.10.0-SNAPSHOT (with jclouds 1.9.2), it threw the exception shown
when trying to deploy a Windows VM in GCE.
The location config was something like:
{noformat}
location:
jclouds:google-compute-engine:
region: us-central1-a
displayName: GCE US Windows (us-central1-a)
imageNameRegex: windows-server-2012.*
osFamily: windows
osFamilyOverride: windows
destroyOnFailure: false
useJcloudsSshInit: false
hardwareId:
https://www.googleapis.com/compute/v1/projects/jclouds-gce/zones/us-central1-a/machineTypes/n1-standard-1
loginUser: amp
templateOptions: { autoCreateKeyPair: false }
{noformat}
The exception was:
{noformat}
1) ExecutionException on br-oh3dvr-amp-aut-zcbi-mssql-e7eg-d51:
java.util.concurrent.ExecutionException:
org.jclouds.http.HttpResponseException: Error parsing input: Null selfLink
{statusCode=200, message=OK,
headers={ETag=["OKaT3lMknIBtIpgO9cfe2RITHWA/waPzN3UWpey9JNT40SrNnaoT-7Q"],
X-XSS-Protection=[1; mode=block], Server=[GSE],
X-Content-Type-Options=[nosniff], Cache-Control=[private, max-age=0,
must-revalidate, no-transform], X-Frame-Options=[SAMEORIGIN],
Alt-Svc=[quic=":443"; ma=2592000; v="36,35,34"], Date=[Wed, 23 Nov 2016
11:16:33 GMT], Vary=[X-Origin, Origin]}, payload=[content=true,
contentMetadata=[contentDisposition=null, contentEncoding=null,
contentLanguage=null, contentLength=86, contentMD5=null,
contentType=application/json; charset=UTF-8, expires=Wed Nov 23 11:16:33 GMT
2016], written=false, isSensitive=false]}
at
com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
at
com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
at
com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
at
org.jclouds.concurrent.FutureIterables$1.run(FutureIterables.java:123)
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)
Caused by: org.jclouds.http.HttpResponseException: Error parsing input: Null
selfLink
{statusCode=200, message=OK,
headers={ETag=["OKaT3lMknIBtIpgO9cfe2RITHWA/waPzN3UWpey9JNT40SrNnaoT-7Q"],
X-XSS-Protection=[1; mode=block], Server=[GSE],
X-Content-Type-Options=[nosniff], Cache-Control=[private, max-age=0,
must-revalidate, no-transform], X-Frame-Options=[SAMEORIGIN],
Alt-Svc=[quic=":443"; ma=2592000; v="36,35,34"], Date=[Wed, 23 Nov 2016
11:16:33 GMT], Vary=[X-Origin, Origin]}, payload=[content=true,
contentMetadata=[contentDisposition=null, contentEncoding=null,
contentLanguage=null, contentLength=86, contentMD5=null,
contentType=application/json; charset=UTF-8, expires=Wed Nov 23 11:16:33 GMT
2016], written=false, isSensitive=false]}
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:68)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:42)
at
org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90)
at
org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73)
at
org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44)
at
org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117)
at
com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
at com.sun.proxy.$Proxy388.getSerialPortOutput(Unknown Source)
at
org.jclouds.googlecomputeengine.compute.functions.ResetWindowsPassword$1.apply(ResetWindowsPassword.java:144)
at
org.jclouds.googlecomputeengine.compute.functions.ResetWindowsPassword$1.apply(ResetWindowsPassword.java:142)
at
org.jclouds.util.Predicates2$RetryablePredicate.apply(Predicates2.java:117)
at
org.jclouds.googlecomputeengine.compute.functions.ResetWindowsPassword.apply(ResetWindowsPassword.java:142)
at
org.jclouds.googlecomputeengine.compute.functions.ResetWindowsPassword.apply(ResetWindowsPassword.java:81)
at
org.jclouds.googlecomputeengine.compute.GoogleComputeEngineServiceAdapter.createNodeWithGroupEncodedIntoName(GoogleComputeEngineServiceAdapter.java:187)
at
org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.createNodeWithGroupEncodedIntoName(AdaptingComputeServiceStrategies.java:195)
at
org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:79)
at
org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:63)
{noformat}
Note that this worked previously. We suspect that something has changed in the
response we're getting back from our GCE account, which is causing problems for
jclouds parsing it.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)