Access to the ASM appliance could allow one to load Puppet modules on the Puppet master. But barring login access, any Puppet module dependencies must be uploaded to ASM in the same way as the application module that depends on them. That is to say, for each dependency module we must add an asm_input.json file to the Puppet module, zip it, and then upload it to ASM in order to satisfy the dependency.
For example, puppetlabs-apache depends on the module puppetlabs-concat. So, to utilize puppetlabs-apache, we would have to first upload the puppetlabs-concat module.
Typically the dependency modules will not be used explicitly, so they can be simplified by leaving the classes and types arrays mostly empty. However, at least one class or resource must be declared in one of the classes or types arrays. A convenient way to satisfy this requirement is to declare a notify resource in the types array.
In fact, the generator script will do just this, by supplying the –-dependency argument to the generator script:
generate_asm_module.rb --dependency