we are using jclouds for azure compute operations. while using deployment API for creating virtual machine using ARM Template get success but fails to get the deployment details.
while investigating we found two issues
1. java.lang.NullPointerException: Null valuejava.lang.NullPointerException: Null value at org.jclouds.azurecompute.arm.domain.AutoValue_Value.<init>(AutoValue_Value.java:20) at org.jclouds.azurecompute.arm.domain.Value.create(Value.java:39)
The ARM template have secure information (password) which Azure is not returning the value when we do GET on the deployment, which is causing null pointer @Value.java
Solution: We added @Nullable to value() which solved our issue.
2. com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected a string but was BEGIN_ARRAY at line 1 column 472 path $.properties.parameters..value
The ARM Template have parameters which is type Array is the reason.
Solution: We have modified parameter map value to JSONBALL to accept all types of values.
we would like to have patch including the solutions, please review and accept the request.
JCLOUDS-1583 java.lang.IllegalStateException: Expected a string but was BEGIN_ARRAY