]> git.immae.eu Git - github/fretlink/ansible-kong-app.git/commitdiff
After testing
authorGaëtan Duchaussois <gaetan.duchaussois@fretlink.com>
Fri, 20 Apr 2018 10:14:40 +0000 (12:14 +0200)
committerGaëtan Duchaussois <gaetan.duchaussois@fretlink.com>
Fri, 20 Apr 2018 10:25:34 +0000 (12:25 +0200)
meta/main.yml
tasks/kong-app.yml
tasks/plugins.yml
tasks/routes.yml

index e2b8be4460b3046d9a645b741d4dba921ff5d6c8..a2ae9752362c96d195f03baea883030ce6685b5a 100644 (file)
@@ -1,7 +1,7 @@
 galaxy_info:
   author: FretLink team
   description: Love and trucks
-  company: FretLink 
+  company: FretLink
 
   # If the issue tracker for your role is not on github, uncomment the
   # next line and provide a value
@@ -14,7 +14,7 @@ galaxy_info:
   # - GPLv3
   # - Apache
   # - CC-BY
-  license: TBD 
+  license: TBD
 
   min_ansible_version: 2.4
 
index d50c193444449cc94077bc90bb197eebc0dad8c3..e162c0924ab7315c389de94735aa4d26f2d50a6b 100644 (file)
@@ -7,15 +7,15 @@
     status_code: 200,404
   register: kong_app_check_service
 
-#- name: Update or Create service
-#  uri:
-#    url: "{{ kong_app_admin_url }}/services/{{ kong_app_service_name }}"
-#    method: "{{ (kong_app_check_service.status_code == 404) | ternary ('POST', 'PATCH') }}"
-#    body: "{{ kong_app_service_body | to_json }}"
-#    headers:
-#      apikey: "{{ kong_app_admin_apikey }}"
-#      Content-Type: application/json
-#    status_code: 200,201
+- name: Update or Create service
+  uri:
+    url: "{{ kong_app_admin_url }}/services/{{ (kong_app_check_service.status == 404) | ternary('', kong_app_service_name) }}"
+    method: "{{ (kong_app_check_service.status == 404) | ternary('POST', 'PATCH') }}"
+    body: "{{ kong_app_service_body | to_json }}"
+    status_code: 200,201
+    headers:
+      apikey: "{{ kong_app_admin_apikey }}"
+      Content-Type: application/json
 
 - name: Setup plugins
   import_tasks: plugins.yml
index c8f165c1e1a4d79c5b94dc6b7e921d49b2169b9f..84f3d49e7f60d77cf396156792c054d85887a145 100644 (file)
@@ -3,16 +3,14 @@
     url: "{{ kong_app_admin_url }}/services/{{ kong_app_service_name }}/plugins"
     method: GET
     validate_certs: no
+    headers:
+      apikey: "{{ kong_app_admin_apikey }}"
   register: kong_app_service_plugins_check
 
-- name: Set plugins facts
-  set_fact:
-    kong_app_current_plugins: "{{ kong_app_service_plugins_check.json | default('{}') | from_json }}"
-
-- name: Setup plugin {{ plugin.name }}
+- name: Setup plugin
   uri:
-    url: "{{ kong_app_admin_url }}/services/{{ kong_app_service_name }}/plugins"
-    method: "{{ (current_config == {}) | ternary ('POST', 'PATCH') }}"
+    url: "{{ kong_app_admin_url }}/{{ (current_config.id == '') | ternary('services/' ~ kong_app_service_name ~ '/plugins','plugins/' ~ current_config.id) }}"
+    method: "{{ (current_config.id == '') | ternary ('POST', 'PATCH') }}"
     body: "{{ plugin | combine(current_body)  | to_json }}"
     headers:
       apikey: "{{ kong_app_admin_apikey }}"
@@ -22,7 +20,7 @@
   loop_control:
     loop_var: plugin
   vars:
-    current_config: "{{ kong_app_current_plugins.data | selectattr('name', plugin.name) | first |default({}) }}"
+    current_config: "{{ kong_app_service_plugins_check.json.data | selectattr('name', 'equalto', plugin.name) | first |default({\"id\": ''}) }}"
     current_id_hash:
-      id: "{{ current_config.id | default('')}}"
+      id: "{{ current_config.id }}"
     current_body: "{{ (current_id_hash.id == '') | ternary({}, current_id_hash) }}"
index 1a9f6dbafd040c3198e0d12ee0d357b8bfb322c8..bbcdb765568e6fec55e337b765d23f3dff3e2d8d 100644 (file)
@@ -3,12 +3,10 @@
     url: "{{ kong_app_admin_url }}/services/{{ kong_app_service_name }}/routes"
     method: GET
     validate_certs: no
+    headers:
+      apikey: "{{ kong_app_admin_apikey }}"
   register: kong_app_service_routes_check
 
-- name: Set routes facts
-  set_fact:
-    kong_app_current_routes: "{{ kong_app_service_routes_check.json |default('{\"data\": []}') | from_json }}"
-
 - name: Setup route
   uri:
     url: "{{ kong_app_admin_url }}/services/{{ kong_app_service_name }}/routes"
@@ -24,9 +22,9 @@
 
 - name: Delete old routes
   uri:
-    url: "{{ kong_app_admin_url }}/services/routes/{{ item.id }}"
+    url: "{{ kong_app_admin_url }}/routes/{{ item.id }}"
     method: DELETE
     headers:
       apikey: "{{ kong_app_admin_apikey }}"
     status_code: 204
-  with_items: "{{ kong_app_current_routes.data }}"
+  with_items: "{{ kong_app_service_routes_check.json.data }}"