Merge pull request #154 from benjaoming/readme-updates
Change README to match src/ structure
This commit is contained in:
commit
ecc289a6f3
48
README.md
48
README.md
|
@ -9,11 +9,14 @@ Clone with --recursive to include submodules:
|
||||||
|
|
||||||
git clone --recursive https://github.com/bornhack/bornhack-website
|
git clone --recursive https://github.com/bornhack/bornhack-website
|
||||||
|
|
||||||
|
If you already cloned the repository, you can add the submodules like this:
|
||||||
|
|
||||||
|
git submodule update --init --recursive
|
||||||
|
|
||||||
### Virtualenv
|
### Virtualenv
|
||||||
Create a Python 3 virtual environment and activate it:
|
Create a Python 3 virtual environment and activate it:
|
||||||
```
|
```
|
||||||
$ virtualenv venv
|
$ virtualenv venv -p python3
|
||||||
$ source venv/bin/activate
|
$ source venv/bin/activate
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -35,30 +38,42 @@ Install system dependencies (method depends on OS):
|
||||||
### Python packages
|
### Python packages
|
||||||
Install pip packages:
|
Install pip packages:
|
||||||
```
|
```
|
||||||
(venv) $ pip install -r requirements.txt
|
(venv) $ pip install -r src/requirements.txt
|
||||||
```
|
```
|
||||||
|
|
||||||
### Configuration file
|
### Configuration file
|
||||||
Copy environment settings file and change settings as needed:
|
Copy environment settings file and change settings as needed:
|
||||||
```
|
```
|
||||||
(venv) $ cp bornhack/environment_settings.py.dist bornhack/environment_settings.py
|
(venv) $ cp src/bornhack/environment_settings.py.dist src/bornhack/environment_settings.py
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Edit the configuration file, replacing all the ``{{ placeholder }}`` patterns
|
||||||
|
(intended for Ansible).
|
||||||
|
|
||||||
### Database
|
### Database
|
||||||
Is this a new installation? Initialize the database:
|
Is this a new installation? Initialize the database:
|
||||||
```
|
```
|
||||||
(venv) $ ./manage.py migrate
|
(venv) $ src/manage.py migrate
|
||||||
```
|
```
|
||||||
|
|
||||||
Is this for local development? Bootstrap the database with dummy data and users:
|
Is this for local development? Bootstrap the database with dummy data and users:
|
||||||
```
|
```
|
||||||
(venv) $ ./manage.py bootstrap-devsite
|
(venv) $ src/manage.py bootstrap-devsite
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Deploy camps+program test data
|
||||||
|
|
||||||
|
Run this command to create a bunch of nice test data:
|
||||||
|
|
||||||
|
```
|
||||||
|
(venv) $ src/manage.py bootstrap-devsite
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### Done
|
### Done
|
||||||
Is this for local development? Start the Django devserver:
|
Is this for local development? Start the Django devserver:
|
||||||
```
|
```
|
||||||
(venv) $ ./manage.py runserver
|
(venv) $ src/manage.py runserver
|
||||||
```
|
```
|
||||||
|
|
||||||
Otherwise start uwsgi or similar to serve the application.
|
Otherwise start uwsgi or similar to serve the application.
|
||||||
|
@ -67,20 +82,23 @@ Enjoy!
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
### How to add a camp
|
### Add a camp
|
||||||
|
|
||||||
Add a new camp in the admin interface and run `
|
Add a new camp by running:
|
||||||
|
|
||||||
```
|
```
|
||||||
(venv) $ ./manage.py createcamp {camp-slug}
|
(venv) $ src/manage.py createcamp {camp-slug}
|
||||||
```
|
```
|
||||||
or go through the manuel process below:
|
|
||||||
|
|
||||||
* Add a new camp in the admin interface.
|
Then go to the admin interface to edit the camp details, adding the same slug
|
||||||
* Add a sponsers page, `{camp-slug}_sponsors.html`, to `sponsors/templates`.
|
that you just used and some current dates.
|
||||||
* Add a frontpage, `{camp-slug}_camp_detail.html`, to `camps/templates`.
|
|
||||||
* Add a call for speakers page, `{camp-slug}_call_for_speakers.html`, to `program/templates`.
|
You can also specify details like:
|
||||||
* Create `static_src/img/{camp-slug}/logo` and add two logos:
|
|
||||||
|
* A sponsors page, `{camp-slug}_sponsors.html`, to `sponsors/templates`.
|
||||||
|
* A frontpage, `{camp-slug}_camp_detail.html`, to `camps/templates`.
|
||||||
|
* A call for speakers page, `{camp-slug}_call_for_speakers.html`, to `program/templates`.
|
||||||
|
* A `static_src/img/{camp-slug}/logo` and add two logos:
|
||||||
* `{camp-slug}-logo-large.png`
|
* `{camp-slug}-logo-large.png`
|
||||||
* `{camp-slug}-logo-small.png`
|
* `{camp-slug}-logo-small.png`
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ DEBUG={{ django_debug }}
|
||||||
# the path to the wkhtmltopdf binary
|
# the path to the wkhtmltopdf binary
|
||||||
WKHTMLTOPDF_CMD="{{ wkhtmltopdf_path }}"
|
WKHTMLTOPDF_CMD="{{ wkhtmltopdf_path }}"
|
||||||
|
|
||||||
# set BACKEND to "asgiref.inmemory.ChannelLayer" and CONFIG to "" for local development
|
# set BACKEND to "asgiref.inmemory.ChannelLayer" and CONFIG to {} for local development
|
||||||
CHANNEL_LAYERS = {
|
CHANNEL_LAYERS = {
|
||||||
"default": {
|
"default": {
|
||||||
"BACKEND": "{{ django_channels_backend }}",
|
"BACKEND": "{{ django_channels_backend }}",
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
sys.path.append(os.path.dirname(__file__))
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
os.environ.setdefault(
|
os.environ.setdefault(
|
||||||
"DJANGO_SETTINGS_MODULE",
|
"DJANGO_SETTINGS_MODULE",
|
||||||
|
|
Loading…
Reference in a new issue