File tree Expand file tree Collapse file tree 6 files changed +84
-6
lines changed
playbooks/engine_and_federated_api Expand file tree Collapse file tree 6 files changed +84
-6
lines changed Original file line number Diff line number Diff line change
1
+ ---
2
+ - name : Set up infrastructure and deploy the Open Terms Archive engine and federated API
3
+ hosts : all
4
+
5
+ - import_playbook : infrastructure.yml
6
+ - import_playbook : application.yml
Original file line number Diff line number Diff line change
1
+ ---
2
+ - name : Deploy the Open Terms Archive engine and federated API
3
+ hosts : all
4
+ vars :
5
+ ota_reverse_proxy_engine_path : " /collection-api"
6
+ ota_reverse_proxy_federated_api_path : " /federation-api"
7
+ tasks :
8
+ - block :
9
+ - name : Load the engine production config
10
+ ansible.builtin.include_vars :
11
+ name : ota_engine_app_config
12
+ file : " {{ inventory_dir }}/{{ ota_engine_config_path | default('../config/production.json') }}"
13
+
14
+ - ansible.builtin.include_role :
15
+ name : engine
16
+
17
+ - ansible.builtin.include_role :
18
+ name : federated_api
19
+ tags : always
20
+
21
+ - block :
22
+ - name : Add conf in NGINX sites-available
23
+ ansible.builtin.template :
24
+ src : nginx-conf.j2
25
+ dest : ' /etc/nginx/sites-available/ota'
26
+ force : true
27
+ mode : " 644"
28
+
29
+ - name : Link conf from sites-available to sites-enabled
30
+ ansible.builtin.file :
31
+ src : ' /etc/nginx/sites-available/ota'
32
+ dest : ' /etc/nginx/sites-enabled/ota'
33
+ state : link
34
+ force : true
35
+ become : true
36
+ notify : Restart NGINX
37
+
38
+ handlers :
39
+ - name : Restart NGINX
40
+ become : true
41
+ ansible.builtin.service :
42
+ name : nginx
43
+ state : restarted
Original file line number Diff line number Diff line change
1
+ ---
2
+ - name : Set up infrastructure
3
+ hosts : all
4
+ become : true
5
+
6
+ - ansible.builtin.import_playbook : ../engine/infrastructure.yml
7
+ - ansible.builtin.import_playbook : ../federated_api/infrastructure.yml
Original file line number Diff line number Diff line change
1
+ {{ ansible_managed | comment }}
2
+
3
+ server {
4
+ listen 80;
5
+ server_name {{ inventory_hostname }};
6
+
7
+ location {{ ota_reverse_proxy_engine_path }} {
8
+ # Allowing for a `burst` of up to 5 requests beyond the specified rate limit. The `nodelay` parameter ensures that excessive requests beyond the burst limit are immediately rejected with a 429 error response instead of being queued. See https://www.nginx.com/blog/rate-limiting-nginx/.
9
+ limit_req zone=limited burst=5 nodelay;
10
+ rewrite ^{{ ota_reverse_proxy_engine_path }}/(.*)$ /$1 break;
11
+ proxy_pass http://localhost:{{ ota_engine_app_config.api.port }};
12
+ proxy_redirect off;
13
+ }
14
+
15
+ location {{ ota_reverse_proxy_federated_api_path }} {
16
+ # Allowing for a `burst` of up to 5 requests beyond the specified rate limit. The `nodelay` parameter ensures that excessive requests beyond the burst limit are immediately rejected with a 429 error response instead of being queued. See https://www.nginx.com/blog/rate-limiting-nginx/.
17
+ limit_req zone=limited burst=5 nodelay;
18
+ rewrite ^{{ ota_reverse_proxy_federated_api_path }}/(.*)$ /$1 break;
19
+ proxy_pass http://localhost:{{ ota_federated_api_app_config.port }};
20
+ proxy_redirect off;
21
+ }
22
+ }
Original file line number Diff line number Diff line change 60
60
become : true
61
61
ansible.builtin.template :
62
62
src : nginx-conf.j2
63
- dest : ' /etc/nginx/sites-available/ota-engine-api '
63
+ dest : ' /etc/nginx/sites-available/ota'
64
64
force : true
65
65
mode : " 644"
66
66
notify : Restart NGINX
67
67
68
68
- name : Link conf from sites-available to sites-enabled
69
69
become : true
70
70
ansible.builtin.file :
71
- src : ' /etc/nginx/sites-available/ota-engine-api '
72
- dest : ' /etc/nginx/sites-enabled/ota-engine-api '
71
+ src : ' /etc/nginx/sites-available/ota'
72
+ dest : ' /etc/nginx/sites-enabled/ota'
73
73
state : link
74
74
force : true
75
75
notify : Restart NGINX
Original file line number Diff line number Diff line change 62
62
become : true
63
63
ansible.builtin.template :
64
64
src : nginx-conf.j2
65
- dest : ' /etc/nginx/sites-available/ota-federated-api '
65
+ dest : ' /etc/nginx/sites-available/ota'
66
66
force : true
67
67
mode : " 644"
68
68
notify : Restart NGINX
69
69
70
70
- name : Link conf from sites-available to sites-enabled
71
71
become : true
72
72
ansible.builtin.file :
73
- src : ' /etc/nginx/sites-available/ota-federated-api '
74
- dest : ' /etc/nginx/sites-enabled/ota-federated-api '
73
+ src : ' /etc/nginx/sites-available/ota'
74
+ dest : ' /etc/nginx/sites-enabled/ota'
75
75
state : link
76
76
force : true
77
77
notify : Restart NGINX
You can’t perform that action at this time.
0 commit comments