For the complete documentation index, see llms.txt. This page is also available as Markdown.

Puppet

spinner

Before you begin

  • Puppet CLI or r10k: Install and configure on your local machine before proceeding.

  • Harness permissions: Registry-create access in the target project. Go to RBAC in Harness to configure roles.


Create a Puppet Artifact Registry

  1. Go to the Artifact Registry module in your Harness project.

  2. Select New Artifact Registry.

  3. In the Registry Type list, select Puppet Registry.

  4. Provide a Registry Name.

    REGISTRY NAME REQUIREMENTS

    This registry name must start with a letter and can only contain lowercase alphanumerics, _, . and -, and must be unique to your Harness Account.

  5. Optionally, add a Description and Labels for better organization.

  6. Choose visibility between Public and Private.

  7. Select Create Registry to finalize.

PRIVATE PUPPET REGISTRY

This registry will serve as your private Puppet module registry within Harness.


Configure an upstream proxy (optional)

An upstream proxy allows your registry to fetch Puppet modules from external sources (such as the Puppet Forge) if they are not available locally.

Create an upstream proxy

  1. In the Artifact Registry module, select the dropdown next to New Artifact Registry and select Upstream Proxy.

  2. Choose Puppet Registry as the proxy type.

  3. Enter an upstream proxy name.

  4. Enter your remote registry URL (for example, https://forgeapi.puppet.com).

  5. Choose your Authentication method (Anonymous by default).

  6. Select Create Proxy to establish the connection.

Configure the upstream proxy in your registry

  1. In the Artifact Registry module, select an existing Artifact Registry.

  2. Select the Configuration tab.

  3. Under Advanced (Optional), select Configure Upstream.

  4. Select from the list of compatible proxies to add them to your registry.

  5. Select Save to save the configuration.

UPSTREAM PROXY CACHING

If a Puppet module is not found in your Harness registry, the upstream proxy fetches it from an external registry like the Puppet Forge, reducing duplication and improving module resolution.


Set up the client

With your Puppet registry created, you can now authenticate with your Harness registry using Puppet CLI or r10k.

1. Configure authentication

In your Harness Puppet Artifact Registry, select Setup Client and then Generate Token to generate an identity token for authentication.

2. Install a Puppet module

Edit /etc/puppetlabs/puppet/puppet.conf:

Install the module:

Edit r10k.yaml:

Add the module to your Puppetfile:

Resolve the Puppetfile:

3. Upload a Puppet module

Upload the module tarball using the Harness CLI:

Last updated

Was this helpful?