summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Vagrantfile77
-rw-r--r--docs/vagrant.markdown53
2 files changed, 102 insertions, 28 deletions
diff --git a/Vagrantfile b/Vagrantfile
index ced296a1..2aab5897 100644
--- a/Vagrantfile
+++ b/Vagrantfile
@@ -1,34 +1,71 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby :
-VAGRANTFILE_API_VERSION = "2"
+$script_sqlite = <<SCRIPT
+apt-get update
+apt-get install -y apache2 php5 php5-sqlite php5-xdebug
+apt-get clean -y
+echo "ServerName localhost" >> /etc/apache2/apache2.conf
+service apache2 restart
+rm -f /var/www/html/index.html
+date > /etc/vagrant_provisioned_at
+SCRIPT
-$script = <<SCRIPT
-# install packages
+$script_mysql = <<SCRIPT
+export DEBIAN_FRONTEND=noninteractive
apt-get update
-apt-get install -y apache2 php5 libapache2-mod-php5 php5-sqlite php5-ldap php5-xdebug php5-curl php5-mysql php5-pgsql
+apt-get install -y apache2 php5 php5-mysql php5-xdebug mysql-server mysql-client
+apt-get clean -y
+echo "ServerName localhost" >> /etc/apache2/apache2.conf
service apache2 restart
+service mysql restart
+echo "create database kanboard;" | mysql -u root
rm -f /var/www/html/index.html
date > /etc/vagrant_provisioned_at
-echo "Go to http://localhost:8080/ (admin/admin) !"
SCRIPT
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
+$script_postgres = <<SCRIPT
+export DEBIAN_FRONTEND=noninteractive
+apt-get update
+apt-get install -y apache2 php5 php5-pgsql php5-xdebug postgresql postgresql-contrib
+apt-get clean -y
+echo "ServerName localhost" >> /etc/apache2/apache2.conf
+service apache2 restart
+service postgresql restart
+rm -f /var/www/html/index.html
+date > /etc/vagrant_provisioned_at
+SCRIPT
- # Virtualbox
- config.vm.provider "virtualbox" do |v|
- v.memory = 1024
+Vagrant.configure("2") do |config|
+
+ config.vm.define "sqlite" do |m|
+ m.vm.box = "ubuntu/trusty64"
+ m.vm.provision "shell", inline: $script_sqlite
+ m.vm.synced_folder ".", "/var/www/html", owner: "www-data", group: "www-data"
end
- # Image
- config.vm.box = "ubuntu/trusty64"
- config.vm.box_url = "http://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box"
+ config.vm.define "mysql" do |m|
+ m.vm.box = "ubuntu/trusty64"
+ m.vm.provision "shell", inline: $script_mysql
+ m.vm.synced_folder ".", "/var/www/html", owner: "www-data", group: "www-data"
+ end
- # Network
- config.vm.network :forwarded_port, guest: 80, host: 8080
- #config.vm.network "public_network", :bridge => "en0: Wi-Fi (AirPort)"
+ config.vm.define "postgres" do |m|
+ m.vm.box = "ubuntu/trusty64"
+ m.vm.provision "shell", inline: $script_postgres
+ m.vm.synced_folder ".", "/var/www/html", owner: "www-data", group: "www-data"
+ end
- # Setup
- config.vm.provision "shell", inline: $script
- config.vm.synced_folder ".", "/var/www/html", owner: "www-data", group: "www-data"
+ config.vm.define "debian7" do |m|
+ m.vm.box = "chef/debian-7.6"
+ m.vm.provision "shell", inline: $script_sqlite
+ m.vm.synced_folder ".", "/var/www", owner: "www-data", group: "www-data"
+ end
+
+ config.vm.define "debian6" do |m|
+ m.vm.box = "chef/debian-6.0.10"
+ m.vm.provision "shell", inline: $script_sqlite
+ m.vm.synced_folder ".", "/var/www", owner: "www-data", group: "www-data"
+ end
+
+ config.vm.network :forwarded_port, guest: 80, host: 8001
+ #config.vm.network "public_network", :bridge => "en0: Wi-Fi (AirPort)"
end
diff --git a/docs/vagrant.markdown b/docs/vagrant.markdown
index d19e356a..b485f310 100644
--- a/docs/vagrant.markdown
+++ b/docs/vagrant.markdown
@@ -1,8 +1,45 @@
-How to test Kanboard with Vagrant?
-==================================
-
-- Install Vagrant (http://www.vagrantup.com or apt-get install vagrant)
-- Install VirtualBox (https://www.virtualbox.org/ or apt-get install virtualbox)
-- Inside the root directory, and run the command `vagrant up`
-- Go to http://localhost:8080/index.php
-- Login with admin / admin
+Run Kanboard with Vagrant
+=========================
+
+Vagrant is used to test Kanboard in different environments.
+Several configurations are available:
+
+- Ubuntu 14.04 LTS with Kanboard/Sqlite
+- Ubuntu 14.04 LTS with Kanboard/Mysql
+- Ubuntu 14.04 LTS with Kanboard/Postgresql
+- Debian 7.6 with Kanboard/Sqlite
+- Debian 6 with Kanboard/Sqlite
+
+To use those configurations, you have to install the **last version** of Virtualbox and Vagrant.
+
+Standard boxes can be download from [VagrantCloud](https://vagrantcloud.com):
+
+```bash
+vagrant box add ubuntu/trusty64
+vagrant box add chef/debian-7.6
+vagrant box add chef/debian-6.0.10
+```
+
+If you want to test Kanboard on Ubuntu with Sqlite:
+
+```bash
+vagrant up sqlite
+```
+
+After the initialization, go to http://localhost:8001/.
+
+To test with Mysql:
+
+```bash
+vagrant up mysql
+```
+
+You have to configure Kanboard to use Mysql or Postgresql the first time (config file and database access).
+
+Available boxes are:
+
+- `vagrant up sqlite`
+- `vagrant up mysql`
+- `vagrant up postgres`
+- `vagrant up debian7`
+- `vagrant up debian6`