Merge branch 'master' into community--change-from-taiga-to-git

This commit is contained in:
meaz 2021-07-21 09:24:23 +00:00
commit b458314340
3 changed files with 110 additions and 10 deletions

View File

@ -2,14 +2,16 @@
# Disroot Website Development Environment using Vagrant
If you prefer the easy way, just execute the vagrant.sh script provided. Make sure your user is in sudoers first. ⚠️ It has been tested with Debian Buster only. ⚠️
## requirements
1. vagrant 2.2.10
1. vagrant 2.2.17
for install on Debian run commands:
```
wget https://releases.hashicorp.com/vagrant/2.2.10/vagrant_2.2.10_x86_64.deb
wget https://releases.hashicorp.com/vagrant/2.2.17/vagrant_2.2.17_x86_64.deb
```
```
sudo dpkg -i vagrant_2.2.10_x86_64.deb
sudo dpkg -i vagrant_2.2.17_x86_64.deb
```
```
sudo apt install -f
@ -26,7 +28,7 @@
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
```
```
sudo apt-get update ; sudo apt-get install virtualbox-6.0
sudo apt-get update ; sudo apt-get install virtualbox-6.1
```
3. vagrant plugins vagrant-vbguest:
@ -68,21 +70,21 @@
```
7. Clone Disroot Changelog repo to Disroot folder
```
git clone https://git.disroot.org/Disroot/CHANGELOG.git ~/Disroot/Disroot-Privacy-Policy
git clone https://git.disroot.org/Disroot/CHANGELOG.git ~/Disroot/Disroot-Changelog
```
8. Add the local domain name for the hub to your host machine's `/etc/hosts` file.
```
echo "192.168.33.12 disroot.lan" >> /etc/hosts
sudo echo "192.168.33.12 disroot.lan" >> /etc/hosts
```
9. Launch Vagrant to build the virtual machine (VM). This will take several minutes.
```
cd ~/Disroot/disroot-website/vagrant
cd ~/Disroot/Website/vagrant
vagrant up disroot_lan
```
Congratulations, you should now have a fully functioning apache+GRAV server running locally in a Virtualbox-hosted VM managed by Vagrant. Next time you want to run vagrant simply run command
```
cd ~/Disroot/disroot-website/vagrant
cd ~/Disroot/Website/vagrant
vagrant up disroot_lan
vagrant provision
```
@ -98,7 +100,7 @@ To make your development workflow more efficient, you may wish to use an SSH con
```
2. Use `vagrant ssh disroot_lan` to log in to the virtual machine.
```
user@host:~$ cd ~/Disroot/disroot-website/vagrant
user@host:~$ cd ~/Disroot/Website/vagrant
user@host:hubzilla-vagrant$ vagrant ssh disroot_lan
```
3. Switch to root and add your host user public key.

2
vagrant/Vagrantfile vendored
View File

@ -22,6 +22,6 @@ Vagrant.configure("2") do |config|
disroot_lan.vm.synced_folder "../../grav-theme-disrootblog/", "/var/www/grav-theme-disrootblog", owner: "www-data", group: "www-data"
disroot_lan.vm.synced_folder "../../grav-plugin-language-selector/", "/var/www/grav-plugin-language-selector", owner: "www-data", group: "www-data"
disroot_lan.vm.synced_folder "../../Disroot-Privacy-Policy/", "/var/www/privacy_policy/", owner: "www-data", group: "www-data"
disroot_lan.vm.synced_folder "../../CHANGELOG/", "/var/www/changelog/", owner: "www-data", group: "www-data"
disroot_lan.vm.synced_folder "../../Disroot-Changelog/", "/var/www/changelog/", owner: "www-data", group: "www-data"
end
end

98
vagrant/vagrant.sh Normal file
View File

@ -0,0 +1,98 @@
#!/usr/bin/env bash
# Disroot Website Development Environment using Vagrant on DEBIAN
# !! Make sure your user is in sudoers !!
sudo apt update ; sudo apt -y dist-upgrade ; sudo apt -y install wget
## Requirements
### Vagrant 2.2.17
dpkg -s vagrant | grep "install ok installed" &> /dev/null ## INSTALL AGAIN even when already installed!!
if [ $? -eq 0 ]; then
echo "====> Vagrant is installed!"
else
wget https://releases.hashicorp.com/vagrant/2.2.17/vagrant_2.2.17_x86_64.deb
sudo dpkg -i vagrant_2.2.17_x86_64.deb
sudo apt install -f -y
fi
### Virtuabox
dpkg -s virtualbox-6.1 | grep "install ok installed" &> /dev/null
if [ $? -eq 0 ]; then
echo "====> Virtualbox is installed!"
else
echo 'deb http://download.virtualbox.org/virtualbox/debian buster contrib' | sudo tee /etc/apt/sources.list.d/virtualbox.list
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
sudo apt-get update ; sudo apt-get install -y virtualbox-6.1
fi
### Vagrant plugins vagrant-vbguest:
vagrant plugin list | grep vbguest &> /dev/null
if [ $? -eq 0 ]; then
echo "====> vagrant-vbguest is installed!"
else
vagrant plugin install vagrant-vbguest
fi
### Git
sudo apt install -y git
## Installation
echo "====> Downloading all needed Disroot repos..."
if [ ! -d ~/Disroot ]; then
mkdir ~/Disroot;
fi
if [ ! -d ~/Disroot/Website ]; then
git clone https://git.disroot.org/Disroot/Website.git ~/Disroot/Website
fi
if [ ! -d ~/Disroot/grav-theme-disroot ]; then
git clone https://git.disroot.org/Disroot/grav-theme-disroot.git ~/Disroot/grav-theme-disroot
fi
if [ ! -d ~/Disroot/grav-theme-disrootblog ]; then
git clone https://git.disroot.org/Disroot/grav-theme-disrootblog.git ~/Disroot/grav-theme-disrootblog
fi
if [ ! -d ~/Disroot/grav-plugin-language-selector ]; then
git clone https://git.disroot.org/Disroot/grav-plugin-language-selector.git ~/Disroot/grav-plugin-language-selector
fi
if [ ! -d ~/Disroot/Disroot-Privacy-Policy ]; then
git clone https://git.disroot.org/Disroot/Disroot-Privacy-Policy.git ~/Disroot/Disroot-Privacy-Policy
fi
if [ ! -d ~/Disroot/Disroot-Changelog ]; then
git clone https://git.disroot.org/Disroot/CHANGELOG.git ~/Disroot/Disroot-Changelog
fi
cat /etc/hosts | grep '192.168.33.12'
if [ $? -eq 0 ]; then
echo "====> Disroot Website Host is already set!"
else
echo '192.168.33.12 disroot.lan' | sudo tee -a /etc/hosts
fi
echo "====> Booting Disroot Website Virtual Environment..."
cd ~/Disroot/Website/vagrant
vagrant up disroot_lan
vagrant provision
echo "====> You can now access Disroot Website VE with your browser at http://disroot.lan"