2016-09-28 20:36:48 +02:00
|
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
|
|
# Configuration de la base de données. Le mot de passe est constant car c'est
|
|
|
|
|
# pour une installation de dév locale qui ne sera accessible que depuis la
|
|
|
|
|
# machine virtuelle.
|
|
|
|
|
DBUSER="event_gestion"
|
|
|
|
|
DBNAME="event_gestion"
|
|
|
|
|
DBPASSWD="4KZt3nGPLVeWSvtBZPsd9jdssdJMds78"
|
|
|
|
|
|
|
|
|
|
# Installation de paquets utiles
|
2017-05-16 12:43:40 +02:00
|
|
|
|
apt-get update && apt-get upgrade
|
|
|
|
|
apt-get install -y python3-pip python3-dev python3-venv libpq-dev postgresql \
|
|
|
|
|
postgresql-contrib libjpeg-dev
|
2016-09-28 20:36:48 +02:00
|
|
|
|
|
|
|
|
|
# Setup Database and User
|
|
|
|
|
sudo -u postgres createdb $DBNAME
|
|
|
|
|
sudo -u postgres createuser -SDR $DBUSER
|
|
|
|
|
sudo -u postgres psql -c "ALTER USER $DBUSER WITH PASSWORD '$DBPASSWD';"
|
2016-10-02 14:23:39 +02:00
|
|
|
|
sudo -u postgres psql -c "ALTER USER $DBUSER CREATEDB;"
|
2016-09-28 22:06:05 +02:00
|
|
|
|
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE $DBNAME TO $DBUSER;"
|
2016-09-28 20:36:48 +02:00
|
|
|
|
|
|
|
|
|
# Mise en place du .bash_profile pour tout configurer lors du `vagrant ssh`
|
2017-05-16 12:43:40 +02:00
|
|
|
|
cat >> ~vagrant/.bashrc <<EOF
|
|
|
|
|
|
|
|
|
|
# On utilise les settings de développement
|
2016-09-29 00:13:16 +02:00
|
|
|
|
export DJANGO_SETTINGS_MODULE='evenementiel.settings_dev'
|
2016-09-28 20:36:48 +02:00
|
|
|
|
|
2017-05-16 12:43:40 +02:00
|
|
|
|
# Identifiants postgres
|
2016-09-28 20:36:48 +02:00
|
|
|
|
export DBUSER="$DBUSER"
|
|
|
|
|
export DBNAME="$DBNAME"
|
|
|
|
|
export DBPASSWD="$DBPASSWD"
|
|
|
|
|
|
|
|
|
|
# On va dans /vagrant où se trouve le code
|
|
|
|
|
cd /vagrant
|
2017-05-16 12:43:40 +02:00
|
|
|
|
|
|
|
|
|
# On active le virtualenv
|
|
|
|
|
source ~vagrant/venv/bin/activate
|
2016-09-28 20:36:48 +02:00
|
|
|
|
EOF
|
2017-05-16 12:43:40 +02:00
|
|
|
|
chown vagrant: ~vagrant/.bashrc
|
2016-09-28 20:36:48 +02:00
|
|
|
|
|
|
|
|
|
# On va dans /vagrant où se trouve le code
|
|
|
|
|
cd /vagrant
|
|
|
|
|
|
|
|
|
|
# Installation des dépendances python
|
2017-05-16 12:43:40 +02:00
|
|
|
|
# Notes :
|
|
|
|
|
# - Je ne comprends pas trop pourquoi j'ai besoin d'installer wheel, il devrait
|
|
|
|
|
# venir avec pip il me semble… Mais sans ça, l'installation de
|
|
|
|
|
# django-boostrap-form échoue.
|
|
|
|
|
# - A priori upgrade pip via pip est inutile au moment où j'écris ce script mais
|
|
|
|
|
# la version de pip de PyPi peut être mise à jour plus vite que celle des
|
|
|
|
|
# paquets Debian et on préfère la version la plus récente (ça nous a déjà posé
|
|
|
|
|
# des problèmes).
|
|
|
|
|
sudo -H -u vagrant python3 -m venv ~vagrant/venv
|
|
|
|
|
sudo -H -u vagrant ~vagrant/venv/bin/pip install -U pip wheel
|
|
|
|
|
sudo -H -u vagrant ~vagrant/venv/bin/pip install -U -r requirements-devel.txt
|
2016-09-28 20:36:48 +02:00
|
|
|
|
|
|
|
|
|
# Préparation de Django
|
2017-05-16 12:43:40 +02:00
|
|
|
|
sudo -H -u vagrant DJANGO_SETTINGS_MODULE='evenementiel.settings_dev' \
|
|
|
|
|
DBUSER=$DBUSER DBNAME=$DBNAME DBPASSWD=$DBPASSWD \
|
|
|
|
|
~vagrant/venv/bin/python manage.py migrate
|