Applying Settings

Pulp uses dynaconf for its settings which allows you to configure Pulp in a few ways:

By Configuration File

To configure Pulp by settings file, you must set the format and location of the config file by specifying the PULP_SETTINGS environment variable. For example, if you wanted to use Python to specify your configuration, and provide it at /etc/pulp/settings.py you could:

export PULP_SETTINGS=/etc/pulp/settings.py

Or in a systemd file you could:

Environment="PULP_SETTINGS=/etc/pulp/settings.py" as the Ansible Installer does.

Dynaconf supports settings in multiple file formats Dynaconf also support local settings file

This file should have permissions of:

  • mode: 640

  • owner: root

  • group: pulp (the group of the account that pulp runs under)

  • SELinux context: system_u:object_r:etc_t:s0

If it is in its own directory like /etc/pulp, the directory should have permissions of:

  • mode: 750

  • owner: root

  • group: pulp (the group of the account that pulp runs under)

  • SELinux context: unconfined_u:object_r:etc_t:s0

By Environment Variables

Many users specify their Pulp settings entirely by Environment Variables. Each of the settings can be configured using Dynaconf by prepending PULP_ to the name of the setting and specifying that as an Environment Variable. For example the SECRET_KEY can be specified by exporting the PULP_SECRET_KEY variable.

When using pulp_installer

A Pulp upgrade using pulp_installer may override the original /etc/pulp/settings.py. To keep your settings through an upgrade, use the local settings file located at /etc/pulp/settings.local.py.