

I don’t know if this is optimal, but this works for many people with the defaults.

Since I didn’t have a guide, I took a look at what happens when you enable NFS on a Synology. I found myself frustrated with the vSphere docs because they only seem to cover the vSphere side of the house – when discussing the export that vSphere will use, the docs simply said, “Ask your vendor.” If you’re enabling NFS on your SAN and they have a one-click setup for you or a document with settings to enable, great, but if you’re setting up on a bare metal server or VM running Linux like me, you don’t have a vendor to ask. Over the past few days, I’ve had to set up an NFS export for use with vSphere. Using the magic of sed, I generated a tool called generate-puppetfile that will install the specified modules in temp directories and use the module listing to build a Puppetfile for you. Vi is interactive, though, we can do better. Here are some of the patterns you need, in vi format: :%s/\s**\s/mod "/ In the past, I’ve shown how you can then use puppet module list and some search and replace patterns to convert to a Puppetfile, but it was all manual and it was scattered through the blog article.

Give it a module and a new temporary directory, to ensure we don’t already have a dependency in our path, and you’ll end up with what you need. If you use puppet module install, it will install the module and all its dependencies for you. That’s pretty boring and a recipe for mistakes. You can do this by visiting a module’s forge page, then clicking on dependencies, then clicking on each dependency’s forge page and clicking on dependencies until you reach the bottom. Until then, it’s up to you to determine the module dependencies. It’s on the roadmap, but not here yet ( RK-3 tracks the effort).

Currently, r10k does not perform dependency resolution.
