Blame view

Vagrantfile 1.77 KB
89ea5a93   Antonio Terceiro   Add basic Vagrant...
1
2
3
# -*- mode: ruby -*-
# vi: set ft=ruby :

aede9435   Antonio Terceiro   centralize IP con...
4
5
require 'yaml'

bf4e46ee   Antonio Terceiro   lxc: cache sudo c...
6
load './local.rake' if File.exists?('local.rake')
bf4e46ee   Antonio Terceiro   lxc: cache sudo c...
7
if ENV['SPB_ENV'] == 'lxc'
89ea5a93   Antonio Terceiro   Add basic Vagrant...
8
9
10
11
  system('sudo', '-v')
end

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
0bffa549   Rodrigo Souto   Change centos box...
12
VAGRANTFILE_API_VERSION = "2"
9749cb50   Antonio Terceiro   simplify deployme...
13
14

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
cdd7e562   Antonio Terceiro   start over
15
  config.vm.box = ENV.fetch("VAGRANT_BOX", 'chef/centos-7.0')
9749cb50   Antonio Terceiro   simplify deployme...
16
17
  proxy = ENV['http_proxy'] || ENV['HTTP_PROXY']
  if proxy
57ea5789   Antonio Terceiro   Support using lxc...
18
19
20
21
22
23
24
    config.vm.provision 'shell', path: 'utils/proxy.sh', args: [proxy]
  end

  env = ENV.fetch('SPB_ENV', 'local')

  if File.exist?("config/#{env}/ips.yaml")
    ips = YAML.load_file("config/#{env}/ips.yaml")
aede9435   Antonio Terceiro   centralize IP con...
25
  else
a435fc6c   Antonio Terceiro   Vagrantfile: move...
26
    ips = nil
dcbacf46   Sergio Oliveira   Override vm confi...
27
28
  end

57ea5789   Antonio Terceiro   Support using lxc...
29
  config.vm.define 'database' do |database|
a435fc6c   Antonio Terceiro   Vagrantfile: move...
30
    database.vm.provider "virtualbox" do |vm|
9de7b2b9   Paulo Tada   Adding the mezuro...
31
      database.vm.network 'private_network', ip: ips['database'] if ips
b02ece51   Antonio Terceiro   Prepare for multi...
32
    end
dcbacf46   Sergio Oliveira   Override vm confi...
33
34
  end
  config.vm.define 'integration' do |integration|
57ea5789   Antonio Terceiro   Support using lxc...
35
36
    integration.vm.provider "virtualbox" do |vm|
      integration.vm.network 'private_network', ip: ips['integration'] if ips
4af809f5   Antonio Terceiro   integration: incr...
37
      vm.memory = 1024
b02ece51   Antonio Terceiro   Prepare for multi...
38
      vm.cpus = 2
9de7b2b9   Paulo Tada   Adding the mezuro...
39
    end
b02ece51   Antonio Terceiro   Prepare for multi...
40
  end
dcbacf46   Sergio Oliveira   Override vm confi...
41
42
  config.vm.define 'email' do |email|
    email.vm.provider "virtualbox" do |vm|
57ea5789   Antonio Terceiro   Support using lxc...
43
      email.vm.network 'private_network', ip: ips['email'] if ips
b02ece51   Antonio Terceiro   Prepare for multi...
44
    end
9de7b2b9   Paulo Tada   Adding the mezuro...
45
  end
b02ece51   Antonio Terceiro   Prepare for multi...
46
  config.vm.define 'social' do |social|
dcbacf46   Sergio Oliveira   Override vm confi...
47
48
    social.vm.provider "virtualbox" do |vm|
      social.vm.network 'private_network', ip: ips['social'] if ips
57ea5789   Antonio Terceiro   Support using lxc...
49
    end
b02ece51   Antonio Terceiro   Prepare for multi...
50
  end
9de7b2b9   Paulo Tada   Adding the mezuro...
51
52
53
54
55
56
57
  config.vm.define 'reverseproxy' do |reverseproxy|
    reverseproxy.vm.provider "virtualbox" do |vm|
      reverseproxy.vm.network 'private_network', ip: ips['reverseproxy'] if ips
    end
    if File.exist?("tmp/preconfig.#{env}.stamp")
      reverseproxy.ssh.port =  File.read("tmp/preconfig.#{env}.stamp").strip.to_i
      reverseproxy.ssh.host = ips['reverseproxy']
65f108fe   Paulo Tada   Adding machine on...
58
59
60
    end
  end
end
37b9ba48   Paulo Tada   Removing workarou...

dcbacf46   Sergio Oliveira   Override vm confi...

57ea5789   Antonio Terceiro   Support using lxc...

0433524f   Antonio Terceiro   Add `preconfig` t...

b02ece51   Antonio Terceiro   Prepare for multi...

89ea5a93   Antonio Terceiro   Add basic Vagrant...