Configuring Puppet Master for WSO2 Cartridges
Follow the steps giving below to configure Puppet Master for WSO2 cartridges:
To set up Puppet Master, it is not mandatory to configure the modules mentioned below. The following are required only when configuring the servers that are being used by the respective application.
Example: If the ESB cartridge is the only cartridge that is being used in the application, you are only required to set up the modules related to ESB.Â
Copy the respective product pack in the
.zip
format to thepacks
folder, which is in theÂ/etc/puppet/modules/wso2installer/files/<SERVER_NAME>
 directory.Â
Example: When configuring ESB, navigate to theÂ/etc/puppet/modules/wso2installer/files/wso2esb481/packs
 directory.You can download the product pack from the respective products download page.
Example: Download ESB from here.
Download the respective WSO2 product cartridge via the PPaaS product page and unzip it. The unzipped folder will be referred to as
<CARTRIDGE_HOME>
.
For example, to download the ESB cartridge, navigate to the PPaaS product page and click Cartridges > wso2esb-4.8.1-cartridge-4.1.1.Copy the respective template module ZIP file, which is in the
<CARTRIDGE_HOME>/templates-module/target
 directory to theÂ/etc/puppet/modules/wso2installer/files/<SERVER_NAME>/packs
 directory.Change the file permission value, for content in theÂ
/etc/puppet/modules/wso2installer/files/<SERVER_NAME>/packs
 directory, to0755
.chmod 755 <server_pack>.zip chmod 755 <template_module>.zip
Download the Python Cartridge Agent (PCA) plugin, via the PPaaS product page, and copy the downloaded ZIPÂ file to theÂ
/etc/puppet/modules/wso2installer/files/<SERVER_NAME>/plugins
 directory.Change the file permission of the content in the
/etc/puppet/modules/wso2installer/files/<SERVER_NAME>/plugins
 directory to0755
.Âchmod 755 wso2esb-481-startup-handler.py chmod 755 wso2esb-481-startup-handler.yapsy-plugin
Update the respective entry inÂ
nodes.pp
file, which is in the/etc/puppet/manifests/nodes/nodes.pp
 directory with the following server variables.
Example: If you are updating the ESB server, you can update the file as follows:# ESB cartridge node node /[0-9]{1,12}.*wso2esb-481/ inherits base { class { 'java': } class { 'python_agent':} class { 'configurator': } class {'wso2installer': server_name => 'wso2esb-4.8.1', module_name => 'wso2esb481' } }