Browse Source

Remove vagrant setup

This commit removes the instructions and tooling
to set up a StoryBoard VM via vagrant.
It is unmaintained, and has been for about 2.5 years.
We believe it is both unused and unlikely to work,
so we should avoid indicating that we advise using it.

Change-Id: I9d6853f0b0ea822d5cac0b13b8f1aa0b0e55d0ac
changes/67/532367/1
Zara 5 years ago
parent
commit
178549792c
  1. 1
      .gitignore
  2. 22
      Vagrantfile
  3. 45
      doc/source/install/development.rst
  4. 17
      vagrant/bootstrap.sh
  5. 63
      vagrant/puppet/manifests/site.pp

1
.gitignore vendored

@ -57,7 +57,6 @@ ChangeLog
# Local settings
etc/storyboard.conf
.vagrant
# IDE settings
.idea

22
Vagrantfile vendored

@ -1,22 +0,0 @@
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "trusty64"
config.vm.box_url = "http://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box"
config.vm.network :forwarded_port, host_ip: '127.0.0.1', guest: 3306, host: 3306
config.vm.network :forwarded_port, host_ip: '127.0.0.1', guest: 15672, host: 15672
config.vm.network :forwarded_port, host_ip: '127.0.0.1', guest: 5672, host: 5672
config.vm.provider "virtualbox" do |v|
v.name = "storyboard_dev"
end
config.vm.provision "shell", path: "vagrant/bootstrap.sh"
config.vm.provision :puppet do |puppet|
puppet.manifests_path = "vagrant/puppet/manifests"
puppet.manifest_file = "site.pp"
puppet.options="--verbose --debug"
end
end

45
doc/source/install/development.rst

@ -139,51 +139,6 @@ manually due to a current bug in Storyboard.
update users set is_superuser=1;
Optional steps: Launching the development VM with Vagrant
=========================================================
StoryBoard has certain server dependencies which are often complicated to
install on any development environment. To simplify this,
we've provided a vagrantfile which includes all required services.
The vagrant machine will handle mysql and rabbitmq (and set them up
automatically) however be aware that it is not set up for actually running the
api in the vagrant vm.
Using the vagrant machine is useful because you can run the test suite against
the database it provides.
1. Install [vagrant](https://www.vagrantup.com/)
2. Install [VirtualBox](https://www.virtualbox.org/)
3. Run `vagrant up` in the storyboard root directory.
If you choose to go this route, the appropriate configuration values in
`storyboard.conf` will be as follows::
...
[notifications]
rabbit_host=127.0.0.1
rabbit_login_method = AMQPLAIN
rabbit_userid = storyboard
rabbit_password = storyboard
rabbit_port = 5672
rabbit_virtual_host = /
...
[database]
connection = mysql+pymysql://storyboard:storyboard@127.0.0.1:3306/storyboard
...
Note that the VM will attempt to bind to local ports 3306, 5672,
and 15672. If those ports are already in use, you will have to modify the
vagrant file and your configuration to accommodate.
This VM has also been set up for unit tests.
Optional steps: Seed database with base data
============================================

17
vagrant/bootstrap.sh

@ -1,17 +0,0 @@
#!/bin/sh
apt-get update
apt-get install puppet
if [ ! -d "/etc/puppet/modules/mysql" ]; then
puppet module install puppetlabs-mysql --version 0.6.1
fi
if [ ! -d "/etc/puppet/modules/rabbitmq" ]; then
puppet module install puppetlabs-rabbitmq --version 4.1.0
fi
if [ ! -d "/etc/puppet/modules/erlang" ]; then
puppet module install garethr-erlang --version 0.3.0
fi

63
vagrant/puppet/manifests/site.pp

@ -1,63 +0,0 @@
node default {
$dev_user = 'storyboard'
$dev_password = 'storyboard'
include 'erlang'
package { 'erlang-base':
ensure => 'latest',
before => Class['rabbitmq']
}
##########################################################
##
## RabbitMQ
##
class { 'rabbitmq':
service_manage => true,
manage_repos => false,
delete_guest_user => true,
default_user => $dev_user,
default_pass => $dev_password,
}
rabbitmq_user { $dev_user:
ensure => present,
admin => true,
password => $dev_password,
require => Class['rabbitmq']
}
rabbitmq_user_permissions { "${dev_user}@/":
configure_permission => '.*',
read_permission => '.*',
write_permission => '.*',
require => Rabbitmq_user[$dev_user],
}
##########################################################
##
## MySQL
##
class {'mysql::server':
config_hash => {
bind_address => '0.0.0.0'
}
}
mysql::db { 'storyboard':
user => $dev_user,
password => $dev_password,
host => '%',
}
database_user{ 'openstack_citest@%':
ensure => present,
password_hash => mysql_password('openstack_citest'),
require => Class['mysql::server'],
}
database_grant{ 'openstack_citest@%/storyboard\_test\_db\_%':
privileges => ['ALL'],
require => Database_user['openstack_citest@%']
}
}
Loading…
Cancel
Save