Hi,
Currently we are running the APIM cluster without specifying any profiles
[1].
i.e. when templating wso2server.sh file, -Dprofile parameter values
(gateway-worker, gateway-manager, api-key-manager, api-publisher, api-store)
are not given.
However the required store and publisher jaggeryapps are added/removed by
puppet scripts when starting each profile instance.
As for an example during the initialization of gateway instance, store and
publisher apps are removed as follows.
exec { "removing_publisher_app_for_gateway":
path =>
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
command => "rm -rf
$carbon_home/repository/deployment/server/jaggeryapps/publisher",
require => Apimanager::Deploy["${deployment_code}_${amtype}"],
}
exec { "removing_store_app_for_gateway":
path =>
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
command => "rm -rf
$carbon_home/repository/deployment/server/jaggeryapps/store",
require => Apimanager::Deploy["${deployment_code}_${amtype}"],
}
This is performed accordingly in each profile instance of the cluster.
i.e. in store instance publisher app is removed, in publisher instance
store app is removed,
in keymanager instance both apps are removed.
WDYT about this approach?
We had to go to this approach since we started to get some
NoClassDefFoundError errors [2]
when automating cluster based tests.
[1] https://docs.wso2.com/display/AM191/Product+Profiles
[2] [Dev] OpenIDConnect - Error while accessing UserInfo Endpoint
Thanks,
Suhan
--
Suhan Dharmasuriya
Software Engineer - Test Automation
*WSO2, Inc. *
lean . enterprise . middleware
Tel: +94 112 145345
Mob: +94 779 869138
Blog: http://suhan-opensource.blogspot.com/
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev