Apigee maven deployment plugin: Creation of KVM's and editing/update of KVM's not working

Hello All,

While deploying the apigee proxy, KVM’s are not getting created. Even unable to edit or update the KVM’s.

I have mentioned the KVM’s and entries in edge.json

Scenarios tested:

KVM is not getting created/updated, in any of the below case.

Case -1 : Adding the additional key and value to existing KVM

Case -2 : Adding the additional KVM itself with new values

Case -3 : Case-1 and 2 with -Dapigee.config.options=create

Case -4 : Case-1 and 2 with -Dapigee.config.options=update

Edge json is below

@ssvaidyanathan : Please check here.

Eg: test-edge.json

{
“version”: “1.0”,
“envConfig”: {
“test”: {
“targetServers”: [
{
“name”: “ApigeeTemplate_V2”,
“host”: “10.xx.xx”,
“isEnabled”: true,
“port”: 4420
}
],
“kvms”: [
{
“name”: “Variables”,
“encrypted”: false,
“entry”: [
{
“name”: “username”,
“value”: “IntegrationUser”
},
{
“name”: “password”,
“value”: “xxxxx”
}
]
}
]
},
“public-test”: {
“targetServers”: [
{
“name”: “ApigeeTemplate_V2”,
“host”: “10.xxxxx”,
“isEnabled”: true,
“port”: 4420
}
],
“kvms”: [
{
“name”: “Variables”,
“encrypted”: false,
“entry”: [
{
“name”: “username”,
“value”: “IntegrationUser”
},
{
“name”: “password”,
“value”: “xxxxx”
}
]
}
]
},
“mxx-internal-clients”: {
“targetServers”: [
{
“name”: “ApigeeTemplate_V2”,
“host”: “10.xxx.xx.xx”,
“isEnabled”: true,
“port”: 4420
}
],
“kvms”: [
{
“name”: “Variables”,
“encrypted”: false,
“entry”: [
{
“name”: “username”,
“value”: “IntegrationUser”
},
{
“name”: “password”,
“value”: “12xxxx”
}
]
}
]
},
“trusted_test”: {
“targetServers”: [
{
“name”: “ApigeeTemplate_V2”,
“host”: “10.xxxx.xxx”,
“isEnabled”: true,
“port”: 4420
}
],
“kvms”: [
{
“name”: “CourtsVariables”,
“encrypted”: false,
“entry”: [
{
“name”: “username”,
“value”: “IntegrationUser”
},
{
“name”: “password”,
“value”: “12xxxx”
}
]
}
]
}
},
“orgConfig”: {
“apiProducts”: [
{
“apiResources”: ,
“approvalType”: “manual”,
“attributes”: [
{
“name”: “access”,
“value”: “public”
},
{
“name”:“Portal-Role-Name”,
“value”:“developers, external_developers_, public_developers”
}
],
“description”: “ApigeeTemplate_V2 Desc”,
“displayName”: “ApigeeTemplate_V2prod”,
“environments”: [
“test”,
“public-test”,
“moj-internal-clients”,
“trusted_test”
],
“name”: “Proxy-ApigeeTemplate_V2”,
“proxies”: [“template-new1”,
“template-new12”,
“template-new123”]
}
]
}
}

Which version of Apigee are you using this with? eg Edge or X?

Also - can you share your pom and the maven command your calling?

hi @ssvaidyanathan please find the POM.xml file

maven command for deploy is

-Pmoj_real_stage -Dapigee.config.options=create -s C:\settings.xml -Dusername=$(user_local) -Dpassword=$(user_pass) -Doptions=validate -Dprofile=internal-clients -Dapigee.config.file=$(System.DefaultWorkingDirectory)/$(Edge_BranchName)/stage-edge.json

Send you pom.xml file to your maild id as i can’t paste or attach here.

Thanks for sending it. Looks like you dont have the execution step for keyvaluemaps defined in your pom.xml. Add the below lines to your config plugin section. You can put it after the targetserver section you have

<execution>
  <id>create-config-keyvaluemaps</id>
  <phase>verify</phase>                        
  <goals>
    <goal>keyvaluemaps</goal>
  </goals>
</execution>

@ssvaidyanathan Thanks. It helps.

Pls mark this as solved if it resolved your issue