From cb86123c8ee1b5548666fcbc69630c1870d3f921 Mon Sep 17 00:00:00 2001
From: Sharath Prasad <sharaths.kashyap@gmail.com>
Date: Thu, 8 Feb 2024 11:41:13 +0530
Subject: [PATCH] Update main.yml for Comment Hub Services

---
 ansible/roles/kong-api/defaults/main.yml | 167 +++++++++++++++++++++++
 1 file changed, 167 insertions(+)

diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml
index fd3cc9e24..d3e9bdada 100644
--- a/ansible/roles/kong-api/defaults/main.yml
+++ b/ansible/roles/kong-api/defaults/main.yml
@@ -129,6 +129,7 @@ rcusermanagement_prefix: /api/v1
 hasuranodecomponent_prefix: /api/rest
 notifications_prefix: /api
 exam_prefix: /api
+comment_hub_prefix: /api
 
 # Service URLs
 knowledge_mw_service_url: "http://knowledge-mw-service:5000"
@@ -168,6 +169,7 @@ notifications_url: "http://{{notifications_ip}}"
 exam_url: "http://{{exam_ip}}"
 usermanagements_service_url: "http://user-manangement-service:5298"
 hasuranodecomponents_service_url: "http://hasuranodecomponent-service:3000"
+commenthub_service_url: "http://<comment-hub-url>:<port>"
 
 premium_consumer_rate_limits:
   - api: createContent
@@ -15660,3 +15662,168 @@ kong_apis:
     - name: opa-checks
       config.required: false
       config.enabled: false
+
+- name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/v1/comment/update"
+  upstream_url: "{{ commenthub_service_url }}/v1/comment/update"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
+
+  - name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/v1/comment/addFirst"
+  upstream_url: "{{ commenthub_service_url }}/v1/comment/addFirst"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
+
+  - name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/api/v1/comment/addNew"
+  upstream_url: "{{ commenthub_service_url }}/api/v1/comment/addNew"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
+      
+ - name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/api/v1/comment/getAll"
+  upstream_url: "{{ commenthub_service_url }}/api/v1/comment/getAll"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
+
+- name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/api/v1/comment/multipleWorkflows"
+  upstream_url: "{{ commenthub_service_url }}/api/v1/comment/multipleWorkflows"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
+- name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/api/v1/comment/setStatusToResolved"
+  upstream_url: "{{ commenthub_service_url }}/api/v1/comment/setStatusToResolved"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
+- name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/api/v1/comment/*/resolve"
+  upstream_url: "{{ commenthub_service_url }}/api/v1/comment/*/resolve"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
+- name: commentHubCreationService
+  uris: "{{ comment_hub_prefix }}/api/v1/comment/delete/"
+  upstream_url: "{{ commenthub_service_url }}/api/v1/comment/delete/"
+  strip_uri: true
+  plugins:
+    - name: jwt
+    - name: cors
+    - "{{ statsd_pulgin }}"
+    - name: acl
+      config.whitelist:
+      - anonymousAppAccess
+    - name: rate-limiting
+      config.policy: local
+      config.hour: "{{ medium_rate_limit_per_hour }}"
+      config.limit_by: credential
+    - name: request-size-limiting
+      config.allowed_payload_size: "{{ small_request_size_limit }}"
+    - name: opa-checks
+      config.required: false
+      config.enabled: false
-- 
GitLab