1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-10 21:24:20 +01:00
fab-manager/Vagrantfile

63 lines
2.7 KiB
Ruby
Raw Normal View History

# frozen_string_literal: true
2016-03-23 18:39:41 +01:00
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = '2'
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = 'ubuntu/bionic64'
config.vm.define 'fabmanager-devbox'
# Forward ports so services running in the virtual machine can be accessed by
# the host
[
3000, # rails/puma
9200, # elasticsearch
5432, # postgres
1080, # mailcatcher web ui
4040 # ngrok web ui
].each do |port|
config.vm.network 'forwarded_port', guest: port, host: port
end
2016-03-23 18:39:41 +01:00
# nginx server
config.vm.network 'forwarded_port', guest: 80, host: 8080
# Configuration to allocate resources fro the virtual machine
config.vm.provider 'virtualbox' do |vb|
vb.customize ['modifyvm', :id, '--memory', '2048']
end
2016-03-23 18:39:41 +01:00
# If you are using Windows o Linux with an encrypted volume stick with the
# configuration below for file syncronization
config.vm.synced_folder '.', '/vagrant', type: 'virtualbox'
2016-03-23 18:39:41 +01:00
# Copy default configuration files for the database connection and the Rails application
config.vm.provision 'file', source: './config/database.yml.default', destination: '/vagrant/config/database.yml'
config.vm.provision 'file', source: './env.example', destination: '/vagrant/.env'
# Copy default configuration files to allow reviewing the Docker Compose integration
config.vm.provision 'file', source: './docker/development/docker-compose.yml', destination: '/home/vagrant/docker-compose.yml'
config.vm.provision 'file', source: './setup/env.example', destination: '/home/vagrant/config/env'
config.vm.provision 'file', source: './setup/nginx.conf.example', destination: '/home/vagrant/config/nginx/fabmanager.conf'
config.vm.provision 'file', source: './setup/elasticsearch.yml', destination: '/home/vagrant/elasticsearch/config/elasticsearch.yml'
config.vm.provision 'file', source: './setup/log4j2.properties', destination: '/home/vagrant/elasticsearch/config/log4j2.properties'
## Provision software dependencies
config.vm.provision 'shell', privileged: false, run: 'once',
path: 'provision/zsh_setup.sh'
config.vm.provision 'shell', privileged: false, run: 'once',
path: 'provision/box_setup.zsh',
env: {
'LC_ALL' => 'en_US.UTF-8',
'LANG' => 'en_US.UTF-8',
'LANGUAGE' => 'en_US.UTF-8'
}
config.vm.provision 'shell', privileged: true, run: 'once',
path: 'provision/box_tuning.zsh'
2016-03-23 18:39:41 +01:00
end