Hi,
We recently updated our nexus repository and we are having issues with the Extended Choice Parameter.
We were using it to fetch npm artifact versions and now it is not working.
I checked the logs and it is failing because of a mapping error. It seems that nexus added some information in their asset to add the npm component.
, {
"id" : "....",
"repository" : "npm-public",
"format" : "npm",
"group" : "cloudops",
"name" : "cloudmc-ui",
"version" : "21.1.0-SNAPSHOT",
"assets" : [ {
"downloadUrl" : "....",
"path" : "@cloudops/cloudmc-ui/-/cloudmc-ui-21.1.0-SNAPSHOT.tgz",
"id" : "....",
"repository" : "npm-public",
"format" : "npm",
"checksum" : {
"sha1" : "...."
},
"contentType" : "application/x-tgz",
"lastModified" : "2020-06-09T16:00:56.682+00:00",
"npm" : {
"name" : "@cloudops/cloudmc-ui",
"version" : "21.1.0-SNAPSHOT"
}
} ]
...
From the logs we have the following error in jenkins.
2021-01-08 21:01:09.267+0000 [id=52087] WARNING o.j.p.m.n.Nexus3RestApiSearchService#callService: failed to map
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "npm" (class org.jenkinsci.plugins.maven_artifact_choicelistprovider.nexus3.Item), not marked as ignorable (9 known properties: "checksum", "path", "downloadUrl", "repository", "id", "lastModified", "contentType", "format", "maven2"])
at [Source: (String)"{
"items" : [ {
"downloadUrl" : "...",
"path" : "@cloudops/cloudmc-ui/-/cloudmc-ui-11.0.0.tgz",
"id" : "....",
"repository" : "npm-internal",
"format" : "npm",
"checksum" : {
"sha1" : "...."
},
"contentType" : "application/x-tgz",
"lastModified" : "2018-10-18T20:18:39.900"[truncated 29334 chars]; line: 13, column: 14] (through reference chain: org.jenkinsci.plugins.maven_artifact_choicelistprovider.nexus3.Nexus3RestResponse["items"]->java.lang.Object[][0]->org.jenkinsci.plugins.maven_artifact_choicelistprovider.nexus3.Item["npm"])
at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:61)
at com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:823)
at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:1153)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1589)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1567)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:294)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.deser.std.ObjectArrayDeserializer.deserialize(ObjectArrayDeserializer.java:195)
at com.fasterxml.jackson.databind.deser.std.ObjectArrayDeserializer.deserialize(ObjectArrayDeserializer.java:21)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:129)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4013)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3004)
at org.jenkinsci.plugins.maven_artifact_choicelistprovider.nexus3.Nexus3RestApiSearchService.callService(Nexus3RestApiSearchService.java:54)
at org.jenkinsci.plugins.maven_artifact_choicelistprovider.AbstractRESTfulVersionReader.retrieveVersions(AbstractRESTfulVersionReader.java:70)
at org.jenkinsci.plugins.maven_artifact_choicelistprovider.AbstractMavenArtifactChoiceListProvider.readURL(AbstractMavenArtifactChoiceListProvider.java:116)
at org.jenkinsci.plugins.maven_artifact_choicelistprovider.nexus3.Nexus3ChoiceListProvider$Nexus3DescriptorImpl.wrapTestConnection(Nexus3ChoiceListProvider.java:98)
at org.jenkinsci.plugins.maven_artifact_choicelistprovider.AbstractMavenArtifactDescriptorImpl.performTest(AbstractMavenArtifactDescriptorImpl.java:59)
at org.jenkinsci.plugins.maven_artifact_choicelistprovider.nexus3.Nexus3ChoiceListProvider$Nexus3DescriptorImpl.doTest(Nexus3ChoiceListProvider.java:92)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:396)