- Version 2.2.7 de Vagrant
- Le plugin vagrant-vbguest :
vagrant plugin install vagrant-vbguest
- Version 6.0 de VirtualBox
- L'extension Oracle VM VirtualBox Extension Pack pour VirtualBox
Création et configuration de la VM :
vagrant up
Cette commande va échouer car les VirtualBox Guest Additions ne sont pas installées et il est donc impossible de monter les shared folders et de terminer le provisionning
Cette commande va installer toutes les dépendances nécessaires :
vagrant provision
Enfin, cette commande va relancer la VM pour installer les VirtualBox Guest Additions et va terminer le provisionning (installation des requirements, yarn) qui n'était pas possible :
vagrant reload --provision
Comme il n'est pas possible d'intégrer facilement cette partie au Vagrantfile, il faut exécuter les commandes suivantes à la main :
vagrant ssh
sudo su
su - postgres
psql -c 'create database "QuChemPedIADB"'
psql -c 'CREATE ROLE "dataSlave"'
psql -c "ALTER ROLE \"dataSlave\" WITH NOSUPERUSER INHERIT CREATEROLE NOCREATEDB LOGIN NOREPLICATION NOBYPASSRLS PASSWORD 'P@ssw0rd' VALID UNTIL 'infinity'"
psql -c "GRANT ALL ON DATABASE \"QuChemPedIADB\" TO \"dataSlave\""
exit
exit
Il est maintenant possible d'accéder au code source du projet à partir du dossier /src/ de la VM
vagrant ssh
cd /src/
Pour lancer l'application, il faut lancer la commande suivante :
cd /src/QuChemPedIAProject/
python3 manage.py runserver 0:8000
Le site est alors accessible à l'adresse 192.168.33.10:8000 directement depuis votre poste
Pour lancer ElasticSearch il faut d'abord décompresser les dossiers :
tar xvf data_elasticsearch.tar.gz
tar xvf elasticsearch-6.3.2.tar.gz
sudo apt install default-jre
sudo apt install default-jdk
javac -version
sudo mv -R /src/QuChemPedIAProject/data_elasticsearch/ /opt/
sudo chmod -R 777 /opt/data_elasticsearch/
Pour lancer elasticSearch lancer dans un autre terminal la commande
/src/QuChemPedIAProject/elasticsearch-6.3.2/bin/elasticsearch
sudo apt-get update && apt-get upgrade -y
installation de postgreSQL (CF)
sudo apt-get -y install postgresql postgresql-contrib phppgadmin
cd /location
virtualenv -p python3 nameOfEnv
source nameOfEnv/bin/activate
pip install django
pip freeze > requirements.txt
pip install -r requirements.txt
virtualenv --relocatable ENV
pip install psycopg2-binary
https://virtualenv.pypa.io/en/stable/userguide/
sudo apt-get -y install pkg-config
apt-get install openbabel libopenbabel-dev swig
./install_venv.sh
python manage.py createsuperuser
create an user : "dataSlave", password : "P@ssw0rd"
and a database : "QuChemPedIADB"
to ask django to set up the connection with database :
python manage.py makemigrations QuChemPedIA
python manage.py migrate
Pour installer yarn, voir https://yarnpkg.com/en/docs/install
Yarn requiert NodeJs
yarn
Pour le dévelopement :
yarn dev
Pour la production :
yarn build
To release the develop branch onto master:
git checkout develop
Start your release branch
git flow release start [version-tag]
Build front end assets for production
yarn build
Commit the compiled assets
git add QuChemPedIAProject/common_qcpia/static/dist/*
git commit -m "release: Compiled front end assets"
Finish the release
git flow release finish