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