When you create a directory in Puppet using the
file type, you may get this error if you haven't already created all parents of the directory in question first:
err: /Stage[main]//File[/path/to]/ensure: change from absent to directory failed: Cannot create /path/to; parent directory /path does not exist
This puppet module defines a custom function
all_parents() which you can use to create a directory and all of its ancestors simultaneously.