Should there be "templates/" and "files/" directories under the "profile" organizational module ?
I've read quite a lot of documentation about roles and profiles and I still can't figure out if I should create, for example, a profile solr with the following structure:
dist/
├── profile
│ ├── manifests
│ │ ├── solr.pp
│ ├── files
│ │ ├── solr.service
Although declaring a file resource to deploy 'solr.service' in '/etc/systemd/system/' works like a charm, I feel like having files/ and templates/ directories in the profile module will become soon a big messy place: profile would become one big module that deploys tons of different config files for douzens of different services...
Should I systematically create a custom "solr" module and then include ::solr from the profile ? Problem I encounter with this solution: I often use a solr module from the forge and would like to add just a small piece of config on the top of it... Then I got :
- dist/profile/manifests/solr.pp (my site specific class that declare class { "solr" :} with parameters)
- modules/solr/manifests/init.pp (module from the forge)
- site/solr_misc/manifests/init.pp (my custom module with a single class that will only deploy the systemd solr.service file)
What would be the "roles & profiles" best practice ?