Uploaded image for project: 'Common Controller SDK'
  1. Common Controller SDK
  2. CCSDK-1614

CDS fails to run golden blueprint failing to parse a string returned by REST endpoint (netbox)

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Medium Medium
    • El Alto Release
    • El Alto Release
    • built from master

      commit 13904e48fc907f4c5013593a60ad6efbfcc42822 (HEAD -> master, origin/master, origin/HEAD)

      Master doesn't run the default golden CBA.

       

       input golden sample

      {
        "commonHeader": {
          "originatorId": "System",
          "requestId": "1234",
          "subRequestId": "1234-12234"
        },
        "actionIdentifiers": {
          "blueprintName": "golden",
          "blueprintVersion": "1.0.0",
          "actionName": "resource-assignment",
          "mode": "sync"
        },
        "payload": {
          "resource-assignment-request": {
          }
        }
      } 

       

      error summary:

      15:44:39,755|||reactor-http-epoll-40||||INFO||||||| For List Type Resource: key (address), value ("10.0.101.132/24"), type  ({string}) 2019-08-12 15:44:39,816|||reactor-http-epoll-40||||ERROR||||||| failed in rr-processor-source-rest : Failed in template key ([name=vfw_interface_ip, status=failure, property=, dictionaryName=create_netbox_ip, dictionarySource=primary-config-data]) assignments with: "10.0.101.132/24" type is not supported org.onap.ccsdk.cds.controllerblueprints.core.BluePrintProcessorException: Failed in template key ([name=vfw_interface_ip, status=failure, property=, dictionaryName=create_netbox_ip, dictionarySource=primary-config-data]) assignments with: "10.0.101.132/24" type is not supported at  

       

      This seems to be coming from 

      https://gerrit.onap.org/r/c/ccsdk/cds/+/92684/5/ms/controllerblueprints/modules/blueprint-core/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/core/utils/JacksonUtils.kt#b241

      The change introduced an issue with 

      fun populatePrimitiveValues(key: String, value: Any, primitiveType: String, objectNode: ObjectNode) where Json object would be returned instead of a type.

       

      After reverting that particular section of JacksonUtils.kt,

       

      2019-08-13
      18:59:31,724|||reactor-http-epoll-26||||INFO||||||| Setting Resource Value (6)
      for Resource Name (prefix-id), definition(prefix-id) of type (integer)
      
      2019-08-13
      18:59:32,092|||reactor-http-epoll-26||||INFO||||||| primary-config-data
      dictionary information : (/api/ipam/prefixes/6/available-ips/),
      ({prefix-id=prefix-id}), ({address=address, id=id})
      
      2019-08-13
      18:59:32,631|||reactor-http-epoll-26||||INFO||||||| Rest request method(POST),
      url(/api/ipam/prefixes/6/available-ips/)
      
      2019-08-13
      18:59:32,799|||reactor-http-epoll-26||||INFO||||||| Response status(201 -
      Created)
      
      2019-08-13
      18:59:32,811|||reactor-http-epoll-26||||INFO||||||| Response processing
      type(dt-netbox-ip)
      
      2019-08-13
      18:59:32,812|||reactor-http-epoll-26||||INFO||||||| populating value for output
      mapping ({address=address, id=id}), from json
      ({"id":147,"family":4,"address":"10.0.101.134/24","vrf":null,"tenant":null,"status":{"value":1,"label":"Active"},"role":null,"interface":null,"description":"","nat_inside":null,"nat_outside":null,"tags":[],"created":"2019-08-13","last_updated":"2019-08-13T18:59:32.722280Z"})
      
      2019-08-13
      18:59:32,814|||reactor-http-epoll-26||||INFO||||||| For List Type Resource: key
      (address), value ("10.0.101.134/24"), type  ({string})
      
      2019-08-13
      18:59:32,814|||reactor-http-epoll-26||||INFO||||||| For List Type Resource: key
      (id), value (147), type  ({integer})
      
      2019-08-13
      18:59:32,815|||reactor-http-epoll-26||||INFO||||||| For template key
      (vfw_interface_ip) setting value as
      ({"address":"10.0.101.134/24","id":147})
      
      2019-08-13
      18:59:32,815|||reactor-http-epoll-26||||INFO||||||| Setting Resource Value
      ({"address":"10.0.101.134/24","id":147}) for
      Resource Name (vfw_interface_ip), definition(create_netbox_ip) of type
      (dt-netbox-ip)
      
      2019-08-13
      18:59:32,815|||reactor-http-epoll-26||||INFO||||||| Setting Resource Value
      ("3") for Resource Name (vf-module-number),
      definition(vf-module-number) of type (string)
      
       

       

       

      full error log:

        2019-08-12
        15:44:37,344|||reactor-http-epoll-40||||INFO||||||| Reading blueprint
        path(/opt/app/onap/blueprints/deploy/golden/1.0.0) and entry definition file
        (Definitions/golden-blueprint.json)
        2019-08-12
        15:44:38,435|||reactor-http-epoll-40||||INFO||||||| assign workflow
        resource-assignment input value ({})
        2019-08-12
        15:44:38,435|||reactor-http-epoll-40||||INFO||||||| Executing
        workflow(resource-assignment) NodeTemplate(resource-assignment), derived
        from(tosca.nodes.Component)
        2019-08-12
        15:44:38,436|||reactor-http-epoll-40||||INFO||||||| executing node
        template(resource-assignment) component(component-resource-resolution)
        interface(ResourceResolutionComponent) operation(process)
        2019-08-12
        15:44:38,437|||reactor-http-epoll-40||||INFO||||||| preparing request
        id(1234) for workflow(resource-assignment) step(resource-assignment)
        2019-08-12
        15:44:38,437|||reactor-http-epoll-40||||INFO|||||||
        resolveNodeTemplateInterfaceOperationInputs for node template
        (resource-assignment),interface name (ResourceResolutionComponent),
        operationName(process)
        2019-08-12
        15:44:38,437|||reactor-http-epoll-40||||INFO||||||| input definition for node
        template (resource-assignment), values
        ({artifact-prefix-names=["vf-module-1"]})
        2019-08-12
        15:44:38,439|||reactor-http-epoll-40||||INFO||||||| Resolving resource for
        template artifact(vf-module-1-template) with resource assignment
        artifact(vf-module-1-mapping)
        2019-08-12
        15:44:39,156|||reactor-http-epoll-40||||INFO||||||| Assignments
        ([[name=interface-description, status=null, property=,
        dictionaryName=interface-description, dictionarySource=capability],
        [name=vf-module-type, status=null, property=, dictionaryName=vf-module-type,
        dictionarySource=processor-db], [name=vf-module-number, status=null,
        property=, dictionaryName=vf-module-number, dictionarySource=default],
        [name=prefix-id, status=null, property=, dictionaryName=prefix-id,
        dictionarySource=default], [name=vfw_interface_ip, status=null, property=,
        dictionaryName=create_netbox_ip, dictionarySource=primary-config-data]])
        2019-08-12
        15:44:39,157|||reactor-http-epoll-40||||INFO||||||| Sorted Sequenced
        Assignments ([[name=*, status=null, property=, dictionaryName=null,
        dictionarySource=null], [name=prefix-id, status=null, property=,
        dictionaryName=prefix-id, dictionarySource=default], [name=vfw_interface_ip,
        status=null, property=, dictionaryName=create_netbox_ip,
        dictionarySource=primary-config-data], [name=vf-module-number, status=null,
        property=, dictionaryName=vf-module-number, dictionarySource=default],
        [name=vf-module-type, status=null, property=, dictionaryName=vf-module-type,
        dictionarySource=processor-db], [name=interface-description, status=null,
        property=, dictionaryName=interface-description,
        dictionarySource=capability]])
        2019-08-12
        15:44:39,168|||reactor-http-epoll-40||||INFO||||||| Batched Sequence :
        ([[[name=*, status=null, property=, dictionaryName=null,
        dictionarySource=null]], [[name=prefix-id, status=null, property=,
        dictionaryName=prefix-id, dictionarySource=default]],
        [[name=vfw_interface_ip, status=null, property=,
        dictionaryName=create_netbox_ip, dictionarySource=primary-config-data]],
        [[name=vf-module-number, status=null, property=,
        dictionaryName=vf-module-number, dictionarySource=default]], [[name=vf-module-type,
        status=null, property=, dictionaryName=vf-module-type,
        dictionarySource=processor-db]], [[name=interface-description, status=null,
        property=, dictionaryName=interface-description,
        dictionarySource=capability]]])
        2019-08-12
        15:44:39,171|||reactor-http-epoll-40||||INFO||||||| Setting Resource Value
        (6) for Resource Name (prefix-id), definition(prefix-id) of type (integer)
        2019-08-12
        15:44:39,396|||reactor-http-epoll-40||||INFO||||||| primary-config-data
        dictionary information : (/api/ipam/prefixes/
        6/available-ips/),
        ({prefix-id=prefix-id}), ({address=address, id=id})
        2019-08-12
        15:44:39,567|||reactor-http-epoll-40||||INFO||||||| Rest request
        method(POST), url(/api/ipam/prefixes/6/available-ips/)
        2019-08-12
        15:44:39,705|||reactor-http-epoll-40||||INFO||||||| Response status(201 -
        Created)
        2019-08-12
        15:44:39,720|||reactor-http-epoll-40||||INFO||||||| Response processing
        type(dt-netbox-ip)
        2019-08-12
        15:44:39,747|||reactor-http-epoll-40||||INFO||||||| populating value for
        output mapping ({address=address, id=id}), from json
        ({"id":145,"family":4,"address":"10.0.101.132/24","vrf":null,"tenant":null,"status":{"value":1,"label":"Active"},"role":null,"interface":null,"description":"","nat_inside":null,"nat_outside":null,"tags":[],"created":"2019-08-12","last_updated":"2019-08-12T15:44:39.640231Z"})
        2019-08-12
        15:44:39,755|||reactor-http-epoll-40||||INFO||||||| For List Type Resource:
        key (address), value ("10.0.101.132/24"), type  ({string})
        2019-08-12
        15:44:39,816|||reactor-http-epoll-40||||ERROR||||||| failed in
        rr-processor-source-rest : Failed in template key ([name=vfw_interface_ip,
        status=failure, property=, dictionaryName=create_netbox_ip,
        dictionarySource=primary-config-data]) assignments with:
        "10.0.101.132/24" type is not supported
        org.onap.ccsdk.cds.controllerblueprints.core.BluePrintProcessorException:
        Failed in template key ([name=vfw_interface_ip, status=failure, property=,
        dictionaryName=create_netbox_ip, dictionarySource=primary-config-data])
        assignments with: "10.0.101.132/24" type is not supported
        at
        org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor.RestResourceResolutionProcessor.processNB$suspendImpl(RestResourceResolutionProcessor.kt:107)
        at
        org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor.RestResourceResolutionProcessor.processNB(RestResourceResolutionProcessor.kt)
        at
        org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor.RestResourceResolutionProcessor.processNB(RestResourceResolutionProcessor.kt:42)
        at
        org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor.ResourceAssignmentProcessor.applyNB(ResourceAssignmentProcessor.kt:91)
        at
        org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.ResourceResolutionServiceImpl$resolveResourceAssignments$2$invokeSuspend$$inlined$forEach$lambda$1.invokeSuspend(ResourceResolutionService.kt:223)
        at
        kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at
        kotlinx.coroutines.DispatchedTask.run(Dispatched.kt:238)
        at
        kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.kt:116)
        at
        kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:80)
        at
        kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:54)
        at
        kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
        at
        kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:36)
        at
        kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
        at
        org.onap.ccsdk.cds.blueprintsprocessor.selfservice.api.ExecutionServiceController.process(ExecutionServiceController.kt:89)
        at
        sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
        sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at
        sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at
        java.lang.reflect.Method.invoke(Method.java:498)
        at
        org.springframework.web.reactive.result.method.InvocableHandlerMethod.lambda$invoke$0(InvocableHandlerMethod.java:137)
        at
        reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:118)
        at
        reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1515)
        at
        reactor.core.publisher.MonoZip$ZipCoordinator.signal(MonoZip.java:247)
        at
        reactor.core.publisher.MonoZip$ZipInner.onNext(MonoZip.java:329)
        at
        reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:192)
        at
        reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:92)
        at
        reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:67)
        at
        reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:73)
        at
        reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1515)
        at
        reactor.core.publisher.MonoSingle$SingleSubscriber.onComplete(MonoSingle.java:171)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:794)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:560)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:540)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:426)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:794)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:560)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:540)
        at
        reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:426)
        at
        reactor.core.publisher.DrainUtils.postCompleteDrain(DrainUtils.java:131)
        at
        reactor.core.publisher.DrainUtils.postComplete(DrainUtils.java:186)
        at
        reactor.core.publisher.FluxMapSignal$FluxMapSignalSubscriber.onComplete(FluxMapSignal.java:213)
        at
        reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136)
        at
        reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:252)
        at
        reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136)
        at
        reactor.netty.channel.FluxReceive.terminateReceiver(FluxReceive.java:390)
        at
        reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:197)
        at
        reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:338)
        at
        reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:350)
        at
        reactor.netty.http.server.HttpServerOperations.onInboundNext(HttpServerOperations.java:459)
        at
        reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:91)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at
        io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
        at
        reactor.netty.http.server.HttpTrafficHandler.channelRead(HttpTrafficHandler.java:190)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at
        io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
        at
        io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:438)
        at
        io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:323)
        at
        io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:297)
        at
        io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:253)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at
        io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
        at
        io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1408)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at
        io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at
        io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930)
        at
        io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:796)
        at
        io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:432)
        at
        io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:333)
        at
        io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:906)
        at
        io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
        at
        java.lang.Thread.run(Thread.java:748)
        Caused
        by: org.onap.ccsdk.cds.controllerblueprints.core.BluePrintException:
        "10.0.101.132/24" type is not supported
        at
        org.onap.ccsdk.cds.controllerblueprints.core.CustomFunctionsKt.asJsonPrimitive(CustomFunctions.kt:92)
        at
        org.onap.ccsdk.cds.controllerblueprints.core.utils.JacksonUtils$Companion.populatePrimitiveValues(JacksonUtils.kt:247)
        at
        org.onap.ccsdk.cds.controllerblueprints.core.utils.JacksonUtils$Companion.populateJsonNodeValues(JacksonUtils.kt:287)
        at
        org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor.RestResourceResolutionProcessor.populateResource(RestResourceResolutionProcessor.kt:190)
        at
        org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor.RestResourceResolutionProcessor.processNB$suspendImpl(RestResourceResolutionProcessor.kt:95)
        ... 72
        common frames omitted
        
       
      
      
      
      
       

       

            omimtl omimtl
            omimtl omimtl
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: