diff options
Diffstat (limited to 'tasks/kong-app.yml')
-rw-r--r-- | tasks/kong-app.yml | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/tasks/kong-app.yml b/tasks/kong-app.yml index 975e2cd..3c51e7e 100644 --- a/tasks/kong-app.yml +++ b/tasks/kong-app.yml | |||
@@ -2,26 +2,17 @@ | |||
2 | import_tasks: upstream.yml | 2 | import_tasks: upstream.yml |
3 | when: service.upstream is defined | 3 | when: service.upstream is defined |
4 | 4 | ||
5 | - name: Check if service exists | 5 | # https://docs.konghq.com/2.1.x/admin-api/#update-or-create-service |
6 | uri: | ||
7 | url: "{{ server.kong_app_admin_url }}/services/{{ service.name }}" | ||
8 | method: GET | ||
9 | headers: | ||
10 | apikey: "{{ server.kong_app_admin_apikey }}" | ||
11 | status_code: 200,404 | ||
12 | register: kong_app_check_service | ||
13 | |||
14 | - name: Update or Create service | 6 | - name: Update or Create service |
15 | uri: | 7 | uri: |
16 | url: "{{ server.kong_app_admin_url }}/services/{{ exists_service | ternary('', service.name) }}" | 8 | url: "{{ server.kong_app_admin_url }}/services/{{ service.name }}" |
17 | method: "{{ exists_service | ternary('POST', 'PATCH') }}" | 9 | method: PUT |
18 | body: "{{ service_body | to_json }}" | 10 | body: "{{ service_body | to_json }}" |
19 | status_code: 200,201 | 11 | status_code: 200,201 |
20 | headers: | 12 | headers: |
21 | apikey: "{{ server.kong_app_admin_apikey }}" | 13 | apikey: "{{ server.kong_app_admin_apikey }}" |
22 | Content-Type: application/json | 14 | Content-Type: application/json |
23 | vars: | 15 | vars: |
24 | exists_service: "{{ kong_app_check_service.status|default(404) == 404 }}" | ||
25 | service_body: | 16 | service_body: |
26 | name: "{{ service.name }}" | 17 | name: "{{ service.name }}" |
27 | url: "{{ service.url }}" | 18 | url: "{{ service.url }}" |