The Phantom Mask
Installation and Setup
This project is still a work in progress so the README will be updated as it finalizes. In the meantime, you can get a working development environment set up by doing the following.
- Clone the project
- Create a virtul environment for Python 2.7.8
pip install -r requirements.txt
mv config/settings.py.example config/settings.pyYOU WILL NEED TO CONFIG THIS
- Set values for API keys, url for your instance of Phantom of the Capitol, etc in
python tasks/admin.py setup_test_environmentto create initial schema for database & create test data
python run.pyto run app locally for development.
- Check out
fabfile.pyfor deploying to a production environment.
You will also need to do the following to fully set up the project:
PHANTOM OF THE CAPITOL SERVER SETUP
- Follow instructions on https://github.com/EFForg/phantom-of-the-capitol
- Point to your instance in the
- Create a postmark account and obtain credits.
- Forward your inbound emails to postmark.
- Add webhook to process outbound emails to the
/postmark/inboundendpoint found in
- Install redis (http://redis.io/ or
brew install redis,
sudo apt-get install redis-server)
- Run the redis server with
To process emails, you'll need to point your postmark server inbound webhook to "<your server>/postmark/inbound". Note that this isn't secure unless you have server authentication set up. Since it's not feasible to test locally with postmark, you can simulate an inbound email using
python tasks/admin.py simulate_postmark_message <from_email> <to_oc_email>. If you use this script to simulate postmark messages then keep in mind that if
config/settings.pythen live emails will not send (unless the
<from_email>argument is in the list in
ADMIN_EMAILS- also in
You can reset a user's acceptance of the terms of service by running
tasks/admin.py reset_tos <email>. This will make it so a user has to go through the signup process again. Additionally, it will also allow all previously sent messages by the user to be sent again.