Script to build local Puppet modules which can then be imported in to Katello. No need for Git repository or Puppet Forge.
A Katello repository may be a plain directory containing a Pulp manifest and packaged Puppet modules. According to the Pulp project documentation, the Pulp manifest is a file listing each Puppet module contained in the directory. Each module is listed on a separate line which has the following format: name,checksum,size.
The name is the file name, the checksum is SHA256 digest of the file, and the size is the size of the file in bytes. The Pulp manifest must be named PULP_MANIFEST.
Having this knowledge, we can build Puppet modules manually, generate a Pulp manifest and import everything in to Katello.
https://www.lisenet.com/2018/katello-separate-lifecycle-for-puppet-modules/