Skip to content

Latest commit

 

History

History
239 lines (219 loc) · 16 KB

content-plugins.md

File metadata and controls

239 lines (219 loc) · 16 KB
title sidebar permalink toc
Content Plugins
home_sidebar
/content-plugins/
true

Content Plugins

After you install Pulp, you must add a content plugin for each content type that you want to manage. The following sections contain information about the available content plugins for both Pulp 2 and Pulp 3. If you do not find the plugin for the content type you want to manage, consider writing a plugin.

Plugin Changes between Pulp 2 and Pulp 3

  • The ISO content support found in the Pulp 2 RPM plugin is now provided by the File plugin.
  • The Docker plugin in Pulp 2 has been replaced by the Container plugin.
  • Currently, there are no Pulp 3 plugins for Puppet and OSTree content.

Pulp 3 Content Plugin Features

Click the relevant tab of the content plugin that you want to learn more about.

Manage RPM content

  • Create, sync and publish a repository with RPM Content including RPMs, Advisories, Modularity, and Comps.
  • Version content and rollback if necessary.
  • Download content on-demand when requested by clients to reduce disk space.
  • Upload local RPM content in chunks.
  • Add, remove, copy, and organize RPM content into various repositories.
  • Host content either locally or on S3.
  • View distributions served by pulpcore-content in a browser.
  • De-duplication of all saved content.

Manage File content

  • Sync File packages from a remote to local repository.
  • Upload your own files.
  • Publish and organize files.

Manage Container content

  • Synchronize container image repositories hosted on Docker-hub, Google Container Registry, Quay.io, and others in mirror or additive mode.
  • Version content and rollback if necessary.
  • Download content on-demand when requested by clients to reduce disk space.
  • Perform docker/podman pull from a container distribution served by Pulp.
  • Curate container images by whitelisting what is mirrored from an external repository.
  • Curate container images by creating repository versions with a specific set of images.
  • De-duplication of all saved content.

Manage Ansible roles and collections

            <ul>
                <li>Mirror a subset of roles on-premise.</li>
                <li>Mirror all of Galaxy’s roles on-premise.</li>
                <li>Store private Ansible roles on-premise.</li>
                <li>Install roles from pulp_ansible using the ansible-galaxy CLI.</li>
                <li>Version content and rollback if necessary.</li>
                <li>Support for the new multi-role content type from Galaxy.</li>
            </ul>
        </div>
        <div class="tab-pane fade" id="deb">
            <p>Manage Debian content</p>
            <ul>
                <li>Synchronize remote repository content and metadata locally.</li>
                <li>Upload your own content.</li>
                <li>Publish content to one or more repositories.</li>
              </ul>
        </div>
        <div class="tab-pane fade" id="python">
            <p>Manage Python content</p>
            <ul>
                <li>Synchronize Python packages from PyPI locally.</li>
                <li>Upload your own Python packages.</li>
                <li>Publish and organize Python packages just like PyPI.</li>
                <li>Install Python packages using pip as published by Pulp.</li>
            </ul>
        </div>
        <div class="tab-pane fade" id="gem">
            <p>Manage RubyGem content</p>
            <ul>
                <li>Synchronize remote repository content and metadata locally.</li>
                <li>Upload your own content.</li>
                <li>Publish content to one or more repositories.</li>
              </ul>
        </div>
        <div class="tab-pane fade" id="maven">
            <p>Manage Maven content</p>
            <ul>
            <li>Synchronize packages from a remote to local repository.</li>
            <li>Upload your own Maven content.</li>
            <li>Publish and organize packages.</li>
              </ul>
        </div>
        <div class="tab-pane fade" id="cookbook">
            <p>Manage Chef Cookbook content</p>
            <ul>
                <li>Sync Cookbook content from a remote to local repository.</li>
                <li>Upload your own content.</li>
                <li>Publish and organize content.</li>
            </ul>
        </div>
    </div>
</div>

Pulp 3 Content Plugins Information

This table contains links to information and sources for all Pulp 3 content plugins. If a plugin is missing contact us.

| Pulp Plugin | Docs | Source | Tracker | Install with PyPI | Install with RPM | |-------|--------|---------|--------|---------|-------- |--------- | | Ansible plugin | Ansible plugin docs | Ansible plugin source | Ansible plugin tracker | Yes | No | | Chef cookbook plugin | Cookbook plugin docs | Cookbook plugin source | Cookbook plugin tracker | Yes | No | | Debian plugin | DEB plugin docs | DEB plugin source | DEB plugin tracker | Yes | No | | Container plugin | Container plugin docs | Container plugin source | Container plugin tracker | Yes | No | | File | File plugin docs | File plugin source | File plugin tracker | Yes | No | | GalaxyNG plugin | GalaxyNG plugin docs | GalaxyNG plugin source | GalaxyNG tracker | Yes | No | | Gem plugin | Gem plugin docs | Gem plugin source | Gem plugin tracker | Yes | No | | Maven plugin | Maven plugin docs | Maven plugin source | Maven plugin tracker | Yes | No | | Python plugin | Python plugin docs | Python plugin source | Python plugin tracker | Yes | No | | RPM plugin | RPM plugin docs | RPM plugin source | RPM plugin tracker | Yes | No |

Pulp 2 Content Plugins Features

At some point, Pulp 2 will become End of Life. For more information about migrating from Pulp 2 to Pulp 3, see the migration plugin documentation.

Manage RPM content

  • Supports RPMs, DRPMs, SRPMs, Errata, Kickstart Trees, and repository metadata
  • Sync remote repository content and metadata locally
  • Upload your own content
  • Publish content to one or more repositories
  • Published content is installable with yum/dnf
  • On demand fetching of content allowing repositories to be synced and published without storing everything locally
  • Fetch content protected by basic or certificate based authentication
  • Protect content with certificates to be used by yum/dnf clients

Manage DEB content

  • Supports DEB packages and metadata
  • Sync remote repository content and metadata locally
  • Upload your own content
  • Publish content to one or more repositories
  • Published content is installable with apt-get
  • Sign repository metadata

Manage Python content

  • Sync Python packages from PyPI locally
  • Upload your own Python packages
  • Publish and organize Python packages just like PyPI
  • Install Python packages using pip as published by Pulp

Manage Puppet content

  • Sync Puppet modules from Puppet Forge locally
  • Upload your own Puppet modules
  • Publish and organize Puppet modules just like Puppet Forge
  • Use the Puppet client to install Puppet modules published by Pulp

Manage Docker content

  • Sync Docker modules from the Docker Registry
  • Publish and organize Docker containers
  • Install Docker containers as published by Pulp and served with Crane

Pulp 2 Content Plugins Information

This table contains links to information and sources for all Pulp 2 content plugins. If a plugin is missing contact us.

| Pulp Plugin | Docs | Source | Tracker | Install with PyPI | Install with RPM | |-------|--------|---------|--------|---------|-------- |--------- | | RPM plugin | RPM plugin docs | RPM plugin source | RPM plugin tracker | No | Yes | | Debian plugin | DEB plugin docs | DEB plugin source | DEB plugin tracker | No | Yes | | Docker plugin | Docker plugin docs | Docker plugin source | Docker plugin tracker | No | Yes | | Python plugin | Python plugin docs | Python plugin source | Python plugin tracker | No | Yes | | Puppet plugin | Puppet plugin docs | Puppet plugin source | Puppet plugin tracker | No | Yes |

Are we missing a plugin? Let us know via the [email protected] mailing list.