Add a development default settings file and modify instructions
This commit is contained in:
parent
016bfdc1a1
commit
2673cd86e2
31
README.md
31
README.md
|
@ -2,7 +2,7 @@
|
|||
|
||||
Django project to power Bornhack. Features include news, villages, webshop, and more.
|
||||
|
||||
## Setup
|
||||
## Development setup
|
||||
|
||||
### Clone the repo
|
||||
Clone with --recursive to include submodules:
|
||||
|
@ -38,27 +38,36 @@ Install system dependencies (method depends on OS):
|
|||
### Python packages
|
||||
Install pip packages:
|
||||
```
|
||||
(venv) $ pip install -r src/requirements/dev.txt
|
||||
(venv) $ pip install -r src/requirements/dev.txt
|
||||
```
|
||||
|
||||
### Postgres
|
||||
|
||||
You need to have a running Postgres instance (we use Postgres-specific datetime range fields). Install Postgress, and add a database `bornhack` (or whichever you like) with some way for the application to connect to it, for instance adding a user with a password.
|
||||
|
||||
You can also use Unix socket connections if you know how to. It's faster, easier and perhaps more secure.
|
||||
|
||||
### Configuration file
|
||||
Copy environment settings file and change settings as needed:
|
||||
|
||||
Copy dev environment settings file and change settings as needed:
|
||||
|
||||
```
|
||||
(venv) $ cp src/bornhack/environment_settings.py.dist src/bornhack/environment_settings.py
|
||||
(venv) $ cp src/bornhack/environment_settings.py.dist.dev src/bornhack/environment_settings.py
|
||||
```
|
||||
|
||||
Edit the configuration file, replacing all the ``{{ placeholder }}`` patterns
|
||||
(intended for Ansible).
|
||||
Edit the configuration file, setting up `DATABASES` matching your Postgres settings.
|
||||
|
||||
### Database
|
||||
Is this a new installation? Initialize the database:
|
||||
|
||||
```
|
||||
(venv) $ src/manage.py migrate
|
||||
(venv) $ src/manage.py migrate
|
||||
```
|
||||
|
||||
Is this for local development? Bootstrap the database with dummy data and users:
|
||||
|
||||
```
|
||||
(venv) $ src/manage.py bootstrap-devsite
|
||||
(venv) $ src/manage.py bootstrap-devsite
|
||||
```
|
||||
|
||||
### Deploy camps+program test data
|
||||
|
@ -66,14 +75,14 @@ Is this for local development? Bootstrap the database with dummy data and users:
|
|||
Run this command to create a bunch of nice test data:
|
||||
|
||||
```
|
||||
(venv) $ src/manage.py bootstrap-devsite
|
||||
(venv) $ src/manage.py bootstrap-devsite
|
||||
```
|
||||
|
||||
|
||||
### Done
|
||||
Is this for local development? Start the Django devserver:
|
||||
```
|
||||
(venv) $ src/manage.py runserver
|
||||
(venv) $ src/manage.py runserver
|
||||
```
|
||||
|
||||
Otherwise start uwsgi or similar to serve the application.
|
||||
|
@ -87,7 +96,7 @@ Enjoy!
|
|||
Add a new camp by running:
|
||||
|
||||
```
|
||||
(venv) $ src/manage.py createcamp {camp-slug}
|
||||
(venv) $ src/manage.py createcamp {camp-slug}
|
||||
```
|
||||
|
||||
Then go to the admin interface to edit the camp details, adding the same slug
|
||||
|
|
78
src/bornhack/environment_settings.py.dist.dev
Normal file
78
src/bornhack/environment_settings.py.dist.dev
Normal file
|
@ -0,0 +1,78 @@
|
|||
import os
|
||||
|
||||
# MODIFY THIS!
|
||||
#
|
||||
# If you worry about loosing your local development database secrets,
|
||||
# then change this for something less well-known. You can use lots of
|
||||
# characters!
|
||||
SECRET_KEY = "something-very-random"
|
||||
|
||||
ALLOWED_HOSTS = "*"
|
||||
|
||||
# MODIFY THIS!
|
||||
#
|
||||
# Database settings - modify to match your database configuration!
|
||||
DATABASES = {
|
||||
"default": {
|
||||
"ENGINE": "django.db.backends.postgresql_psycopg2",
|
||||
"NAME": "bornhack",
|
||||
"USER": "bornhack",
|
||||
# Comment back in if you are connecting via TCP
|
||||
# "PASSWORD": "bornhack",
|
||||
# "HOST": "localhost",
|
||||
}
|
||||
}
|
||||
DEBUG = True
|
||||
WKHTMLTOPDF_CMD = "wkhtmltopdf"
|
||||
CHANNEL_LAYERS = {}
|
||||
|
||||
ASGI_APPLICATION = "bornhack.routing.application"
|
||||
|
||||
CAMP_REDIRECT_PERCENT = 40
|
||||
MEDIA_ROOT = os.path.join(
|
||||
os.path.dirname(os.path.dirname(os.path.dirname(__file__))), "media"
|
||||
)
|
||||
|
||||
# schedule settings
|
||||
SCHEDULE_MIDNIGHT_OFFSET_HOURS = 9
|
||||
SCHEDULE_TIMESLOT_LENGTH_MINUTES = 30
|
||||
SCHEDULE_EVENT_NOTIFICATION_MINUTES = 10
|
||||
|
||||
PDF_LETTERHEAD_FILENAME = "bornhack-2017_test_letterhead.pdf"
|
||||
PDF_ARCHIVE_PATH = os.path.join(MEDIA_ROOT, "pdf_archive")
|
||||
|
||||
SENDFILE_ROOT = MEDIA_ROOT + "/protected"
|
||||
SENDFILE_URL = "/protected"
|
||||
SENDFILE_BACKEND = "sendfile.backends.development"
|
||||
|
||||
IRCBOT_CHECK_MESSAGE_INTERVAL_SECONDS = 10
|
||||
IRCBOT_NICK = "humankillerbot"
|
||||
IRCBOT_NICKSERV_PASSWORD = ""
|
||||
IRCBOT_SERVER_HOSTNAME = ""
|
||||
IRCBOT_SERVER_PORT = 6697
|
||||
IRCBOT_SERVER_USETLS = True
|
||||
IRCBOT_CHANNELS = {
|
||||
"default": "#my-bornhack-channel",
|
||||
"orga": "#my-bornhack-channel",
|
||||
"public": "#my-bornhack-channel",
|
||||
}
|
||||
IRCBOT_PUBLIC_CHANNEL = "#my-bornhack-channel"
|
||||
IRCBOT_VOLUNTEER_CHANNEL = "#my-bornhack-channel"
|
||||
|
||||
BANKACCOUNT_IBAN = "LOL"
|
||||
BANKACCOUNT_SWIFTBIC = "lol"
|
||||
BANKACCOUNT_REG = "lol"
|
||||
BANKACCOUNT_ACCOUNT = "lol"
|
||||
BANKACCOUNT_BANK = "lol"
|
||||
|
||||
TIME_ZONE = "Europe/Copenhagen"
|
||||
|
||||
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
|
||||
|
||||
ARCHIVE_EMAIL = "archive@example.com"
|
||||
|
||||
CHANNEL_LAYERS = {
|
||||
"default": {
|
||||
"BACKEND": "channels.layers.InMemoryChannelLayer",
|
||||
},
|
||||
}
|
Loading…
Reference in a new issue