Skip to content

Latest commit

 

History

History
64 lines (46 loc) · 2.61 KB

CONTRIBUTING.md

File metadata and controls

64 lines (46 loc) · 2.61 KB

How to contribute to Promgen

First of all, thank you so much for taking your time to contribute! We always welcome your ideas and feedback. Please feel free to make any pull requests.

Setting up Promgen for development

The Promgen repository has a Makefile with various commands to make development easier. You can see some of the commands by running make help

If you are using an external database, you will want to create a promgen and test_promgen database before running bootstrap or make migrate and make test will fail.

# If you need to install Python first, try using your system's package manager
# Examples
# yum install python3 python3-pip
# homebrew install python3
# If using OSX with Homebrew, you may need to export some flags
# to get mysql client to install
# export LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib"
make bootstrap
# If you want to enable DEBUG (and development mode)
echo 1 > ~/.config/promgen/DEBUG

# Amend bootstrapped configuration by hand: ~/.config/promgen/promgen.yml

# Setup or update database schemas, create initial user and shard
make migrate
# Run tests
make test
# Run development server
make run

For development and testing, it may be useful to make a symlink for running Promgen

# Example symlink
ln -s $PWD/.venv/bin/promgen ~/bin/promgen 

By default promgen listens on port 8000. Login with the user admin and password admin. Remember to change the password!

Note: Promgen strives to be a standard Django application. Make sure to apply standard Django development patterns.

Custom Configuration Directory

By default promgen uses ~/.config/promgen as its configuration directory. This can be changed by setting the environment variable PROMGEN_CONFIG_DIR to an alternative location whenever calling promgen ... commands.

Contributor license agreement

When you are sending a pull request and it's a non-trivial change beyond fixing typos, please sign the ICLA (individual contributor license agreement). Please contact us if you need the CCLA (corporate contributor license agreement).

Code of conduct

We expect contributors to follow our code of conduct.