* [Resource Type Reference](https://puppet.com/docs/puppet/6.0/type.html)
### Where to start
- Play around with Puppet. You might want to use <ahref="https://learn.puppet.com/">Puppet Training</a>
- Adopt <ahref="https://docs.puppet.com/hiera/">Hiera</a> as early as possible to allow you to write clean code
- Adopt the Roles and Profiles pattern as early as possible
- Once Hiera and the Roles and Profiles pattern have been adopted look into the following:
- Test Driven Development using <ahref="https://github.com/rodjek/rspec-puppet/">rspec-puppet</a>
- Deployment through controlled environments with <ahref="https://puppet.com/docs/pe/2019.0/r10k.html">r10k</a>
### Hiera
Use Hiera to separate your data / parameter values from your Puppet code
### eyaml
When you need to store sensitive data such as password for service accounts, use eyaml as a Hiera back-end. The secrets will become available in your puppet code as facts.
Have a look at the following article for more information: <ahref="https://puppet.com/blog/encrypt-your-data-using-hiera-eyaml">Encrypt Your Data Using Hiera-Eyaml</a>