A port over to another registration system in python
| contrib | ||
| goathacks | ||
| migrations | ||
| .gitignore | ||
| .gitmodules | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
| requirements.txt | ||
| wsgi.py | ||
GoatHacks Registration Management
This is a rewrite of the original (commit 198f56f2c4)
management system for Flask 2.1 and Postgres. The focus was on maintainability
in the future and easy modifications for future years.
Setting up a development environment
The Makefile should have a bunch of useful recipes for you. Once you clone the
repo for the first time, run make init_env, which will set up the virtual
environment for development. If the dependencies ever change, you can run make upgrade_env to install the new packages.
To test your code, run make daemon, which will start a development server. It
will automatically reload after your changes.
Setting up for production
You can use your choice of WSGI server. Instructions are provided below for uWSGI. Please ensure a current (3.x) version of Python and Pip.
- pip install uwsgi # or the equivalent for your distribution's package manager
- mkdir -p /etc/uwsgi/apps-available
- mkdir -p /var/log/uwsgi
- sudo chown -R nginx:nginx /var/log/uwsgi
- mkdir -p /var/app
- git clone https://github.com/WPI-ACM/Hack-WPI-Python /var/app/goathacks
- cd /var/app/goathacks && make init_env
- cp /var/app/goathacks/contrib/goathacks.ini /etc/uwsgi/apps-available/goathacks.ini
- cp /var/app/goathacks/contrib/goathacks.service /etc/systemd/system/goathacks.service
- cp /var/app/goathacks/goathacks/config.py.example /var/app/goathacks/goathacks/config.py
- $EDITOR /var/app/goathacks/goathacks/config.py