cassandra_vs_mariadb/Vagrantfile

56 lines
1.8 KiB
Ruby

# coding: utf-8
# -*- mode: ruby -*-
# vi: set ft=ruby :
BOX_IMAGE = "debian/stretch64"
Vagrant.configure("2") do |config|
config.vm.box = BOX_IMAGE
config.vm.hostname = "cassandra-vs-mariadb"
config.vm.provider "virtualbox" do |v|
v.memory = 1024
v.cpus = 2
end
config.vm.provider "libvirt" do |lv|
lv.memory = 1024
lv.cpus = 2
end
config.vm.synced_folder ".", "/vagrant", type: "sshfs"
#Begin des Installationsscripts
config.vm.provision "shell", inline: <<-SHELL
DEBIAN_FRONTEND=noninteractive
echo "deb http://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.sources.list
wget -q https://www.apache.org/dist/cassandra/KEYS
apt-key add KEYS
apt-get update
apt-get dist-upgrade -y
debconf-set-selections <<< 'mariadb-server mariadb-server/root_password password root'
debconf-set-selections <<< 'mariadb-server mariadb-server/root_password_again password root'
#zu installierende Pakete
apt-get install -y mariadb-server python3-mysqldb \
python3-pip openjdk-8-jdk cassandra python-dev libmariadbclient-dev \
libssl-dev python3-venv
sed -i "s/^bind-address/#bind-address/" /etc/mysql/my.cnf
mysql -u root -proot -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; FLUSH PRIVILEGES; SET GLOBAL max_connect_errors=10000;"
service mysql restart
mysql < /vagrant/mariadb_create_db.sql
adduser vagrant mysql
adduser vagrant cassandra
mkdir /home/vagrant/venv
python3 -m venv /home/vagrant/venv/
source /home/vagrant/venv/bin/activate
pip3 install wheel
pip3 install -r /vagrant/requirements.txt
chown -R vagrant:vagrant /home/vagrant/venv
su -c "python3 /vagrant/mariadb_setup.py" vagrant
su -c "python3 /vagrant/cassandra_setup.py" vagrant
deactivate
SHELL
end