Contribution Guide

hubploy is open-source and anyone can contribute to it. We welcome the help! Yuvi Panda is the original author and can give GitHub contributor access to those who are committed to making hubploy better. You do not have to be a contributor on GitHub to suggest changes in the Issues section or make pull requests. A contributor will have to accept your changes before they become a part of hubploy.

If you don’t have git already, install it and clone this repository.

git clone https://github.com/yuvipanda/hubploy

Using a forking workflow is also useful and will make seting up pull requests easier.

Once you have made changes that you are ready to offer to hubploy, make a pull request to the main hubploy repository. Someone will get back to you soon on your changes.

If you want to dicuss changes before they get onto GitHub or contact a contributor, try the JupyterHub Gitter channel.

Setting up for Documentation Development

The hubploy documentation is automatically built on each commit as configured on ReadTheDocs. Source files are in the docs/ folder of the main repository.

To set up your local machine for documentation development, install the required packages with:

# From the docs/ folder
pip install -r doc-requirements.txt

To test your updated documentation, run:

# From the docs/ folder
make html

Make sure there are no warnings or errors. From there, you can check the _build/html/ folder and launch the .html files locally to check that formatting is as you expect.

Setting up for Hubploy Development

See the How-To guide on setting up a development environment for hubploy.

In short, you can install hubploy and its dependencies easily with the above guide but you will need a kubernetes cluster to do local deployment tests. Some good resources for deploying a kubernetes cluster are:

  1. Zero to JupyterHub K8s
  2. AWS Terraform K8s Examples

You will also need to reference the section Using a Custom Hubploy Locally, rather than doing a default hubploy installation.