import_tasks: upstream.yml
when: service.upstream is defined
-- name: Check if service exists
- uri:
- url: "{{ server.kong_app_admin_url }}/services/{{ service.name }}"
- method: GET
- headers:
- apikey: "{{ server.kong_app_admin_apikey }}"
- status_code: 200,404
- register: kong_app_check_service
-
+# https://docs.konghq.com/2.1.x/admin-api/#update-or-create-service
- name: Update or Create service
uri:
- url: "{{ server.kong_app_admin_url }}/services/{{ exists_service | ternary('', service.name) }}"
- method: "{{ exists_service | ternary('POST', 'PATCH') }}"
+ url: "{{ server.kong_app_admin_url }}/services/{{ service.name }}"
+ method: PUT
body: "{{ service_body | to_json }}"
status_code: 200,201
headers:
apikey: "{{ server.kong_app_admin_apikey }}"
Content-Type: application/json
vars:
- exists_service: "{{ kong_app_check_service.status|default(404) == 404 }}"
service_body:
name: "{{ service.name }}"
url: "{{ service.url }}"