summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md86
1 files changed, 86 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..0debed2
--- /dev/null
+++ b/README.md
@@ -0,0 +1,86 @@
+# CommitFest
+
+This application manages commitfests for the PostgreSQL community.
+
+A commitfest is a collection of patches and reviews for a project and is part of the PostgreSQL development process.
+
+## The Application
+
+This is a Django 1.8 application backed by PostgreSQL and running on Python 2.7.
+
+## Getting Started
+
+### Ubuntu instructions
+
+First, prepare your development environment by installing pip, virtualenv, and postgresql-server-dev-X.Y.
+
+```
+$ sudo apt install python-pip postgresql-server-dev-9.6
+
+$ pip install virtualenv
+```
+
+Next, configure your local environment with virtualenv and install local dependencies.
+
+```
+$ virtualenv env
+$ source env/bin/activate
+$ pip install -r requirements.txt
+```
+
+Now prepare the application to run locally.
+
+Configure the app to match your local installation by creating a
+`local_settings.py` with the following content in the `pgcommitfest` directory.
+Change the values for the database connection adequately.
+
+```
+# Enable more debugging information
+DEBUG = True
+# Prevent logging to try to send emails to postgresql.org admins.
+# Use the default Django logging settings instead.
+LOGGING = None
+
+DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.db.backends.postgresql_psycopg2',
+ 'NAME': 'pgcommitfest',
+ 'USER': 'postgres',
+ 'PASSWORD': 'postgres',
+ 'HOST': '0.0.0.0',
+ }
+}
+
+# Disables the PostgreSQL.ORG authentication.
+# Use the default built-in Django authentication module.
+AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend']
+```
+
+Provided that you created a database matching the above settings, you can
+now create the required tables.
+
+```
+$ python manage.py migrate
+```
+
+You'll need either a database dump of the actual server's data or else to create a superuser:
+
+```
+$ python manage.py createsuperuser
+```
+
+Finally, you're ready to start the application:
+
+```
+$ python manage.py runserver
+```
+
+To authenticate you'll first have to remove the customized login template.
+Remember not to commit this modification.
+
+```
+$ rm -rf global_templates/admin/login.html
+```
+
+Then open http://localhost:8000/admin to log in. Once redirected to the Django
+admin interface, go back to the main interface. You're now logged in.