Hi,

We have  created separate GitHub repos for Puppet modules so that the
Puppet module can be shipped as part of a product release.

Since modules are distributed we have introduced a script to generate
PUPPET_HOME. The script will work as following.

 1. Check puppet_home folder exists.

 2. Create folder structure required for puppet_home.
    ├── hiera.yaml
    ├── hieradata
    ├── manifests
    └── modules

3.  Create a symlink to manifest/site.pp file.

4. Clone wso2base puppet module into  <PUPPET_HOME>/modules directory.

5. Create a symlink to wso2base common.yaml hiera-file.

> <PUPPET_HOME>/modules/wso2base/hieradata/wso2/common.yaml ->
> <PUPPET_HOME>/hieradata/dev/wso2/


6. Clone wso2<product> puppet module into  <PUPPET_HOME>/modules directory.

7. Create a symlink to wso2<product> hiera-files.

>   <PUPPET_HOME>/wso2<product>/hieradata/dev/wso2/wso2<product> ->
> ../hieradata/dev/wso2/


Once the setup.sh completes, users can copy product pack and jdk
distribution for relevant folders and run vagrant setup against
above-created puppet home.

We are planning to automate the copying of product pack, jdk distribution
and starting vagrant setup as well.

Setup.sh can be found at [1]. Please share your suggestions towards this
approach.

[1] https://github.com/wso2/puppet-common/blob/master/setup.sh

-- 
*Thanks and Regards,*
Anuruddha Lanka Liyanarachchi
Software Engineer - WSO2
Mobile : +94 (0) 712762611
Tel      : +94 112 145 345
a <thili...@wso2.com>nurudd...@wso2.com
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to