From 8194c5aeb9daad50e17bf8631ed4810f113c953b Mon Sep 17 00:00:00 2001
From: Jan Mach <jan.mach@cesnet.cz>
Date: Sun, 31 Oct 2021 08:14:06 +0100
Subject: [PATCH] Do not connect immediatelly as mentat system user to Vagrant
 box.

Some commands need to be run as vagrant user due to the ownership of
/vagrant/ directory.

(Redmine issue: #7041)
---
 Vagrantfile                 | 4 ++--
 vagrantenv/.bashrc          | 1 +
 vagrantenv/provision.sh     | 3 +++
 vagrantenv/system-banner.sh | 2 ++
 4 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/Vagrantfile b/Vagrantfile
index 0f7bd84a3..34fe29762 100644
--- a/Vagrantfile
+++ b/Vagrantfile
@@ -31,7 +31,7 @@ Vagrant.configure('2') do |config|
   SHELL
 
   # Automatically connect as 'mentat' user with ssh command.
-  VAGRANT_COMMAND = ARGV[0]
-  config.ssh.username = 'mentat' if VAGRANT_COMMAND == 'ssh'
+  # VAGRANT_COMMAND = ARGV[0]
+  # config.ssh.username = 'mentat' if VAGRANT_COMMAND == 'ssh'
   config.ssh.extra_args = ['-t', 'cd /vagrant; bash --login']
 end
diff --git a/vagrantenv/.bashrc b/vagrantenv/.bashrc
index e379e598b..5bee30226 100644
--- a/vagrantenv/.bashrc
+++ b/vagrantenv/.bashrc
@@ -107,6 +107,7 @@ alias ..='cd ..'
 alias ...='cd ../..'
 alias ....='cd ../../..'
 alias sm='sudo su mentat'
+alias sv='sudo su vagrant'
 alias wd='cd /vagrant/'
 alias ve='source /var/mentat/venv/bin/activate'
 
diff --git a/vagrantenv/provision.sh b/vagrantenv/provision.sh
index 7a2422a0d..1bf8eac24 100644
--- a/vagrantenv/provision.sh
+++ b/vagrantenv/provision.sh
@@ -21,6 +21,9 @@ dpkg-reconfigure -f noninteractive tzdata && \
   dpkg-reconfigure --frontend=noninteractive locales && \
   update-locale LANG=en_US.UTF-8
 
+echo "==========> Preparing system for development"
+chmod g+w /vagrant
+
 echo "==========> Creating Mentat user for development"
 if ! getent passwd ${MENTAT_USER} > /dev/null 2>&1; then
     useradd -m -s /bin/bash -U ${MENTAT_USER} --groups sudo
diff --git a/vagrantenv/system-banner.sh b/vagrantenv/system-banner.sh
index e65fb8575..5fa379a69 100755
--- a/vagrantenv/system-banner.sh
+++ b/vagrantenv/system-banner.sh
@@ -18,6 +18,8 @@ echo "    Flask web interface located at:     http://localhost:5000"
 echo "    Sendria web interface located at:   http://localhost:1080"
 echo ""
 echo "    Tips:"
+echo "      Use command alias 'sm' to quickly sudo su to mentat system user"
+echo "      Use command alias 'sv' to quickly sudo su to vagrant system user"
 echo "      Use command alias 'wd' to quickly change to project's work directory."
 echo "      Use command alias 've' to activate project's virtual environment."
 echo ""
-- 
GitLab