[32b9b17] | 1 | #!/bin/sh |
---|
| 2 | |
---|
| 3 | set -euf |
---|
| 4 | |
---|
| 5 | settings=$(dirname "$0") |
---|
| 6 | base="$settings/.." |
---|
| 7 | |
---|
| 8 | echo Creating config files... |
---|
[cabf7ac] | 9 | secret=$(python -c "import random; print(''.join([random.choice('abcdefghijklmnopqrstuvwxyz0123456789@#%&-_=+') for i in range(50)]))") |
---|
[32b9b17] | 10 | secret_re="s/^#SECRET_KEY = something$/SECRET_KEY = '$secret'/" |
---|
| 11 | sed -e "$secret_re" < "$settings/local.dev-template.py" > "$settings/local.py" |
---|
| 12 | touch "$settings/local_after.py" |
---|
| 13 | |
---|
| 14 | echo |
---|
| 15 | echo Creating database and doing basic sync... |
---|
| 16 | $base/manage.py syncdb && $base/manage.py migrate |
---|
[e24d22f] | 17 | |
---|
| 18 | echo |
---|
| 19 | echo Creating accounts... |
---|
| 20 | $base/util/setup.py |
---|
| 21 | $base/util/add_accounts Accounts.Assets <<EOF |
---|
| 22 | Officers 1234567 |
---|
| 23 | Officers.President |
---|
| 24 | Officers.President.Gifts |
---|
| 25 | Officers.Treasurer |
---|
| 26 | Officers.Treasurer.Stamps |
---|
| 27 | Officers.Publicity |
---|
| 28 | Officers.Publicity.Copying |
---|
| 29 | Committees 1234567 |
---|
| 30 | Committees.Art |
---|
| 31 | Committees.Art.Software |
---|
| 32 | Committees.Logistics |
---|
| 33 | Committees.Logistics.Food |
---|
| 34 | Committees.Logistics.Rooms |
---|
| 35 | EOF |
---|
| 36 | |
---|
| 37 | echo |
---|
| 38 | echo Creating budget term... |
---|
| 39 | $base/manage.py shell <<EOF |
---|
| 40 | from finance_core.models import BudgetTerm |
---|
| 41 | import datetime |
---|
| 42 | today = datetime.date.today() |
---|
| 43 | year = today.year |
---|
| 44 | term, created = BudgetTerm.objects.get_or_create(name=year, defaults=dict( |
---|
| 45 | slug=year, |
---|
| 46 | start_date=datetime.date(year, 1, 1), |
---|
| 47 | end_date=datetime.date(year, 12, 31), |
---|
| 48 | submit_deadline=datetime.date(year+1, 4, 15), |
---|
| 49 | )) |
---|
| 50 | if created: |
---|
| 51 | term.save() |
---|
| 52 | EOF |
---|
| 53 | |
---|
| 54 | echo; echo |
---|
| 55 | echo Done! |
---|
| 56 | echo 'Run the server with "./manage.py runserver 8006" or similar.' |
---|