Unable to create persistent builds with Gateway Policy Plugin

book

Article ID: 210643

calendar_today

Updated On:

Products

CA API Gateway

Issue/Introduction

Currently I'm running into issues where I don't seem to be able to make consistent dependencies when using a project with multiple depend modules like the example in the documentation 


The issue I'm having with this is that I'm able to export a set of configuration and are unable to re-import this to a new gateway. E.g.: The dependency between "main module  " and the " shared module  " doesn't seem to be resolve-able and this gives a "corrupt" configuration when importing it into the gateway  

I've done multiple builds in the directories builds/build-1,2,3. These are created without editing anything in the actual policies, just multiple calls of gradle clean build-bundle.


Looking at a diff from builds/build-1/general-1.0.0.install.bundle to builds/build-2/general-1.0.0.install.bundle I see the cause of this issue:
After each run of  gradle clean build-bundle the UUID is  changed and is  inconsistent between the depend modules.

Cause

Due to a caching issue in gradle deamon the depend bundle will be created with the UUID from he first build and  not with the updated UUID from following builds.

Environment

Release : 9.4

Component : API GATEWAY

Resolution

The problem is caused by the gradele deamon which is caching the uuid for the first build , as a workaround you can also make sure to disable the use of the gradle deamon.

This only works when running gradle from the command prompt , running it from a IDE will always use the deamon .

The fix for this is  included in the gateway-policy-plugin:1.0.4 .