6 Replies Latest reply on Feb 20, 2014 2:05 PM by Sachin_Lokhande_OSM

    [OSM] [Dependency] How can reverse dependencies be configured

    Rakesh N

      The following is the business requirement for a Product Spec PS1 -

      If Action Code is ADD - Function A --> Function B
      If Action Code is DELETE - Function B --> Function A

      Fulfillment Mode is DELIVER for both the scenarios with just different Action Codes.

      This is NOT a rare requirement since Fulfillment Systems expect instructions to provision a service and terminate a service in reverse order. When an order is cancelled in-flight, that's how OSM typically rolls back the activities - in reverse order. However, this requirement is for a ceasing an existing service and NOT cancellation.

      I configured the above 2 required dependencies in a Product Spec using Property Correlation Order Item Dependency. The xqueries of those dependencies are such that only one of them will return <osm:dependency/> nodes. The cartridge was built successfully with warnings. And cartridge was deployed successfully. However, on submission of order, OSM threw a circular dependency error. In order to rule out possibility of erroneous xqueries, I have made both of them return () only. So technically none of the dependencies will be created in the final orchestration plan. However, the error still persists.

      So, one can safely conclude that OSM cannot tolerate reverse dependencies in a Product Spec regardless of them being in the final orchestration plan. (BUG?)

      Is there any elegant solution to configure such dependencies.

      Thanks in advance

      Edited by: Rakesh N on 24-May-2013 06:15

      Edited by: Rakesh N on 24-May-2013 06:17

      Edited by: Rakesh N on 24-May-2013 06:18