Environnement de dev++ #16

Merged
mpepin merged 11 commits from Kerl/dev_env into master 2017-05-18 18:45:40 +02:00
2 changed files with 26 additions and 11 deletions
Showing only changes of commit 981c5cade5 - Show all commits

2
Vagrantfile vendored
View file

@ -10,7 +10,7 @@ Vagrant.configure(2) do |config|
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.
config.vm.box = "ubuntu/trusty64"
config.vm.box = "debian/stretch64"
# On associe le port 80 dans la machine virtuelle avec le port 8080 de notre
# ordinateur, et le port 8000 avec le port 8000.

View file

@ -8,8 +8,9 @@ DBNAME="event_gestion"
DBPASSWD="4KZt3nGPLVeWSvtBZPsd9jdssdJMds78"
# Installation de paquets utiles
apt-get update && apt-get install -y python3-pip python3-dev \
libpq-dev postgresql postgresql-contrib libjpeg-dev
apt-get update && apt-get upgrade
apt-get install -y python3-pip python3-dev python3-venv libpq-dev postgresql \
postgresql-contrib libjpeg-dev
# Setup Database and User
sudo -u postgres createdb $DBNAME
@ -19,27 +20,41 @@ sudo -u postgres psql -c "ALTER USER $DBUSER CREATEDB;"
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE $DBNAME TO $DBUSER;"
# Mise en place du .bash_profile pour tout configurer lors du `vagrant ssh`
cat > ~vagrant/.bash_profile <<EOF
# On utilise la version de prod de qwann.fr
cat >> ~vagrant/.bashrc <<EOF
# On utilise les settings de développement
export DJANGO_SETTINGS_MODULE='evenementiel.settings_dev'
# Identifiants MySQL
# Identifiants postgres
export DBUSER="$DBUSER"
export DBNAME="$DBNAME"
export DBPASSWD="$DBPASSWD"
# On va dans /vagrant où se trouve le code
cd /vagrant
# On active le virtualenv
source ~vagrant/venv/bin/activate
EOF
chown vagrant: ~vagrant/.bash_profile
chown vagrant: ~vagrant/.bashrc
# On va dans /vagrant où se trouve le code
cd /vagrant
# Installation des dépendances python
sudo -H pip3 install -U pip
sudo -H -u vagrant pip3 install --user -r requirements.txt
sudo -H -u vagrant pip3 install --user -r requirements-devel.txt
# 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
# Préparation de Django
sudo -H -u vagrant DJANGO_SETTINGS_MODULE='evenementiel.settings_dev' DBUSER=$DBUSER DBNAME=$DBNAME DBPASSWD=$DBPASSWD python3 manage.py migrate
sudo -H -u vagrant DJANGO_SETTINGS_MODULE='evenementiel.settings_dev' \
DBUSER=$DBUSER DBNAME=$DBNAME DBPASSWD=$DBPASSWD \
~vagrant/venv/bin/python manage.py migrate