Commit c6e01c8da2505355374bbae56e057550977c4b12
1 parent
b20a64b5
Exists in
master
and in
90 other branches
colab fully working
Showing
6 changed files
with
65 additions
and
1 deletions
Show diff stats
config/roles/integration_server.rb
| ... | ... | @@ -3,4 +3,4 @@ description "Application that manages user authentication, visual integration an |
| 3 | 3 | |
| 4 | 4 | # TODO colab and mailman-api should be able to run in separate hosts at some |
| 5 | 5 | # point in the future |
| 6 | -run_list 'recipe[mailman-api]', 'recipe[colab]' | |
| 6 | +run_list 'recipe[mailman-api]', 'recipe[colab]', 'recipe[basics::nginx]', 'recipe[colab::nginx]' | ... | ... |
| ... | ... | @@ -0,0 +1,29 @@ |
| 1 | +upstream colab { | |
| 2 | + server 127.0.0.1:8001 fail_timeout=10s; | |
| 3 | +} | |
| 4 | + | |
| 5 | +server { | |
| 6 | + listen *:80; | |
| 7 | + | |
| 8 | + server_name <%= node['config']['external_hostname'] %> localhost; | |
| 9 | + | |
| 10 | + access_log /var/log/nginx/colab.access.log; | |
| 11 | + error_log /var/log/nginx/colab.error.log; | |
| 12 | + | |
| 13 | + location / { | |
| 14 | + root /usr/share/nginx/colab; | |
| 15 | + try_files $uri @colab-app; | |
| 16 | + } | |
| 17 | + | |
| 18 | + location @colab-app { | |
| 19 | + proxy_pass http://colab; | |
| 20 | + proxy_read_timeout 90; | |
| 21 | + proxy_connect_timeout 90; | |
| 22 | + proxy_redirect off; | |
| 23 | + proxy_set_header Host $host; | |
| 24 | + proxy_set_header X-Real-IP $remote_addr; | |
| 25 | + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | |
| 26 | + } | |
| 27 | +} | |
| 28 | + | |
| 29 | +# vim: ft=nginx | ... | ... |
test/colab_test.sh
| ... | ... | @@ -16,4 +16,14 @@ test_colab_responds() { |
| 16 | 16 | assertTrue 'colab responds' 'run_on integration curl --fail http://localhost:8001' |
| 17 | 17 | } |
| 18 | 18 | |
| 19 | +test_nginx_responds() { | |
| 20 | + assertTrue 'nginx reponds' 'run_on integration curl --fail http://localhost' | |
| 21 | +} | |
| 22 | + | |
| 23 | +test_nginx_virtualhost() { | |
| 24 | + local ip="$(grep integration: nodes.yaml | cut -d : -f 2)" | |
| 25 | + local title="$(curl --silent --header 'Host: beta.softwarepublico.gov.br' http://$ip/dashboard | grep '<title>' | sed -e 's/^\s*//')" | |
| 26 | + assertEquals "<title>Home - Colab</title>" "$title" | |
| 27 | +} | |
| 28 | + | |
| 19 | 29 | . shunit2 | ... | ... |