User Tools

Site Tools


Sidebar

General Lab Info (Mainly for Devs)

Hardware

Lab Infrastructure Services

Misc Admin Tasks
These are infrequently completed tasks that don't fit under any specific service

Production Services

OVH = OVH
RHEV = Sepia RHE instance
Baremetal = Host in Sepia lab

The Attic/Legacy Info

services:pulp

Summary

The Pulp project is an open-source platform that streamlines software repository management and content distribution across diverse environments. By automating package lifecycle tasks like mirroring, hosting, and versioning, it ensures reliable and consistent artifact delivery for complex systems.

To learn more, please refer to https://pulpproject.org.

Deployment

By adopting a cloud-native strategy, the Pulp cluster is deployed on OpenShift to achieve optimal scalability and high availability. The official resources for OpenShift deployment can be accessed at Pulp Project Documentation.

  • Operator-Based Deployment: The architecture utilizes the Pulp Operator to manage the full lifecycle of the Pulp components, including database (PostgreSQL) and cache (Redis) instances.
  • Persistent Storage: Artifact storage is managed via Persistent Volume Claims (PVCs), ensuring data persistence across pod restarts and updates.
  • Exposure: The service is exposed externally using OpenShift Routes, providing secure access to the Pulp API and content distribution services.
  • Configuration: Cluster settings, such as resource limits, replica counts, and storage classes, are defined within custom resource definitions (CRDs), allowing for consistent deployments across environments.

Accessing Pulp Repositories

Use pulp-cli to search, filter, and manage Ceph package repositories by leveraging metadata labels.

Prerequisites

The pulp-cli tool must be installed and configured with the appropriate server username and password. Refer to the Pulp CLI installation guide for installation instructions.

Configure Pulp Client

To configure the Pulp client, run the following command with ceph specific Pulp username and password.

$ pulp config create --base-url https://pulp.apps.pok.os.sepia.ceph.com/pulp/api/v3/ --username <PULP_USERNAME> --password <PULP_PASSWORD>

Filtering Repositories by Label

Ceph repositories use metadata labels such as branch names, Ceph versions, or operating systems to help you isolate the specific artifacts you need.

  • List repositories by a single label
    • $ pulp <rpm | deb> repository list –label-select “branch=<branch_name>”
  • List repositories using multiple labels
    • $ pulp <rpm | deb> repository list –label-select “branch=<branch_name>,distro=<os_distro>”

Inspecting Repository Content

After identifying the target repository using label queries, view the specific packages hosted within it.

$ pulp rpm repository show --name <repository_name>

Purge and Retention Policy

The automated cleanup cycle initiates daily at midnight to maintain storage efficiency. Data longevity is governed by the following retention framework

  • Branch-Specific Configurations: Unique branch settings define varying storage durations (typically 14 to 30 days) and ensure the preservation of a mandatory build count (between 2 and 10 builds) as specified by the policy.
  • Standard Retention: Branches lacking custom rules adhere to a baseline default policy, which maintains artifacts for 14 days without a guaranteed minimum build count.
services/pulp.txt · Last modified: 2026/07/16 13:06 by vaibhav