diff --git a/doc/Vagrant.md b/doc/Vagrant.md index ec706e5c3..a224ebafc 100644 --- a/doc/Vagrant.md +++ b/doc/Vagrant.md @@ -9,10 +9,8 @@ Getting started [Vagrant](https://www.vagrantup.com/) is a virtualization solution for developers. No need to setup up a webserver, database etc. before actually starting. Vagrant creates a virtual machine for you that you can just run inside VirtualBox and start to work directly on Friendica. -You can choose between two different Ubuntu Linux versions: -1. Ubuntu Trusty (14.04) with PHP 5.5.9 and MySQL 5.5.53 -2. Ubuntu Xenial (16.04) with PHP 7.0 and MySQL 5.7.16 +It brings an Ubuntu Xenial (16.04) with PHP 7.0 and MySQL 5.7.16 What you need to do: @@ -20,29 +18,33 @@ What you need to do: Please use an up-to-date vagrant version from https://www.vagrantup.com/downloads.html. 2. Git clone your Friendica repository. Inside, you'll find a "Vagrantfile" and some scripts in the utils folder. -3. Choose the Ubuntu version you'll need und run "vagrant up " from inside the friendica clone: - $> vagrant up trusty - $> vagrant up xenial +3. Run "vagrant up" from inside the friendica clone: + $> vagrant up Be patient: When it runs for the first time, it downloads an Ubuntu Server image. -4. Run "vagrant ssh " to log into the virtual machine to log in to the VM: - $> vagrant ssh trusty - $> vagrant ssh xenial +4. Run "vagrant ssh" to log into the virtual machine to log in to the VM: + $> vagrant ssh 5. Open you test installation in a browser. -If you selected an Ubuntu Trusty go to 192.168.22.10. -If you started a Xenial machine go to 192.168.22.11. -The mysql database is called "friendica", the mysql user and password both are "root". +Go to 192.168.22.10. +The mysql database is called "friendica", the mysql user and password both are "friendica". 6. Work on Friendica's code in your git clone on your machine (not in the VM). Your local working directory is set up as a shared directory with the VM (/vagrant). 7. Check the changes in your browser in the VM. -Debug via the "vagrant ssh " login. +Debug via the "vagrant ssh" login. Find the Friendica log file /vagrant/logfile.out. 8. Commit and push your changes directly back to Github. If you want to stop vagrant after finishing your work, run the following command - $> vagrant halt + $> vagrant halt in the development directory. +This will not delete the virtual machine. +9. To ultimately delete the virtual machine run + + $> vagrant destroy + $> rm /vagrant/.htconfig.php + +to make sure that you can start from scratch with another "vagrant up". The vagrant Friendica instance contains a test database. You will then have the following accounts to login: diff --git a/util/htconfig.vagrant.php b/util/htconfig.vagrant.php index a889adac6..ea12e6efb 100644 --- a/util/htconfig.vagrant.php +++ b/util/htconfig.vagrant.php @@ -4,8 +4,8 @@ // Copy or rename this file to .htconfig.php $db_host = 'localhost'; -$db_user = 'root'; -$db_pass = 'root'; +$db_user = 'friendica'; +$db_pass = 'friendica'; $db_data = 'friendica'; // If you are using a subdirectory of your domain you will need to put the @@ -73,3 +73,5 @@ $a->config['system']['debugging'] = true; $a->config['system']['logfile'] = 'logfile.out'; $a->config['system']['loglevel'] = LOGGER_DEBUG; +// display php errors +ini_set('display_errors', '1'); diff --git a/util/vagrant_provision.sh b/util/vagrant_provision.sh index 72b73174a..bf2599445 100644 --- a/util/vagrant_provision.sh +++ b/util/vagrant_provision.sh @@ -60,6 +60,10 @@ Q1="GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;" Q2="FLUSH PRIVILEGES;" SQL="${Q1}${Q2}" $MYSQL -uroot -proot -e "$SQL" +# add a separate database user for friendica +$MYSQL -uroot -proot -e "CREATE USER 'friendica'@'localhost' identified by 'friendica';" +$MYSQL -uroot -proot -e "GRANT ALL PRIVILEGES ON friendica.* TO 'friendica'@'localhost';" +$MYSQL -uroot -proot -e "FLUSH PRIVILEGES" systemctl restart mysql @@ -84,9 +88,9 @@ echo "create database friendica DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_ge $MYSQL -uroot -proot friendica < /vagrant/friendica_test_data.sql # create cronjob - activate if you have enough memory in you dev VM -# echo "*/10 * * * * cd /vagrant; /usr/bin/php include/poller.php" >> friendicacron -# sudo crontab friendicacron -# sudo rm friendicacron +echo "*/10 * * * * cd /vagrant; /usr/bin/php include/poller.php" >> friendicacron +sudo crontab friendicacron +sudo rm friendicacron #Optional: checkout addon repositroy #sudo git clone https://github.com/friendica/friendica-addons.git /vagrant/addon