Apigee config maven plugin error-Not creating config details in higher environment from lower env

Hi Everyone,

Hope everyone is doing good. I would like you guys to have me offer some help with the apigee config maven plugin. While i was promoting proxy from lower environment to higher environment, my config could able to only deploy the proxy alone, leaving config details(kvm, developer app, product, developer app) unconfigured in higher environment. I tried even with github hosted apigee config maven plugin (sample/Helloworld proxy and its associated configuration ) but i could not find much better result. Please find the apiproxy bundle(sample proxy-apigee conifg maven plugin) as attachment which has (edge.json.config.json,pom.xml).

Attachment is the proxy bundle(sample-proxy-apigee-conifg-maven-plugin.zip) i wish to promote.

If there is anything else my config needs to be updated please sugggest me Thanks and Regards, Mani

sample-proxy-apigee-conifg-maven-plugin.zip

1 5 730
5 REPLIES 5

pomxml.zip

Hi @manikanta ponneri

Found few issues in the code you shared

  1. The edge.json has a missing quote so was not a clean edge.json
  2. In your pom.xml you did not include any execution goals for keyvaluemaps under the config plugin. I have included other goals like targetservers, caches as well to the pom in case you plan to add them later. I have modified your pom.xml and attached here. Please check if this does the trick.
  3. I would also recommend you to use the config in a folder structure like the sample here. You just need to pass additional argument in the maven command and that is -Dapigee.config.dir=<path>. This will help you to organize your config if they grow too long (instead of putting that all in one edge.json file)

Hi Sai Saran

Thanks for sharing the information.

I followed the instructions i was asked to correct in edge.json

How does this plugin evaluates this configuration info(edge.json) is it either form D:\dck\depa\edg\APIandConfig\GenJWT \edge.json or from D:\dck\depa\edg\EdgeConfig\resources\edge\* ?

Upon running the build command..its saying that it couldnot find kvm.json etc and it didnt even checking entities in ORG. Actually as per env config(only kvm) and in org config(developer,app,product) i set only this. But As usual proxy alone getting deployed leaving config information as it is in source.

i tried even template for structuring the folder in GIT In edge.json file , data for product/apps/developers is the one obtained from managemnt API right ?i copied exactly the same data i got from Mgmt API and under pasted under respective entity name i,e product /app etc I have attached the Bundle (as per GIT template).

Can you please check this by cloning? Hope your help is well appreciated.

Thanks and Regards,

Mani

newone2.zip

@manikanta ponneri

By default the plugin looks for the "edge.json" in the same directory as your pom.xml. If your edge.json is in a different directory, you can pass -Dapigee.config.file=<path-to-edge.json> in your maven command

If you want to use the directory structure, you need to pass the -Dapigee.config.dir argument in the maven command or add it to your pom profile like this

<apigee.config.dir>/path/to/resources</apigee.config.dir>

In the folder structure you need to follow the examples - name the files appropriately like kvms.json, targetservers.json, etc.

For your issue - I am assuming you are not passing the -Dapigee.config.options parameters. This is required for the config plugin to run, else it will skip. Its all there in the plugin docs. It supports options like create, update, delete, sync.

Did that work ?

Thanks for sharing the solution, valuable for me too.