Skip to content
Snippets Groups Projects
Commit 863643f6 authored by Jan Mach's avatar Jan Mach
Browse files

Fixed Vagrant provisioning errors.

(Redmine issue: #7041)
parent f61357cf
No related branches found
No related tags found
No related merge requests found
......@@ -7,6 +7,7 @@
#-------------------------------------------------------------------------------
echo "==========> <BEGIN> provision.sh"
date
source /vagrant/etc/default/mentat
source /vagrant/conf/scripts/lib.sh
......@@ -24,6 +25,7 @@ echo "==========> Linking configuration files"
ensure_link /vagrant/etc/default/mentat /etc/default/mentat
ensure_link /vagrant/conf /etc/mentat
ensure_link /vagrant/.vagrantenv/.bashrc /home/vagrant/.bashrc
ensure_link /vagrant/data/GeoIP.conf /etc/GeoIP.conf
echo "==========> Creating Mentat user for development"
if ! getent passwd ${MENTAT_USER} > /dev/null 2>&1; then
......@@ -137,16 +139,17 @@ ensure_link /vagrant/etc/systemd/system/sendria.service /etc/systemd/system/send
systemctl daemon-reload
systemctl start sendria.service
echo "==========> Bootstraping runtime environment"
/etc/mentat/scripts/runenv-init.sh
echo "==========> Bootstraping database schema and configuration"
sudo -u mentat ${MENTAT_VENV}/python /vagrant/bin/mentat-dbmngr.py --command init
sudo -u mentat bash -c "source ${MENTAT_VENV}/activate ; hawat-cli db stamp head"
sudo -u mentat bash -c "source ${MENTAT_VENV}/activate ; /etc/mentat/scripts/sqldb-migrate.sh stamp head"
sudo -u mentat ${MENTAT_VENV}/bin/python /vagrant/bin/mentat-dbmngr.py --command init
sudo -u mentat bash -c "source ${MENTAT_VENV}/bin/activate ; hawat-cli db stamp head"
sudo -u mentat bash -c "source ${MENTAT_VENV}/bin/activate ; /etc/mentat/scripts/sqldb-migrate.sh stamp head"
/etc/mentat/scripts/sqldb-optimize.sh
echo "==========> Pregenerating application data"
sudo -u mentat ${MENTAT_VENV}/python /vagrant/bin/mentat-precache.py --allow-empty
sudo -u mentat ${MENTAT_VENV}/bin/python /vagrant/bin/mentat-precache.py --allow-empty
echo "==========> Tweaking database users"
sudo -u postgres psql -c "SELECT usename FROM pg_catalog.pg_user;" | grep root > /dev/null
......@@ -162,7 +165,7 @@ fi
echo "==========> Configuring Apache to serve development server"
if [ ! -L /etc/apache2/sites-enabled/site_mentat_vagrant.conf ] ; then
ensure_linked_file /vagrant/conf/apache/site_mentat_vagrant.conf /etc/apache2/sites-available/site_mentat_vagrant.conf
ensure_link /vagrant/conf/apache/site_mentat_vagrant.conf /etc/apache2/sites-available/site_mentat_vagrant.conf
sed -i.bak s/APACHE_RUN_USER=www-data/APACHE_RUN_USER=mentat/g /etc/apache2/envvars
sed -i.bak s/APACHE_RUN_GROUP=www-data/APACHE_RUN_GROUP=mentat/g /etc/apache2/envvars
rm -f /etc/apache2/envvars.bak
......@@ -178,3 +181,4 @@ if [ ! -L /etc/apache2/sites-enabled/site_mentat_vagrant.conf ] ; then
fi
echo "==========> <DONE> provision.sh"
date
......@@ -36,7 +36,7 @@ BIN_FILES := $(wildcard bin/mentat-*.py)
LIB_FILES := $(shell find $(DIR_LIB) -name '*.py' | grep -v 'test_')
VENV_PYTHON ?= python3.7
VENV_PATH ?= venv
VENV_PATH ?= /var/mentat/venv
PYTHON = python3
PIP = pip
......@@ -464,10 +464,11 @@ presentations: FORCE
done
db-data-fetch: FORCE
data-fetch: FORCE
@echo "\n$(GREEN)*** Fetching latest production database dump ***$(NC)\n"
@rm -rf ./data
@mkdir -p ./data
@scp mentat-alt:/etc/GeoIP.conf ./data/
@scp mentat-alt:/var/mentat/production-dump/mentat_psqldb_latest.tar.gz ./data/
@cd ./data/ && tar -xzvf ./mentat_psqldb_latest.tar.gz
@rm -f ./data/mentat_psqldb_latest.tar.gz
......@@ -475,7 +476,7 @@ db-data-fetch: FORCE
@rm -rf ./data/var
@echo ""
db-data-import: FORCE
data-import: FORCE
@echo "\n$(GREEN)*** Importing latest production database dump ***$(NC)\n"
@sudo -u postgres pg_restore --verbose --format=d --dbname=mentat_main /vagrant/data/mentat_psqldb_latest/main
@echo ""
......
......@@ -624,11 +624,11 @@ Development with Vagrant
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
sudo apt update && sudo apt install vagrant
make db-data-fetch
make data-fetch
vagrant up
vagrant ssh
cd /vagrant/
make db-data-import
make data-import
At this point you are all set to develop Mentat locally without cluttering your personal
workstation.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment