Developer Setup

To ease developer setup, we have Pulplift which is based on the Forklift project and utilizes Ansible roles and playbooks to provide supported Vagrant boxes that are more consistent with the user experience.

Clone the ‘pulplift’, ‘pulp’, ‘pulpcore-plugin’ and ‘pulp_file’ (or any plugins that you’ll be working on) repos into the same directory so that they are peers.

Navigate into the pulplift directory. Follow the installation instructions in the README.md which will clone the required forklift and ‘ansible-pulp’ repos.

The parent directory of ‘pulplift’ is going to be mounted into the vagrant box at /home/vagrant/devel. Any plugins that need to be installed should be added to the pulplift/ansible-pulp/source-install.yml playbook. The paths to the source of the plugins should start with /home/vagrant/devel/. For example:

pulp_install_plugins:
  pulp-python:
    app_label: "python"
    source_dir: "/home/vagrant/devel/pulp_python"
  pulp-file:
    app_label: "file"
    source_dir: "/home/vagrant/devel/pulp_file"

Once this is complete, take a look at available boxes with ‘vagrant status’ and then spin up your chosen environment:

vagrant up pulp3-source-fedora28

Activate your virtual environment:

workon pulp

Happy developing!