Commit 999fbfe388cc4eee2f3ba7c5aa4d390da7a727ca

Authored by Antonio Terceiro
1 parent 4af809f5

Extract config data from nodes.yaml

- nodes.yaml now contains the architecture description, which applies to
  all environments.
- config/$ENV/config.yml contains the configuration
Rakefile
... ... @@ -3,8 +3,10 @@ require 'chake'
3 3 $SPB_ENV = ENV.fetch('SPB_ENV', 'development')
4 4 $SPB_IPS = "ips.#{$SPB_ENV}.yaml"
5 5  
  6 +config = YAML.load_file("config/#{$SPB_ENV}/config.yaml")
6 7 ips = YAML.load_file($SPB_IPS)
7 8 $nodes.each do |node|
  9 + node.data['config'] = config
8 10 node.data['peers'] = ips
9 11 end
10 12  
... ...
config/development/config.yaml 0 → 100644
... ... @@ -0,0 +1,13 @@
  1 +admins:
  2 + -
  3 + - Paulo Meirelles
  4 + - paulo@softwarelivre.org
  5 +external_hostname: softwarepublico.dev
  6 +site_url: https://softwarepublico.dev
  7 +colab_from_address: '"Portal do Software Publico" <noreply@softwarepublico.dev>'
  8 +server_email: '"Portal do Software Publico" <noreply@softwarepublico.dev>'
  9 +email_subject_prefix: '[spb]'
  10 +lists_hostname: listas.softwarepublico.dev
  11 +lists_admin: paulo@softwarelivre.org
  12 +relay_hostname: relay.softwarepublico.dev
  13 +
... ...
nodes.yaml
... ... @@ -2,40 +2,19 @@ vagrant@integration:
2 2 run_list:
3 3 - role[server]
4 4 - role[integration_server]
5   - config: &CONFIG
6   - admins:
7   - -
8   - - Paulo Meirelles
9   - - paulo@softwarelivre.org
10   - external_hostname: softwarepublico.dev
11   - site_url: https://softwarepublico.dev
12   - colab_from_address: '"Portal do Software Publico" <noreply@softwarepublico.dev>'
13   - server_email: '"Portal do Software Publico" <noreply@softwarepublico.dev>'
14   - email_subject_prefix: '[spb]'
15   - lists_hostname: listas.softwarepublico.dev
16   - lists_admin: paulo@softwarelivre.org
17   - relay_hostname: relay.softwarepublico.dev
18 5 vagrant@email:
19 6 run_list:
20 7 - role[server]
21 8 - role[email_server]
22   - config:
23   - <<: *CONFIG
24 9 vagrant@social:
25 10 run_list:
26 11 - role[server]
27 12 - role[social_server]
28   - config:
29   - <<: *CONFIG
30 13 vagrant@database:
31 14 run_list:
32 15 - role[server]
33 16 - role[database_server]
34   - config:
35   - <<: *CONFIG
36 17 vagrant@reverseproxy:
37 18 run_list:
38 19 - role[server]
39 20 - role[reverse_proxy_server]
40   - config:
41   - <<: *CONFIG
... ...