From 2bbc01580177bd93cddd69585b43873d470f43e9 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 6 Mar 2020 20:16:41 +0530 Subject: [PATCH 001/298] Issue #000 fix: removing freshDesk api --- ansible/roles/kong-api/defaults/main.yml | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 3b577f8196..e26e46ecb8 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -3846,26 +3846,6 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: freshDesk - request_path: "/tickets/v1/create" - upstream_url: "{{ freshDesk_url }}/api/v2/tickets" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - name: request-transformer - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: "{{ freshDesk_ACL | default(['publicUser']) }}" - - 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: request-transformer - config.replace.headers: "Authorization: Basic {{ freshDesk_token }}" - - name: LicenseAPI request_path: "{{ license_api_prefix }}/v3" upstream_url: "{{ content_service_url }}/license/v3" From 78f4a778ee68d5dd8636f15f48508caf043cad3c Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 6 Mar 2020 21:13:19 +0530 Subject: [PATCH 002/298] Issue #000 fix: removing unwanted upstream for private nginx --- .../templates/configmap.yaml | 24 ------------------- 1 file changed, 24 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml index 2454922401..d38118cf6a 100644 --- a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml +++ b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml @@ -7,10 +7,6 @@ data: resolver {{ .Values.kube_dns_ip }}; - location /learner/ { - rewrite ^/learner/(.*) /$1 break; - proxy_pass http://learner-service:9000; - } location /api/ { rewrite ^/api/(.*) /$1 break; proxy_pass http://kong:8000; @@ -23,14 +19,6 @@ data: rewrite ^/admin-api/(.*) /$1 break; proxy_pass http://kong:8001; } - location /content/ { - rewrite ^/content/(.*) /$1 break; - proxy_pass http://content-service:9000; - } - location /badger/ { - rewrite ^/badger/(.*) /$1 break; - proxy_pass http://badger-service:8004; - } location /cert/ { rewrite ^/cert/(.*) /$1 break; proxy_pass http://cert-service:9000; @@ -39,18 +27,6 @@ data: rewrite ^/certreg/(.*) /$1 break; proxy_pass http://cert-registry-service:9000; } - location /print/ { - rewrite ^/print/(.*) /$1 break; - proxy_pass http://print-service:5000; - } - location /assessment/ { - rewrite ^/assessment/(.*) /$1 break; - proxy_pass http://assessment-service:9000; - } - location /notification/ { - rewrite ^/notification/(.*) /$1 break; - proxy_pass http://notification-service:9000; - } } kind: ConfigMap metadata: From 7582d1557941efad7b8827636e75a5f297bf9913 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Mar 2020 10:57:03 +0530 Subject: [PATCH 003/298] Issue #00 fix: removing service monitor for nginx --- .../helm_charts/core/nginx-public-ingress/values.j2 | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index d0d296452d..e1d78a37c9 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -541,16 +541,6 @@ nginxconfig: | keepalive 1000; } - upstream encryption { - server enc-service:8013; - keepalive 1000; - } - - upstream player { - server player:3000; - keepalive 1000; - } - include /etc/nginx/conf.d/*.conf; server { From 9e2542cfbe8295a9b4accf2255abb3bbbb668d31 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Mar 2020 10:58:05 +0530 Subject: [PATCH 004/298] Issue #00 fix: removing service monitor for nginx --- .../templates/serviceMonitor.yml | 25 ------------------- 1 file changed, 25 deletions(-) delete mode 100644 kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml b/kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml deleted file mode 100644 index 76efb64c6f..0000000000 --- a/kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml +++ /dev/null @@ -1,25 +0,0 @@ -{{- if .Values.serviceMonitor.enabled }} -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: {{ include "nginx-public-ingress.fullname" . }} - namespace: {{ default .Values.namespace .Release.Namespace }} - labels: - {{- include "nginx-public-ingress.labels" . | nindent 4 }} - {{- toYaml .Values.serviceMonitor.labels | nindent 4 }} -spec: - endpoints: - - honorLabels: true - interval: 15s - path: /metrics - port: http - scheme: http - scrapeTimeout: 10s - jobLabel: nginx-public-ingress - namespaceSelector: - matchNames: - - {{ default .Values.namespace .Release.Namespace }} - selector: - matchLabels: - {{- include "nginx-public-ingress.labels" . | nindent 6 }} -{{- end }} From 06782e4246139e4663dbee33bb6ee3cdbff3d5bb Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Mar 2020 11:00:54 +0530 Subject: [PATCH 005/298] Issue #000 fix: updating proxy config --- .../templates/configMap.yaml | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml b/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml index ef909bb6a1..577fc966ca 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml +++ b/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml @@ -17,14 +17,14 @@ data: nginx.conf: | {{ .Values.nginxconfig | indent 4 }} ---- -{{- if .Values.merge_domain_status }} -apiVersion: v1 -kind: ConfigMap -metadata: - name: keycloak-conf - namespace: {{ .Values.namespace }} -data: - keycloak.conf: | -{{ .Values.keycloakconf | indent 4 }} -{{- end }} +#--- +#{{- if .Values.merge_domain_status }} +#apiVersion: v1 +#kind: ConfigMap +#metadata: +# name: keycloak-conf +# namespace: {{ .Values.namespace }} +#data: +# keycloak.conf: | +#{{ .Values.keycloakconf | indent 4 }} +#{{- end }} From 16eb9415303ef5fca80c1e1e626f15c8cf0852af Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Mar 2020 11:19:17 +0530 Subject: [PATCH 006/298] Issue #000 fix: updating nginx configMap --- .../templates/configMap.yaml | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml b/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml index 577fc966ca..ef909bb6a1 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml +++ b/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml @@ -17,14 +17,14 @@ data: nginx.conf: | {{ .Values.nginxconfig | indent 4 }} -#--- -#{{- if .Values.merge_domain_status }} -#apiVersion: v1 -#kind: ConfigMap -#metadata: -# name: keycloak-conf -# namespace: {{ .Values.namespace }} -#data: -# keycloak.conf: | -#{{ .Values.keycloakconf | indent 4 }} -#{{- end }} +--- +{{- if .Values.merge_domain_status }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: keycloak-conf + namespace: {{ .Values.namespace }} +data: + keycloak.conf: | +{{ .Values.keycloakconf | indent 4 }} +{{- end }} From b097977e71d669ce2f992186353b512a8e01dcbf Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Mar 2020 11:26:08 +0530 Subject: [PATCH 007/298] Issue #000 fix: removing configMap --- .../nginx-public-ingress/templates/configMap.yaml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml b/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml index ef909bb6a1..ce956f5898 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml +++ b/kubernetes/helm_charts/core/nginx-public-ingress/templates/configMap.yaml @@ -16,15 +16,3 @@ metadata: data: nginx.conf: | {{ .Values.nginxconfig | indent 4 }} - ---- -{{- if .Values.merge_domain_status }} -apiVersion: v1 -kind: ConfigMap -metadata: - name: keycloak-conf - namespace: {{ .Values.namespace }} -data: - keycloak.conf: | -{{ .Values.keycloakconf | indent 4 }} -{{- end }} From 3e9f53dc6c244f1318fa3af26cc7d5e3196d4e71 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Mar 2020 16:58:56 +0530 Subject: [PATCH 008/298] Issue #00 fix: adding new variables for downloading schemas --- ansible/inventory/env/group_vars/all.yml | 3 +++ .../stack-sunbird/templates/content-service_application.conf | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ansible/inventory/env/group_vars/all.yml b/ansible/inventory/env/group_vars/all.yml index 9d52a8df8b..54b958f73e 100644 --- a/ansible/inventory/env/group_vars/all.yml +++ b/ansible/inventory/env/group_vars/all.yml @@ -713,3 +713,6 @@ sunbird_portal_updateLoginTimeEnabled: false # Desktop app vars sunbird_offline_azure_storage_account: "" #added this var for adopter usecase offline_installer_container_name: "" #added this var for adopter usecase + +# Dock vars +schema_base_path: /home/sunbird/content-service-1.0-SNAPSHOT/schemas/ diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index db2d80e85b..eb9b6cdb77 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -316,7 +316,7 @@ play.filters { play.http.parser.maxMemoryBuffer = 50MB akka.http.parsing.max-content-length = 50MB -schema.base_path="/home/sunbird/content-service-1.0-SNAPSHOT/schemas/" +schema.base_path="{{ schema_base_path }}" # Cassandra Configuration cassandra { @@ -419,4 +419,4 @@ languageCode { odia : "or" tamil : "ta" telugu : "te" -} \ No newline at end of file +} From d1b470d6a6002dc19596037e85e570335ad62af0 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 10 Mar 2020 10:34:48 +0530 Subject: [PATCH 009/298] Issue #00 fix: removing unwanted upstream --- .../core/nginx-public-ingress/values.j2 | 60 +++++++++---------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index e1d78a37c9..719d268cbe 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -208,36 +208,36 @@ proxyconfig: | proxy_pass $target; } - location /grafana/ { - rewrite ^/grafana/(.*) /$1 break; - proxy_pass http://prometheus-operator-grafana.monitoring.svc.cluster.local; - } - - location /encryption/ { - rewrite ^/encryption/(.*) /$1 break; - - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Scheme $scheme; - proxy_connect_timeout 1; - proxy_send_timeout 30; - proxy_read_timeout 40; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_pass http://encryption; - } - - location /badging/ { - rewrite ^/badging/(.*) /$1 break; - - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Scheme $scheme; - proxy_connect_timeout 1; - proxy_send_timeout 30; - proxy_read_timeout 40; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_pass http://badger-service.{{ namespace }}.svc.cluster.local:8004; - } +# location /grafana/ { +# rewrite ^/grafana/(.*) /$1 break; +# proxy_pass http://prometheus-operator-grafana.monitoring.svc.cluster.local; +# } +# +# location /encryption/ { +# rewrite ^/encryption/(.*) /$1 break; +# +# proxy_set_header Host $host; +# proxy_set_header X-Real-IP $remote_addr; +# proxy_set_header X-Scheme $scheme; +# proxy_connect_timeout 1; +# proxy_send_timeout 30; +# proxy_read_timeout 40; +# proxy_set_header X-Forwarded-Proto $scheme; +# proxy_pass http://encryption; +# } +# +# location /badging/ { +# rewrite ^/badging/(.*) /$1 break; +# +# proxy_set_header Host $host; +# proxy_set_header X-Real-IP $remote_addr; +# proxy_set_header X-Scheme $scheme; +# proxy_connect_timeout 1; +# proxy_send_timeout 30; +# proxy_read_timeout 40; +# proxy_set_header X-Forwarded-Proto $scheme; +# proxy_pass http://badger-service.{{ namespace }}.svc.cluster.local:8004; +# } location ~* ^/assets/public/(.*) { From 821b02da8976aa3ec90fe178fa52030634cdef8f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 10 Mar 2020 10:36:44 +0530 Subject: [PATCH 010/298] Issue #000 fix: removing unwanted upstream --- .../core/nginx-public-ingress/values.j2 | 34 +------------------ 1 file changed, 1 insertion(+), 33 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 719d268cbe..afcb88eda4 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -207,39 +207,7 @@ proxyconfig: | add_header Set-Cookie $auth_cookie; proxy_pass $target; } - -# location /grafana/ { -# rewrite ^/grafana/(.*) /$1 break; -# proxy_pass http://prometheus-operator-grafana.monitoring.svc.cluster.local; -# } -# -# location /encryption/ { -# rewrite ^/encryption/(.*) /$1 break; -# -# proxy_set_header Host $host; -# proxy_set_header X-Real-IP $remote_addr; -# proxy_set_header X-Scheme $scheme; -# proxy_connect_timeout 1; -# proxy_send_timeout 30; -# proxy_read_timeout 40; -# proxy_set_header X-Forwarded-Proto $scheme; -# proxy_pass http://encryption; -# } -# -# location /badging/ { -# rewrite ^/badging/(.*) /$1 break; -# -# proxy_set_header Host $host; -# proxy_set_header X-Real-IP $remote_addr; -# proxy_set_header X-Scheme $scheme; -# proxy_connect_timeout 1; -# proxy_send_timeout 30; -# proxy_read_timeout 40; -# proxy_set_header X-Forwarded-Proto $scheme; -# proxy_pass http://badger-service.{{ namespace }}.svc.cluster.local:8004; -# } - - + location ~* ^/assets/public/(.*) { # Enabling cache for Response code 200 expires 1M; From f9dcb2837b2f737000e0002bc8c49f1a45a62150 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 10 Mar 2020 12:26:47 +0530 Subject: [PATCH 011/298] Issue #000 fix: removing unwanted vars --- ansible/inventory/env/group_vars/all.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/inventory/env/group_vars/all.yml b/ansible/inventory/env/group_vars/all.yml index 54b958f73e..3e2bc8b9a0 100644 --- a/ansible/inventory/env/group_vars/all.yml +++ b/ansible/inventory/env/group_vars/all.yml @@ -30,7 +30,7 @@ azure_plugin_storage_account_key: "{{core_vault_sunbird_azure_storage_key}}" # Keycloak keycloak_api_management_user_first_name: "admin" keycloak_api_management_user_last_name: "admin" -keycloak_api_management_user_email: "{{keycloak_api_management_user_email}}" +#keycloak_api_management_user_email: "{{keycloak_api_management_user_email}}" keycloak_api_management_username: "{{core_vault_sunbird_sso_username}}" keycloak_api_management_user_password: "{{core_vault_sunbird_sso_password}}" keycloak_management_user: "admin" From e18a61f4ca8c362c78dbce372771af5f498424d3 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 10 Mar 2020 14:54:21 +0530 Subject: [PATCH 012/298] Issue #000 fix: adding player upstream --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index afcb88eda4..e9217df908 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -504,6 +504,11 @@ nginxconfig: | limit_conn_zone $binary_remote_addr zone=limitbyaddr:10m; limit_conn_status 429; + upstream player { + server player:3000; + keepalive 1000; + } + upstream kong { server kong:8000; keepalive 1000; From a9e31e62f04adfa7e80381c144bfc98305119389 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 13:49:45 +0530 Subject: [PATCH 013/298] Issue #00 feat: helm chart for opensaber --- ansible/roles/stack-sunbird/defaults/main.yml | 3 +- .../templates/sunbird_opensaber.env | 5 ++ .../helm_charts/core/opensaber/Chart.yaml | 5 ++ .../core/opensaber/templates/configmap.yaml | 11 ++++ .../core/opensaber/templates/deployment.yaml | 59 +++++++++++++++++++ .../helm_charts/core/opensaber/values.j2 | 25 ++++++++ 6 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 ansible/roles/stack-sunbird/templates/sunbird_opensaber.env create mode 100644 kubernetes/helm_charts/core/opensaber/Chart.yaml create mode 100644 kubernetes/helm_charts/core/opensaber/templates/configmap.yaml create mode 100644 kubernetes/helm_charts/core/opensaber/templates/deployment.yaml create mode 100644 kubernetes/helm_charts/core/opensaber/values.j2 diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index bcc4da04fc..1e7ab84b2d 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -237,6 +237,7 @@ service_env: userorg: ../../../../ansible/roles/stack-sunbird/templates/sunbird_user-org-service.env player: ../../../../ansible/roles/stack-sunbird/templates/sunbird_player.env print: ../../../../ansible/roles/stack-sunbird/templates/sunbird_print-service.env + opensaber: ../../../../ansible/roles/stack-sunbird/templates/sunbird_opensaber.env sunbird_portal_player_cdn_enabled: false @@ -482,4 +483,4 @@ userorg_liveness_readiness: path: /service/health port: 9000 initialDelaySeconds: 60 - periodSeconds: 10 \ No newline at end of file + periodSeconds: 10 diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env new file mode 100644 index 0000000000..6d8e5ee758 --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -0,0 +1,5 @@ +database_uuidPropertyName: osid +database_provider: SQLG +connectionInfo_uri: jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb +connectionInfo_username: {{ opensaber_postgres_username }} +connectionInfo_password: {{ opensaber_postgres_password }} diff --git a/kubernetes/helm_charts/core/opensaber/Chart.yaml b/kubernetes/helm_charts/core/opensaber/Chart.yaml new file mode 100644 index 0000000000..a1dae62db1 --- /dev/null +++ b/kubernetes/helm_charts/core/opensaber/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +appVersion: "1.0" +description: A Helm chart for Kubernetes +name: opensaber +version: 0.1.0 diff --git a/kubernetes/helm_charts/core/opensaber/templates/configmap.yaml b/kubernetes/helm_charts/core/opensaber/templates/configmap.yaml new file mode 100644 index 0000000000..2a18b4516e --- /dev/null +++ b/kubernetes/helm_charts/core/opensaber/templates/configmap.yaml @@ -0,0 +1,11 @@ +#apiVersion: v1 +#data: +# {{- range $key, $val := .Values.certenv }} +# {{ $key }}: {{ $val }} +# {{- end }} +#kind: ConfigMap +#metadata: +# creationTimestamp: null +# name: {{ .Chart.Name }}-config +# namespace: {{ .Values.namespace }} + diff --git a/kubernetes/helm_charts/core/opensaber/templates/deployment.yaml b/kubernetes/helm_charts/core/opensaber/templates/deployment.yaml new file mode 100644 index 0000000000..13c47c4b8b --- /dev/null +++ b/kubernetes/helm_charts/core/opensaber/templates/deployment.yaml @@ -0,0 +1,59 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Chart.Name }} + namespace: {{ .Values.namespace }} + annotations: + reloader.stakater.com/auto: "true" +spec: + replicas: {{ .Values.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.strategy.maxsurge }} + maxUnavailable: {{ default (sub .Values.replicaCount 1) .Values.strategy.maxunavailable }} + selector: + matchLabels: + app: {{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Chart.Name }} + spec: +{{- if .Values.imagepullsecrets }} + imagePullSecrets: + - name: {{ .Values.imagepullsecrets }} +{{- end }} + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" + imagePullPolicy: Always + envFrom: + - configMapRef: + name: {{ .Chart.Name }}-config + resources: +{{ toYaml .Values.resources | indent 10 }} + ports: + - containerPort: {{ .Values.network.port }} + {{- if .Values.healthcheck }} + livenessProbe: +{{ toYaml .Values.livenessProbe | indent 10 }} + readinessProbe: +{{ toYaml .Values.readinessProbe | indent 10 }} + {{- end }} + +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ .Chart.Name }}-service + namespace: {{ .Values.namespace }} + labels: + app: {{ .Chart.Name }} +spec: + ports: + - name: http-{{ .Chart.Name }} + protocol: TCP + port: {{ .Values.network.targetport }} + selector: + app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/opensaber/values.j2 b/kubernetes/helm_charts/core/opensaber/values.j2 new file mode 100644 index 0000000000..9b5b0fdca2 --- /dev/null +++ b/kubernetes/helm_charts/core/opensaber/values.j2 @@ -0,0 +1,25 @@ +### Default variable file for opensaber ### + +namespace: {{ namespace }} +imagepullsecrets: {{ imagepullsecrets }} +dockerhub: {{ dockerhub }} + +replicaCount: {{opensaber_replicacount|default(1)}} +repository: {{opensaber_repository|default('opensaber')}} +image_tag: {{ image_tag }} +resources: + requests: + cpu: {{opensaber_cpu_req|default('500m')}} + memory: {{opensaber_mem_req|default('200Mi')}} + limits: + cpu: {{opensaber_cpu_limit|default('1')}} + memory: {{opensaber_mem_limit|default('1024Mi')}} +network: + port: 9090 + targetport: 9090 +strategy: + type: RollingUpdate + maxsurge: {{ opensaber_maxsurge|default(1) }} + maxunavailable: {{ opensaber_maxunavailable|default }} + +#{{ cert_liveness_readiness | to_nice_yaml }} From f60c75af0b0b31d1792f80cdd1f2a51746e446ba Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 14:30:05 +0530 Subject: [PATCH 014/298] Issue #00 feat: updating opensaber variables --- .../roles/stack-sunbird/templates/sunbird_opensaber.env | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index 6d8e5ee758..9dd85d2d48 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -1,5 +1,5 @@ -database_uuidPropertyName: osid +database_uuidpropertyname: osid database_provider: SQLG -connectionInfo_uri: jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb -connectionInfo_username: {{ opensaber_postgres_username }} -connectionInfo_password: {{ opensaber_postgres_password }} +connectioninfo_uri: jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb +connectioninfo_username: {{ opensaber_postgres_username }} +connectioninfo_password: {{ opensaber_postgres_password }} From b1eb33f5e6356f48f35c3148ceb8f400a70dbcd8 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 14:33:51 +0530 Subject: [PATCH 015/298] Issue #00 feat: updating opensaber variables --- .../stack-sunbird/templates/sunbird_opensaber.env | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index 9dd85d2d48..d2de99b777 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -1,5 +1,5 @@ -database_uuidpropertyname: osid -database_provider: SQLG -connectioninfo_uri: jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb -connectioninfo_username: {{ opensaber_postgres_username }} -connectioninfo_password: {{ opensaber_postgres_password }} +databaseuuidpropertyname: osid +databaseprovider: SQLG +connectioninfo_uri: "jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb" +connectioninfo_username: "{{ opensaber_postgres_username }}" +connectioninfo_password: "{{ opensaber_postgres_password }}" From f728f94c772e8124f2e3c261441d156922fd4008 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 14:36:44 +0530 Subject: [PATCH 016/298] Issue #000 fix: updating opensaber_postgres_host --- .../stack-sunbird/templates/sunbird_opensaber.env | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index d2de99b777..e83da382d2 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -1,5 +1,5 @@ -databaseuuidpropertyname: osid -databaseprovider: SQLG -connectioninfo_uri: "jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb" -connectioninfo_username: "{{ opensaber_postgres_username }}" -connectioninfo_password: "{{ opensaber_postgres_password }}" +database_uuidPropertyName: osid +database_provider: SQLG +connectionInfo_uri: "jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb" +connectionInfo_username: "{{ opensaber_postgres_username }}" +connectionInfo_password: "{{ opensaber_postgres_password }}" From e9deaf829997dd32e5dd877c03c366bc766c60a7 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 14:38:19 +0530 Subject: [PATCH 017/298] Issue #000 fix: updating opensaber vars --- .../stack-sunbird/templates/sunbird_opensaber.env | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index e83da382d2..2c03d1e7bd 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -1,5 +1,5 @@ -database_uuidPropertyName: osid -database_provider: SQLG -connectionInfo_uri: "jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb" -connectionInfo_username: "{{ opensaber_postgres_username }}" -connectionInfo_password: "{{ opensaber_postgres_password }}" +database_uuidPropertyName=osid +database_provider=SQLG +connectionInfo_uri="jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb" +connectionInfo_username="{{ opensaber_postgres_username }}" +connectionInfo_password="{{ opensaber_postgres_password }}" From 521d01e85a328aec88067e7ce7eb181c5b4104a9 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 14:40:46 +0530 Subject: [PATCH 018/298] Issue #00 feat: updating opensaber variables --- ansible/roles/stack-sunbird/templates/sunbird_opensaber.env | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index 2c03d1e7bd..cee8804bf4 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -1,5 +1,5 @@ database_uuidPropertyName=osid database_provider=SQLG -connectionInfo_uri="jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb" -connectionInfo_username="{{ opensaber_postgres_username }}" -connectionInfo_password="{{ opensaber_postgres_password }}" +connectionInfo_uri=jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb +connectionInfo_username={{ opensaber_postgres_username }} +connectionInfo_password={{ opensaber_postgres_password }} From 4c5e8c2bdf234db9da5930edc165fb791bc3a319 Mon Sep 17 00:00:00 2001 From: sknirmalkar89 <59080585+sknirmalkar89@users.noreply.github.com> Date: Wed, 11 Mar 2020 16:13:48 +0530 Subject: [PATCH 019/298] Registry -patch 1 open saber url (#1290) * updating registry url --- ansible/roles/kong-api/defaults/main.yml | 121 +++++++++++++++++++++++ 1 file changed, 121 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index e26e46ecb8..4f34a13dbf 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -59,6 +59,7 @@ cert_service_prefix: /cert cert_registry_service_prefix: /certreg desktop_app_prefix: /desktop license_api_prefix: /license +opensaber_service_prefix: /reg # Service URLs knowledge_mw_service_url: "http://knowledge-mw-service:5000" @@ -73,6 +74,7 @@ lms_service_url: "http://lms-service:9000" cert_service_url: "http://cert-service:9000" cert_registry_service_url: "http://cert-registry-service:9000" content_service_url: "http://content-service:9000" +opensaber_service_url: "http://opensaber-service:9090" premium_consumer_rate_limits: - api: createContent @@ -3913,3 +3915,122 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: addEntity + request_path: "{{ opensaber_service_prefix }}/add" + upstream_url: "{{ opensaber_service_url }}/add" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: readEntity + request_path: "{{ opensaber_service_prefix }}/read" + upstream_url: "{{ opensaber_service_url }}/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: deleteEntity + request_path: "{{ opensaber_service_prefix }}/delete" + upstream_url: "{{ opensaber_service_url }}/delete" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: updateEntity + request_path: "{{ opensaber_service_prefix }}/update" + upstream_url: "{{ opensaber_service_url }}/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: searchEntity + request_path: "{{ opensaber_service_prefix }}/search" + upstream_url: "{{ opensaber_service_url }}/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: auditEntity + request_path: "{{ opensaber_service_prefix }}/audit" + upstream_url: "{{ opensaber_service_url }}/audit" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: healthCheckEntity + request_path: "{{ opensaber_service_prefix }}/health" + upstream_url: "{{ opensaber_service_url }}/health" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From ffc44f4bcc3e0f741682e4ead37e5cbe47a4dfdf Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 16:28:01 +0530 Subject: [PATCH 020/298] Issue #000 fix: updating opensaber port --- kubernetes/helm_charts/core/opensaber/values.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kubernetes/helm_charts/core/opensaber/values.j2 b/kubernetes/helm_charts/core/opensaber/values.j2 index 9b5b0fdca2..1287ef0693 100644 --- a/kubernetes/helm_charts/core/opensaber/values.j2 +++ b/kubernetes/helm_charts/core/opensaber/values.j2 @@ -15,8 +15,8 @@ resources: cpu: {{opensaber_cpu_limit|default('1')}} memory: {{opensaber_mem_limit|default('1024Mi')}} network: - port: 9090 - targetport: 9090 + port: 8080 + targetport: 8080 strategy: type: RollingUpdate maxsurge: {{ opensaber_maxsurge|default(1) }} From 2e26f800026258e64a487086dac44e2492089ff4 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 16:30:35 +0530 Subject: [PATCH 021/298] Issue #00 feat: updating opensaber ports --- ansible/roles/kong-api/defaults/main.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 4f34a13dbf..7f1b33bf41 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -3915,7 +3915,11 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" +<<<<<<< Updated upstream +======= + +>>>>>>> Stashed changes - name: addEntity request_path: "{{ opensaber_service_prefix }}/add" upstream_url: "{{ opensaber_service_url }}/add" @@ -3932,6 +3936,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" +<<<<<<< Updated upstream - name: readEntity request_path: "{{ opensaber_service_prefix }}/read" @@ -4021,6 +4026,12 @@ kong_apis: - name: healthCheckEntity request_path: "{{ opensaber_service_prefix }}/health" upstream_url: "{{ opensaber_service_url }}/health" +======= + + - name: + request_path: "{{ opensaber_service_prefix }}/add" + upstream_url: "{{ opensaber_service_url }}/add" +>>>>>>> Stashed changes strip_request_path: true plugins: - name: jwt From 30d14380f2013908697e2375e4363c8b6c26555d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 16:41:54 +0530 Subject: [PATCH 022/298] Issue #000 fix: adding opensaber apis --- ansible/roles/kong-api/defaults/main.yml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 7f1b33bf41..4f34a13dbf 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -3915,11 +3915,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -<<<<<<< Updated upstream -======= - ->>>>>>> Stashed changes - name: addEntity request_path: "{{ opensaber_service_prefix }}/add" upstream_url: "{{ opensaber_service_url }}/add" @@ -3936,7 +3932,6 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -<<<<<<< Updated upstream - name: readEntity request_path: "{{ opensaber_service_prefix }}/read" @@ -4026,12 +4021,6 @@ kong_apis: - name: healthCheckEntity request_path: "{{ opensaber_service_prefix }}/health" upstream_url: "{{ opensaber_service_url }}/health" -======= - - - name: - request_path: "{{ opensaber_service_prefix }}/add" - upstream_url: "{{ opensaber_service_url }}/add" ->>>>>>> Stashed changes strip_request_path: true plugins: - name: jwt From 9f7134c60afa5e4b1a1588967edb8bc56b9cc115 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 19:13:17 +0530 Subject: [PATCH 023/298] Issue #00 feat: updating opensaber ports --- ansible/roles/kong-api/defaults/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 4f34a13dbf..a278c4ffcc 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -74,7 +74,7 @@ lms_service_url: "http://lms-service:9000" cert_service_url: "http://cert-service:9000" cert_registry_service_url: "http://cert-registry-service:9000" content_service_url: "http://content-service:9000" -opensaber_service_url: "http://opensaber-service:9090" +opensaber_service_url: "http://opensaber-service:8080" premium_consumer_rate_limits: - api: createContent From 795c6e8120dde4aebcc8dd34a608129bbd2d9899 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 19:32:29 +0530 Subject: [PATCH 024/298] Issue #00 feat: setting proxy header --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 1 + 1 file changed, 1 insertion(+) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index e9217df908..70819a92a8 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -154,6 +154,7 @@ proxyconfig: | client_max_body_size 60M; rewrite ^/api/(.*) /$1 break; proxy_set_header Connection ""; + porxy_set_header X-Forwarded-Proto $scheme proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; From 82534fca6e64410961b5931f896076ecdd20422b Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 19:34:44 +0530 Subject: [PATCH 025/298] Issue #000 fix: updating proxy --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 70819a92a8..ea1dba5bab 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -154,7 +154,7 @@ proxyconfig: | client_max_body_size 60M; rewrite ^/api/(.*) /$1 break; proxy_set_header Connection ""; - porxy_set_header X-Forwarded-Proto $scheme + proxy_set_header X-Forwarded-Proto $scheme proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; From 238855b08cb190a13761394ffafd32d00f8d31d1 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 19:59:02 +0530 Subject: [PATCH 026/298] Issue #000 fix: updating proxy config --- .../core/nginx-public-ingress/values.j2 | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index ea1dba5bab..d1c21840f0 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -64,7 +64,6 @@ repository: {{proxy_repository|default('proxy')}} image_tag: {{ image_tag }} proxyconfig: | - {% if proto=='https' %} server { listen 80; listen [::]:80; @@ -72,21 +71,6 @@ proxyconfig: | # Limitting open connection per ip limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; - return 301 https://{{ proxy_server_name }}$request_uri; - } - {% endif %} - server { - {% if proto=='http' %} - listen 80; - listen [::]:80; - {% else %} - listen 443 ssl; - ssl_certificate /etc/secrets/site.crt; - ssl_certificate_key /etc/secrets/site.key; - ssl_protocols TLSv1.2 TLSv1.3; - ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA HIGH !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"; - {% endif %} - server_name {{ proxy_server_name }}; # Limitting open connection per ip limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; From c123ab42a0f2327e3f97e49f196813f48b075a72 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 11 Mar 2020 20:03:47 +0530 Subject: [PATCH 027/298] Issue #00 feat: setting proxy header --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 5 ----- 1 file changed, 5 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index d1c21840f0..e1a13f6bb8 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -68,10 +68,6 @@ proxyconfig: | listen 80; listen [::]:80; server_name {{ proxy_server_name }}; - # Limitting open connection per ip - limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; - - # Limitting open connection per ip limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; proxy_set_header Host $host; @@ -138,7 +134,6 @@ proxyconfig: | client_max_body_size 60M; rewrite ^/api/(.*) /$1 break; proxy_set_header Connection ""; - proxy_set_header X-Forwarded-Proto $scheme proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; From 7757ed9dc5d76a7eef7ac8b8d2fef7fae3d1fcfa Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 12 Mar 2020 16:52:24 +0530 Subject: [PATCH 028/298] Issue #00 feat: adding dock postgres update role --- .../defaults/main.yml | 114 +++++++++++ .../tasks/databases.yml | 14 ++ .../tasks/main.yml | 31 +++ .../tasks/users.yml | 17 ++ .../templates/enc_postgres.sql | 12 ++ .../templates/tables_postgres.sql | 181 ++++++++++++++++++ 6 files changed, 369 insertions(+) create mode 100755 ansible/roles/postgresql-dock-data-update/defaults/main.yml create mode 100644 ansible/roles/postgresql-dock-data-update/tasks/databases.yml create mode 100644 ansible/roles/postgresql-dock-data-update/tasks/main.yml create mode 100755 ansible/roles/postgresql-dock-data-update/tasks/users.yml create mode 100644 ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql create mode 100644 ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql diff --git a/ansible/roles/postgresql-dock-data-update/defaults/main.yml b/ansible/roles/postgresql-dock-data-update/defaults/main.yml new file mode 100755 index 0000000000..9a65ac5302 --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/defaults/main.yml @@ -0,0 +1,114 @@ +--- +postgresql_user: postgres +postgresql_group: postgres +postgresql_unix_socket_directories: + - /var/run/postgresql + +############# Postgres users and databases ############### +postgresql_users: + - name: "{{kong_postgres_user}}" + login_host: "{{kong_postgres_host}}" + login_password: "{{kong_postgres_password}}" + password: "{{postgres_password}}" + db: "{{kong_postgres_database}}" + login_user: "{{kong_postgres_user}}" + priv: "ALL" + - name: "{{keycloak_postgres_user}}" + login_host: "{{keycloak_postgres_host}}" + login_password: "{{keycloak_postgres_password}}" + password: "{{postgres_password}}" + db: "{{keycloak_postgres_database}}" + login_user: "{{keycloak_postgres_user}}" + priv: "ALL" + - name: "{{application_postgres_user}}" + login_host: "{{application_postgres_host}}" + login_password: "{{application_postgres_password}}" + password: "{{postgres_password}}" + db: "{{application_postgres_database}}" + login_user: "{{application_postgres_user}}" + priv: "ALL" + - name: "{{badger_postgres_user}}" + login_host: "{{badger_postgres_host}}" + login_password: "{{badger_postgres_password}}" + password: "{{postgres_password}}" + login_user: "{{badger_postgres_user}}" + db: "{{badger_postgres_database}}" + priv: "ALL" + - name: "{{user_org_service_postgres_user}}" + login_host: "{{user_org_service_postgres_host}}" + login_password: "{{user_org_service_postgres_password}}" + password: "{{user_org_service_postgres_password}}" + db: "{{user_org_service_postgres_database}}" + login_user: "{{user_org_service_postgres_user}}" + priv: "ALL" + - name: "{{enc_postgres_user}}" + login_host: "{{enc_postgres_host}}" + login_password: "{{enc_postgres_password}}" + password: "{{enc_postgres_password}}" + db: "{{enc_postgres_database}}" + login_user: "{{enc_postgres_user}}" + priv: "ALL" + + +postgresql_databases: + - name: "{{kong_postgres_database}}" + login_host: "{{kong_postgres_host}}" + login_password: "{{kong_postgres_password}}" + owner: "{{kong_postgres_user}}" + login_user: "{{kong_postgres_user}}" + - name: "{{keycloak_postgres_database}}" + login_host: "{{keycloak_postgres_host}}" + login_password: "{{keycloak_postgres_password}}" + owner: "{{keycloak_postgres_user}}" + login_user: "{{keycloak_postgres_user}}" + - name: "{{application_postgres_database}}" + login_host: "{{application_postgres_host}}" + login_password: "{{application_postgres_password}}" + owner: "{{application_postgres_user}}" + login_user: "{{application_postgres_user}}" + - name: "{{badger_postgres_database}}" + login_host: "{{badger_postgres_host}}" + login_password: "{{badger_postgres_password}}" + owner: "{{badger_postgres_user}}" + login_user: "{{badger_postgres_user}}" + - name: "{{user_org_service_postgres_database}}" + login_host: "{{user_org_service_postgres_host}}" + login_password: "{{user_org_service_postgres_password}}" + owner: "{{user_org_service_postgres_user}}" + login_user: "{{user_org_service_postgres_user}}" + - name: "{{enc_postgres_database}}" + login_host: "{{enc_postgres_host}}" + login_password: "{{enc_postgres_password}}" + owner: "{{enc_postgres_user}}" + login_user: "{{enc_postgres_user}}" + +########################################################## + + +# Databases to ensure exist. +#postgresql_databases: [] + # - name: exampledb # required; the rest are optional + # lc_collate: # defaults to 'en_US.UTF-8' + # lc_ctype: # defaults to 'en_US.UTF-8' + # encoding: # defaults to 'UTF-8' + # template: # defaults to 'template0' + # login_host: # defaults to 'localhost' + # login_password: # defaults to not set + # login_user: # defaults to '{{ postgresql_user }}' + # login_unix_socket: # defaults to 1st of postgresql_unix_socket_directories + # port: # defaults to not set + # state: # defaults to 'present' + +# Users to ensure exist. +#postgresql_users: [] + # - name: jdoe #required; the rest are optional + # password: # defaults to not set + # priv: # defaults to not set + # role_attr_flags: # defaults to not set + # db: # defaults to not set + # login_host: # defaults to 'localhost' + # login_password: # defaults to not set + # login_user: # defaults to '{{ postgresql_user }}' + # login_unix_socket: # defaults to 1st of postgresql_unix_socket_directories + # port: # defaults to not set + # state: # defaults to 'present' diff --git a/ansible/roles/postgresql-dock-data-update/tasks/databases.yml b/ansible/roles/postgresql-dock-data-update/tasks/databases.yml new file mode 100644 index 0000000000..dc96ae4cc9 --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/tasks/databases.yml @@ -0,0 +1,14 @@ +--- +- name: Ensure PostgreSQL databases are present. + postgresql_db: + name: "{{ item.name }}" + login_host: "{{ item.login_host | default('localhost') }}" + login_password: "{{ item.login_password | default(omit) }}" + login_user: "{{ item.login_user | default(postgresql_user) }}" + login_unix_socket: "{{ item.login_unix_socket | default(postgresql_unix_socket_directories[0]) }}" + port: "{{ item.port | default(omit) }}" + owner: '{{ item.owner.split("@")[0] | default(postgresql_user) }}' + state: "{{ item.state | default('present') }}" + with_items: "{{ postgresql_databases }}" + vars: + ansible_ssh_pipelining: true diff --git a/ansible/roles/postgresql-dock-data-update/tasks/main.yml b/ansible/roles/postgresql-dock-data-update/tasks/main.yml new file mode 100644 index 0000000000..563b2999bb --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/tasks/main.yml @@ -0,0 +1,31 @@ +- name: install psycopg2 + package: + name: python-psycopg2 + state: present + +- name: Verifying db users are present else creating them + include: databases.yml + +- name: creating database + include: users.yml + +- name: Copy the templates + become: yes + template: src={{item}} dest=/tmp/{{item}} + with_items: + - programs_postgres.sql + +- name: Install postgres client to create schema from file + apt: + name: postgresql-client + state: present + update_cache: yes + +- name: Create the schema for programs service + postgresql_db: + login_user: "{{ programs_service_postgres_user }}" + login_password: "{{ programs_service_postgres_password }}" + login_host: "{{ programs_service_postgres_host }}" + name: "{{ programs_service_db }}" + state: restore + target: "/tmp/programs_postgres.sql" diff --git a/ansible/roles/postgresql-dock-data-update/tasks/users.yml b/ansible/roles/postgresql-dock-data-update/tasks/users.yml new file mode 100755 index 0000000000..fdbb3b43dc --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/tasks/users.yml @@ -0,0 +1,17 @@ +--- +- name: Ensure PostgreSQL users are present. + postgresql_user: + name: "{{ item.name }}" + password: "{{ item.password | default(omit) }}" + priv: "{{ item.priv | default(omit) }}" + role_attr_flags: "{{ item.role_attr_flags | default(omit) }}" + db: "{{ item.db | default(omit) }}" + login_host: "{{ item.login_host | default('localhost') }}" + login_password: "{{ item.login_password | default(omit) }}" + login_user: "{{ item.login_user | default(postgresql_user) }}" + encrypted: "{{ item.encrypted | default('yes')}}" + state: "{{ item.state | default('present') }}" + with_items: "{{ postgresql_users }}" + vars: + ansible_ssh_pipelining: true + diff --git a/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql b/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql new file mode 100644 index 0000000000..ada819c60f --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql @@ -0,0 +1,12 @@ +CREATE TYPE "enum_Keys_type" AS ENUM ('MASTER','OTHER'); +CREATE TABLE "Keys" ( + id SERIAL PRIMARY KEY, + public text NOT NULL, + private text NOT NULL, + type "enum_Keys_type" NOT NULL, + active boolean DEFAULT true NOT NULL, + reserved boolean DEFAULT false NOT NULL, + "createdAt" timestamp with time zone NOT NULL, + "updatedAt" timestamp with time zone NOT NULL +); +commit; diff --git a/ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql b/ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql new file mode 100644 index 0000000000..e2da042a1a --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql @@ -0,0 +1,181 @@ +drop table qrtz_fired_triggers; +DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; +DROP TABLE QRTZ_SCHEDULER_STATE; +DROP TABLE QRTZ_LOCKS; +drop table qrtz_simple_triggers; +drop table qrtz_cron_triggers; +drop table qrtz_simprop_triggers; +DROP TABLE QRTZ_BLOB_TRIGGERS; +drop table qrtz_triggers; +drop table qrtz_job_details; +drop table qrtz_calendars; + +CREATE TABLE qrtz_job_details + ( + SCHED_NAME VARCHAR(120) NOT NULL, + JOB_NAME VARCHAR(200) NOT NULL, + JOB_GROUP VARCHAR(200) NOT NULL, + DESCRIPTION VARCHAR(250) NULL, + JOB_CLASS_NAME VARCHAR(250) NOT NULL, + IS_DURABLE BOOL NOT NULL, + IS_NONCONCURRENT BOOL NOT NULL, + IS_UPDATE_DATA BOOL NOT NULL, + REQUESTS_RECOVERY BOOL NOT NULL, + JOB_DATA BYTEA NULL, + PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) +); + +CREATE TABLE qrtz_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + JOB_NAME VARCHAR(200) NOT NULL, + JOB_GROUP VARCHAR(200) NOT NULL, + DESCRIPTION VARCHAR(250) NULL, + NEXT_FIRE_TIME BIGINT NULL, + PREV_FIRE_TIME BIGINT NULL, + PRIORITY INTEGER NULL, + TRIGGER_STATE VARCHAR(16) NOT NULL, + TRIGGER_TYPE VARCHAR(8) NOT NULL, + START_TIME BIGINT NOT NULL, + END_TIME BIGINT NULL, + CALENDAR_NAME VARCHAR(200) NULL, + MISFIRE_INSTR SMALLINT NULL, + JOB_DATA BYTEA NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) + REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) +); + +CREATE TABLE qrtz_simple_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + REPEAT_COUNT BIGINT NOT NULL, + REPEAT_INTERVAL BIGINT NOT NULL, + TIMES_TRIGGERED BIGINT NOT NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE qrtz_cron_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + CRON_EXPRESSION VARCHAR(120) NOT NULL, + TIME_ZONE_ID VARCHAR(80), + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE qrtz_simprop_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + STR_PROP_1 VARCHAR(512) NULL, + STR_PROP_2 VARCHAR(512) NULL, + STR_PROP_3 VARCHAR(512) NULL, + INT_PROP_1 INT NULL, + INT_PROP_2 INT NULL, + LONG_PROP_1 BIGINT NULL, + LONG_PROP_2 BIGINT NULL, + DEC_PROP_1 NUMERIC(13,4) NULL, + DEC_PROP_2 NUMERIC(13,4) NULL, + BOOL_PROP_1 BOOL NULL, + BOOL_PROP_2 BOOL NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE qrtz_blob_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + BLOB_DATA BYTEA NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +); + +CREATE TABLE qrtz_calendars + ( + SCHED_NAME VARCHAR(120) NOT NULL, + CALENDAR_NAME VARCHAR(200) NOT NULL, + CALENDAR BYTEA NOT NULL, + PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) +); + + +CREATE TABLE qrtz_paused_trigger_grps + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) +); + +CREATE TABLE qrtz_fired_triggers + ( + SCHED_NAME VARCHAR(120) NOT NULL, + ENTRY_ID VARCHAR(95) NOT NULL, + TRIGGER_NAME VARCHAR(200) NOT NULL, + TRIGGER_GROUP VARCHAR(200) NOT NULL, + INSTANCE_NAME VARCHAR(200) NOT NULL, + FIRED_TIME BIGINT NOT NULL, + SCHED_TIME BIGINT NOT NULL, + PRIORITY INTEGER NOT NULL, + STATE VARCHAR(16) NOT NULL, + JOB_NAME VARCHAR(200) NULL, + JOB_GROUP VARCHAR(200) NULL, + IS_NONCONCURRENT BOOL NULL, + REQUESTS_RECOVERY BOOL NULL, + PRIMARY KEY (SCHED_NAME,ENTRY_ID) +); + +CREATE TABLE qrtz_scheduler_state + ( + SCHED_NAME VARCHAR(120) NOT NULL, + INSTANCE_NAME VARCHAR(200) NOT NULL, + LAST_CHECKIN_TIME BIGINT NOT NULL, + CHECKIN_INTERVAL BIGINT NOT NULL, + PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) +); + +CREATE TABLE qrtz_locks + ( + SCHED_NAME VARCHAR(120) NOT NULL, + LOCK_NAME VARCHAR(40) NOT NULL, + PRIMARY KEY (SCHED_NAME,LOCK_NAME) +); + +create index idx_qrtz_j_req_recovery on qrtz_job_details(SCHED_NAME,REQUESTS_RECOVERY); +create index idx_qrtz_j_grp on qrtz_job_details(SCHED_NAME,JOB_GROUP); + +create index idx_qrtz_t_j on qrtz_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); +create index idx_qrtz_t_jg on qrtz_triggers(SCHED_NAME,JOB_GROUP); +create index idx_qrtz_t_c on qrtz_triggers(SCHED_NAME,CALENDAR_NAME); +create index idx_qrtz_t_g on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP); +create index idx_qrtz_t_state on qrtz_triggers(SCHED_NAME,TRIGGER_STATE); +create index idx_qrtz_t_n_state on qrtz_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); +create index idx_qrtz_t_n_g_state on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); +create index idx_qrtz_t_next_fire_time on qrtz_triggers(SCHED_NAME,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_st on qrtz_triggers(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); +create index idx_qrtz_t_nft_st_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); +create index idx_qrtz_t_nft_st_misfire_grp on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); + +create index idx_qrtz_ft_trig_inst_name on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME); +create index idx_qrtz_ft_inst_job_req_rcvry on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); +create index idx_qrtz_ft_j_g on qrtz_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); +create index idx_qrtz_ft_jg on qrtz_fired_triggers(SCHED_NAME,JOB_GROUP); +create index idx_qrtz_ft_t_g on qrtz_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); +create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP); + +commit; From d4e29aa832d176e065eae7271539c48595d48eb5 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Thu, 12 Mar 2020 18:47:36 +0530 Subject: [PATCH 029/298] Issue #SB-000 feat: program api added (#1298) --- ansible/roles/kong-api/defaults/main.yml | 206 +++++++++++++++++++++++ 1 file changed, 206 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index a278c4ffcc..1e4022d7e9 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -60,6 +60,7 @@ cert_registry_service_prefix: /certreg desktop_app_prefix: /desktop license_api_prefix: /license opensaber_service_prefix: /reg +program_service_prefix: /program # Service URLs knowledge_mw_service_url: "http://knowledge-mw-service:5000" @@ -75,6 +76,7 @@ cert_service_url: "http://cert-service:9000" cert_registry_service_url: "http://cert-registry-service:9000" content_service_url: "http://content-service:9000" opensaber_service_url: "http://opensaber-service:8080" +program_service_url: "http://program-service:6000" premium_consumer_rate_limits: - api: createContent @@ -4034,3 +4036,207 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: readProgram + request_path: "{{ program_service_prefix }}/v1/read" + upstream_url: "{{ program_service_url }}/v1/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: createProgram + request_path: "{{ program_service_prefix }}/v1/create" + upstream_url: "{{ program_service_url }}/v1/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: updateProgram + request_path: "{{ program_service_prefix }}/v1/update" + upstream_url: "{{ program_service_url }}/v1/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: deleteProgram + request_path: "{{ program_service_prefix }}/v1/delete" + upstream_url: "{{ program_service_url }}/v1/delete" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: listProgram + request_path: "{{ program_service_prefix }}/v1/list" + upstream_url: "{{ program_service_url }}/v1/list" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: searchProgram + request_path: "{{ program_service_prefix }}/v1/search" + upstream_url: "{{ program_service_url }}/v1/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programNominationAdd + request_path: "{{ program_service_prefix }}/v1/nomination/add" + upstream_url: "{{ program_service_url }}/v1/nomination/add" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programNominationUpdate + request_path: "{{ program_service_prefix }}/v1/nomination/update" + upstream_url: "{{ program_service_url }}/v1/nomination/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programNominationRemove + request_path: "{{ program_service_prefix }}/v1/nomination/remove" + upstream_url: "{{ program_service_url }}/v1/nomination/remove" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programNominationList + request_path: "{{ program_service_prefix }}/v1/nomination/list" + upstream_url: "{{ program_service_url }}/v1/nomination/list" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programCollectionLink + request_path: "{{ program_service_prefix }}/v1/collection/link" + upstream_url: "{{ program_service_url }}/v1/collection/link" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programContenttypesList + request_path: "{{ program_service_prefix }}/v1/contenttypes/list" + upstream_url: "{{ program_service_url }}/v1/contenttypes/list" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" \ No newline at end of file From 64daa2eb1ab39305f1b16a3355c39e3b52731859 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 12 Mar 2020 18:50:28 +0530 Subject: [PATCH 030/298] Issue #00 feat: adding helm chart for program service --- ansible/roles/stack-sunbird/defaults/main.yml | 1 + .../templates/sunbird_program.env | 9 +++ .../helm_charts/core/program/Chart.yaml | 5 ++ .../core/program/templates/configmap.yaml | 11 ++++ .../core/program/templates/deployment.yaml | 59 +++++++++++++++++++ kubernetes/helm_charts/core/program/values.j2 | 25 ++++++++ 6 files changed, 110 insertions(+) create mode 100644 ansible/roles/stack-sunbird/templates/sunbird_program.env create mode 100644 kubernetes/helm_charts/core/program/Chart.yaml create mode 100644 kubernetes/helm_charts/core/program/templates/configmap.yaml create mode 100644 kubernetes/helm_charts/core/program/templates/deployment.yaml create mode 100644 kubernetes/helm_charts/core/program/values.j2 diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 1e7ab84b2d..7868697715 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -238,6 +238,7 @@ service_env: player: ../../../../ansible/roles/stack-sunbird/templates/sunbird_player.env print: ../../../../ansible/roles/stack-sunbird/templates/sunbird_print-service.env opensaber: ../../../../ansible/roles/stack-sunbird/templates/sunbird_opensaber.env + program: ../../../../ansible/roles/stack-sunbird/templates/sunbird_program.env sunbird_portal_player_cdn_enabled: false diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env new file mode 100644 index 0000000000..552cf71994 --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -0,0 +1,9 @@ +sunbird_program_base_url="{{ proto }}://{{ domain_name }}" +sunbird_program_port= 6000 +sunbird_service_log_level=info +sunbird_program_db_user="{{ programs_service_postgres_username }}" +sunbird_program_db_host="{{ dock_postgres_host }}" +sunbird_program_db_name="{{ programs_postgres_db }}" +sunbird_program_db_password="{{ dock_postgres_password }}" +sunbird_program_db_port=5432 +sunbird_program_db_dialect=postgres diff --git a/kubernetes/helm_charts/core/program/Chart.yaml b/kubernetes/helm_charts/core/program/Chart.yaml new file mode 100644 index 0000000000..c46baef868 --- /dev/null +++ b/kubernetes/helm_charts/core/program/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +appVersion: "1.0" +description: A Helm chart for Kubernetes +name: program +version: 0.1.0 diff --git a/kubernetes/helm_charts/core/program/templates/configmap.yaml b/kubernetes/helm_charts/core/program/templates/configmap.yaml new file mode 100644 index 0000000000..2a18b4516e --- /dev/null +++ b/kubernetes/helm_charts/core/program/templates/configmap.yaml @@ -0,0 +1,11 @@ +#apiVersion: v1 +#data: +# {{- range $key, $val := .Values.certenv }} +# {{ $key }}: {{ $val }} +# {{- end }} +#kind: ConfigMap +#metadata: +# creationTimestamp: null +# name: {{ .Chart.Name }}-config +# namespace: {{ .Values.namespace }} + diff --git a/kubernetes/helm_charts/core/program/templates/deployment.yaml b/kubernetes/helm_charts/core/program/templates/deployment.yaml new file mode 100644 index 0000000000..13c47c4b8b --- /dev/null +++ b/kubernetes/helm_charts/core/program/templates/deployment.yaml @@ -0,0 +1,59 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Chart.Name }} + namespace: {{ .Values.namespace }} + annotations: + reloader.stakater.com/auto: "true" +spec: + replicas: {{ .Values.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.strategy.maxsurge }} + maxUnavailable: {{ default (sub .Values.replicaCount 1) .Values.strategy.maxunavailable }} + selector: + matchLabels: + app: {{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Chart.Name }} + spec: +{{- if .Values.imagepullsecrets }} + imagePullSecrets: + - name: {{ .Values.imagepullsecrets }} +{{- end }} + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" + imagePullPolicy: Always + envFrom: + - configMapRef: + name: {{ .Chart.Name }}-config + resources: +{{ toYaml .Values.resources | indent 10 }} + ports: + - containerPort: {{ .Values.network.port }} + {{- if .Values.healthcheck }} + livenessProbe: +{{ toYaml .Values.livenessProbe | indent 10 }} + readinessProbe: +{{ toYaml .Values.readinessProbe | indent 10 }} + {{- end }} + +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ .Chart.Name }}-service + namespace: {{ .Values.namespace }} + labels: + app: {{ .Chart.Name }} +spec: + ports: + - name: http-{{ .Chart.Name }} + protocol: TCP + port: {{ .Values.network.targetport }} + selector: + app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/program/values.j2 b/kubernetes/helm_charts/core/program/values.j2 new file mode 100644 index 0000000000..18f2961ee5 --- /dev/null +++ b/kubernetes/helm_charts/core/program/values.j2 @@ -0,0 +1,25 @@ +### Default variable file for opensaber ### + +namespace: {{ namespace }} +imagepullsecrets: {{ imagepullsecrets }} +dockerhub: {{ dockerhub }} + +replicaCount: {{program_replicacount|default(1)}} +repository: {{program_repository|default('opensaber')}} +image_tag: {{ image_tag }} +resources: + requests: + cpu: {{program_cpu_req|default('500m')}} + memory: {{program_mem_req|default('200Mi')}} + limits: + cpu: {{program_cpu_limit|default('1')}} + memory: {{program_mem_limit|default('1024Mi')}} +network: + port: 6000 + targetport: 6000 +strategy: + type: RollingUpdate + maxsurge: {{ program_maxsurge|default(1) }} + maxunavailable: {{ program_maxunavailable|default }} + +#{{ cert_liveness_readiness | to_nice_yaml }} From 4b7d69bc5636a419cbf29196f5642179281e0b66 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 12 Mar 2020 20:18:45 +0530 Subject: [PATCH 031/298] Issue #00 fix: updating programs service variable name --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 552cf71994..e15d2a2b92 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -1,7 +1,7 @@ sunbird_program_base_url="{{ proto }}://{{ domain_name }}" sunbird_program_port= 6000 sunbird_service_log_level=info -sunbird_program_db_user="{{ programs_service_postgres_username }}" +sunbird_program_db_user="{{ dock_postgres_username }}" sunbird_program_db_host="{{ dock_postgres_host }}" sunbird_program_db_name="{{ programs_postgres_db }}" sunbird_program_db_password="{{ dock_postgres_password }}" From d367d30bb23cdc9a7732da62cf6baa0a3dceb11f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 12 Mar 2020 20:19:53 +0530 Subject: [PATCH 032/298] Issue #000 fix: updating variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index e15d2a2b92..a0aa0f7837 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -1,7 +1,7 @@ sunbird_program_base_url="{{ proto }}://{{ domain_name }}" sunbird_program_port= 6000 sunbird_service_log_level=info -sunbird_program_db_user="{{ dock_postgres_username }}" +sunbird_program_db_user="{{ dock_postgres_user }}" sunbird_program_db_host="{{ dock_postgres_host }}" sunbird_program_db_name="{{ programs_postgres_db }}" sunbird_program_db_password="{{ dock_postgres_password }}" From 0d7e9ee5e6e79e06b7284bac9dac8d495ec50865 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 12 Mar 2020 20:26:21 +0530 Subject: [PATCH 033/298] Issue #00 fix: updating programs service variable name --- .../roles/stack-sunbird/templates/sunbird_program.env | 10 +++++----- kubernetes/helm_charts/core/program/values.j2 | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index a0aa0f7837..a92f5ce3b2 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -1,9 +1,9 @@ -sunbird_program_base_url="{{ proto }}://{{ domain_name }}" +sunbird_program_base_url={{ proto }}://{{ domain_name }} sunbird_program_port= 6000 sunbird_service_log_level=info -sunbird_program_db_user="{{ dock_postgres_user }}" -sunbird_program_db_host="{{ dock_postgres_host }}" -sunbird_program_db_name="{{ programs_postgres_db }}" -sunbird_program_db_password="{{ dock_postgres_password }}" +sunbird_program_db_user={{ dock_postgres_user }} +sunbird_program_db_host={{ dock_postgres_host }} +sunbird_program_db_name={{ programs_postgres_db }} +sunbird_program_db_password={{ dock_postgres_password }} sunbird_program_db_port=5432 sunbird_program_db_dialect=postgres diff --git a/kubernetes/helm_charts/core/program/values.j2 b/kubernetes/helm_charts/core/program/values.j2 index 18f2961ee5..e8acb449f6 100644 --- a/kubernetes/helm_charts/core/program/values.j2 +++ b/kubernetes/helm_charts/core/program/values.j2 @@ -1,11 +1,11 @@ -### Default variable file for opensaber ### +### Default variable file for program ### namespace: {{ namespace }} imagepullsecrets: {{ imagepullsecrets }} dockerhub: {{ dockerhub }} replicaCount: {{program_replicacount|default(1)}} -repository: {{program_repository|default('opensaber')}} +repository: {{program_repository|default('program')}} image_tag: {{ image_tag }} resources: requests: From 45a842c06166f318063337280fe4277b0398eb42 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 12 Mar 2020 20:37:23 +0530 Subject: [PATCH 034/298] Issue #00 fix: updating programs image name --- kubernetes/helm_charts/core/program/values.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/core/program/values.j2 b/kubernetes/helm_charts/core/program/values.j2 index e8acb449f6..e008473bec 100644 --- a/kubernetes/helm_charts/core/program/values.j2 +++ b/kubernetes/helm_charts/core/program/values.j2 @@ -5,7 +5,7 @@ imagepullsecrets: {{ imagepullsecrets }} dockerhub: {{ dockerhub }} replicaCount: {{program_replicacount|default(1)}} -repository: {{program_repository|default('program')}} +repository: {{program_repository|default('program-service')}} image_tag: {{ image_tag }} resources: requests: From 84c305e0d789202af278f8eb384a5f74bb1ea7b1 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 13 Mar 2020 13:39:22 +0530 Subject: [PATCH 035/298] Issue #000 fix: modified upstream_url for programs apis --- ansible/roles/kong-api/defaults/main.yml | 26 ++++++++++++------------ 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 1e4022d7e9..4ddaff3800 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4039,7 +4039,7 @@ kong_apis: - name: readProgram request_path: "{{ program_service_prefix }}/v1/read" - upstream_url: "{{ program_service_url }}/v1/read" + upstream_url: "{{ program_service_url }}/program/v1/read" strip_request_path: true plugins: - name: jwt @@ -4056,7 +4056,7 @@ kong_apis: - name: createProgram request_path: "{{ program_service_prefix }}/v1/create" - upstream_url: "{{ program_service_url }}/v1/create" + upstream_url: "{{ program_service_url }}/program/v1/create" strip_request_path: true plugins: - name: jwt @@ -4073,7 +4073,7 @@ kong_apis: - name: updateProgram request_path: "{{ program_service_prefix }}/v1/update" - upstream_url: "{{ program_service_url }}/v1/update" + upstream_url: "{{ program_service_url }}/program/v1/update" strip_request_path: true plugins: - name: jwt @@ -4090,7 +4090,7 @@ kong_apis: - name: deleteProgram request_path: "{{ program_service_prefix }}/v1/delete" - upstream_url: "{{ program_service_url }}/v1/delete" + upstream_url: "{{ program_service_url }}/program/v1/delete" strip_request_path: true plugins: - name: jwt @@ -4107,7 +4107,7 @@ kong_apis: - name: listProgram request_path: "{{ program_service_prefix }}/v1/list" - upstream_url: "{{ program_service_url }}/v1/list" + upstream_url: "{{ program_service_url }}/program/v1/list" strip_request_path: true plugins: - name: jwt @@ -4124,7 +4124,7 @@ kong_apis: - name: searchProgram request_path: "{{ program_service_prefix }}/v1/search" - upstream_url: "{{ program_service_url }}/v1/search" + upstream_url: "{{ program_service_url }}/program/v1/search" strip_request_path: true plugins: - name: jwt @@ -4141,7 +4141,7 @@ kong_apis: - name: programNominationAdd request_path: "{{ program_service_prefix }}/v1/nomination/add" - upstream_url: "{{ program_service_url }}/v1/nomination/add" + upstream_url: "{{ program_service_url }}/program/v1/nomination/add" strip_request_path: true plugins: - name: jwt @@ -4158,7 +4158,7 @@ kong_apis: - name: programNominationUpdate request_path: "{{ program_service_prefix }}/v1/nomination/update" - upstream_url: "{{ program_service_url }}/v1/nomination/update" + upstream_url: "{{ program_service_url }}/program/v1/nomination/update" strip_request_path: true plugins: - name: jwt @@ -4175,7 +4175,7 @@ kong_apis: - name: programNominationRemove request_path: "{{ program_service_prefix }}/v1/nomination/remove" - upstream_url: "{{ program_service_url }}/v1/nomination/remove" + upstream_url: "{{ program_service_url }}/program/v1/nomination/remove" strip_request_path: true plugins: - name: jwt @@ -4192,7 +4192,7 @@ kong_apis: - name: programNominationList request_path: "{{ program_service_prefix }}/v1/nomination/list" - upstream_url: "{{ program_service_url }}/v1/nomination/list" + upstream_url: "{{ program_service_url }}/program/v1/nomination/list" strip_request_path: true plugins: - name: jwt @@ -4209,7 +4209,7 @@ kong_apis: - name: programCollectionLink request_path: "{{ program_service_prefix }}/v1/collection/link" - upstream_url: "{{ program_service_url }}/v1/collection/link" + upstream_url: "{{ program_service_url }}/program/v1/collection/link" strip_request_path: true plugins: - name: jwt @@ -4226,7 +4226,7 @@ kong_apis: - name: programContenttypesList request_path: "{{ program_service_prefix }}/v1/contenttypes/list" - upstream_url: "{{ program_service_url }}/v1/contenttypes/list" + upstream_url: "{{ program_service_url }}/program/v1/contenttypes/list" strip_request_path: true plugins: - name: jwt @@ -4239,4 +4239,4 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ small_request_size_limit }}" \ No newline at end of file + config.allowed_payload_size: "{{ small_request_size_limit }}" From 28199f59e13c10f8157220f5919ac455f3a5ff64 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 13 Mar 2020 18:16:51 +0530 Subject: [PATCH 036/298] Issue #00 fix: adding programs postgres sql file --- .../templates/enc_postgres.sql | 12 -- .../templates/programs_postgres.sql | 69 +++++++ .../templates/tables_postgres.sql | 181 ------------------ 3 files changed, 69 insertions(+), 193 deletions(-) delete mode 100644 ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql create mode 100644 ansible/roles/postgresql-dock-data-update/templates/programs_postgres.sql delete mode 100644 ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql diff --git a/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql b/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql deleted file mode 100644 index ada819c60f..0000000000 --- a/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql +++ /dev/null @@ -1,12 +0,0 @@ -CREATE TYPE "enum_Keys_type" AS ENUM ('MASTER','OTHER'); -CREATE TABLE "Keys" ( - id SERIAL PRIMARY KEY, - public text NOT NULL, - private text NOT NULL, - type "enum_Keys_type" NOT NULL, - active boolean DEFAULT true NOT NULL, - reserved boolean DEFAULT false NOT NULL, - "createdAt" timestamp with time zone NOT NULL, - "updatedAt" timestamp with time zone NOT NULL -); -commit; diff --git a/ansible/roles/postgresql-dock-data-update/templates/programs_postgres.sql b/ansible/roles/postgresql-dock-data-update/templates/programs_postgres.sql new file mode 100644 index 0000000000..bac4e1d889 --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/templates/programs_postgres.sql @@ -0,0 +1,69 @@ +CREATE TYPE status AS ENUM ('Draft', 'Live'); +CREATE TYPE programtype AS ENUM ('public', 'private'); +CREATE TABLE program +( + program_id character varying COLLATE pg_catalog."default" NOT NULL, + name character varying COLLATE pg_catalog."default", + description text COLLATE pg_catalog."default", + content_types text[] COLLATE pg_catalog."default", + collection_ids text[] COLLATE pg_catalog."default", + type programtype, + startdate timestamp without time zone DEFAULT timezone('utc'::text, (CURRENT_DATE)::timestamp with time zone), + enddate timestamp without time zone, + nomination_enddate timestamp without time zone, + shortlisting_enddate timestamp without time zone, + content_submission_enddate timestamp without time zone, + image character varying COLLATE pg_catalog."default", + status status, + slug character varying COLLATE pg_catalog."default", + config text COLLATE pg_catalog."default" NOT NULL, + channel character varying COLLATE pg_catalog."default" DEFAULT 'DIKSHA'::character varying, + template_id character varying COLLATE pg_catalog."default" DEFAULT 'template1'::character varying, + rootorg_id character varying COLLATE pg_catalog."default", + sourcing_org_name character varying COLLATE pg_catalog."default", + createdby character varying COLLATE pg_catalog."default", + createdon timestamp with time zone DEFAULT timezone('utc'::text, now()), + updatedby character varying COLLATE pg_catalog."default", + updatedon timestamp with time zone DEFAULT timezone('utc'::text, now()), + CONSTRAINT pk_program_id PRIMARY KEY (program_id) +); +CREATE TYPE nominationstatus AS ENUM ('Pending', 'Approved', 'Rejected'); +CREATE SEQUENCE nomination_id_seq; +CREATE TABLE nomination +( + id integer NOT NULL DEFAULT nextval('nomination_id_seq'::regclass), + program_id character varying COLLATE pg_catalog."default" NOT NULL, + user_id character varying COLLATE pg_catalog."default" NOT NULL, + organisation_id character varying COLLATE pg_catalog."default", + status nominationstatus, + content_types text[] COLLATE pg_catalog."default", + collection_ids text[] COLLATE pg_catalog."default", + feedback text COLLATE pg_catalog."default", + rolemapping json, + createdby character varying COLLATE pg_catalog."default", + createdon timestamp with time zone DEFAULT timezone('utc'::text, now()), + updatedby character varying COLLATE pg_catalog."default", + updatedon timestamp with time zone, + CONSTRAINT pk_id PRIMARY KEY (id) +); +CREATE SEQUENCE IF NOT EXISTS contentid_seq; +CREATE TYPE contenttypesenum AS ENUM ('TeachingMethod', 'PedagogyFlow', 'FocusSpot', 'LearningOutcomeDefinition', 'PracticeQuestionSet', 'CuriosityQuestionSet', 'MarkingSchemeRubric', 'ExplanationResource', 'ExperientialResource', 'ConceptMap', 'SelfAssess'); +CREATE TABLE contenttypes ( + id int4 NOT NULL DEFAULT nextval('contentid_seq'::regclass), + name varchar NOT NULL, + value contenttypesenum NOT NULL, + PRIMARY KEY ("id"), + createdon timestamp with time zone DEFAULT timezone('utc'::text, now()), + updatedon timestamp with time zone DEFAULT timezone('utc'::text, now()) +); +INSERT INTO contenttypes ("name", "value") VALUES ('Teaching Method', 'TeachingMethod'); +INSERT INTO contenttypes ("name", "value") VALUES ('Pedagogy Flow', 'PedagogyFlow'); +INSERT INTO contenttypes ("name", "value") VALUES ('Focus Spot', 'FocusSpot'); +INSERT INTO contenttypes ("name", "value") VALUES ('Learning Outcome Definition', 'LearningOutcomeDefinition'); +INSERT INTO contenttypes ("name", "value") VALUES ('Practice Question Set', 'PracticeQuestionSet'); +INSERT INTO contenttypes ("name", "value") VALUES ('Curiosity Question Set', 'CuriosityQuestionSet'); +INSERT INTO contenttypes ("name", "value") VALUES ('Marking Scheme Rubric', 'MarkingSchemeRubric'); +INSERT INTO contenttypes ("name", "value") VALUES ('Explanation Resource', 'ExplanationResource'); +INSERT INTO contenttypes ("name", "value") VALUES ('Experiential Resource', 'ExperientialResource'); +INSERT INTO contenttypes ("name", "value") VALUES ('Concept Map', 'ConceptMap'); +INSERT INTO contenttypes ("name", "value") VALUES ('Self Assess', 'SelfAssess'); diff --git a/ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql b/ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql deleted file mode 100644 index e2da042a1a..0000000000 --- a/ansible/roles/postgresql-dock-data-update/templates/tables_postgres.sql +++ /dev/null @@ -1,181 +0,0 @@ -drop table qrtz_fired_triggers; -DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; -DROP TABLE QRTZ_SCHEDULER_STATE; -DROP TABLE QRTZ_LOCKS; -drop table qrtz_simple_triggers; -drop table qrtz_cron_triggers; -drop table qrtz_simprop_triggers; -DROP TABLE QRTZ_BLOB_TRIGGERS; -drop table qrtz_triggers; -drop table qrtz_job_details; -drop table qrtz_calendars; - -CREATE TABLE qrtz_job_details - ( - SCHED_NAME VARCHAR(120) NOT NULL, - JOB_NAME VARCHAR(200) NOT NULL, - JOB_GROUP VARCHAR(200) NOT NULL, - DESCRIPTION VARCHAR(250) NULL, - JOB_CLASS_NAME VARCHAR(250) NOT NULL, - IS_DURABLE BOOL NOT NULL, - IS_NONCONCURRENT BOOL NOT NULL, - IS_UPDATE_DATA BOOL NOT NULL, - REQUESTS_RECOVERY BOOL NOT NULL, - JOB_DATA BYTEA NULL, - PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) -); - -CREATE TABLE qrtz_triggers - ( - SCHED_NAME VARCHAR(120) NOT NULL, - TRIGGER_NAME VARCHAR(200) NOT NULL, - TRIGGER_GROUP VARCHAR(200) NOT NULL, - JOB_NAME VARCHAR(200) NOT NULL, - JOB_GROUP VARCHAR(200) NOT NULL, - DESCRIPTION VARCHAR(250) NULL, - NEXT_FIRE_TIME BIGINT NULL, - PREV_FIRE_TIME BIGINT NULL, - PRIORITY INTEGER NULL, - TRIGGER_STATE VARCHAR(16) NOT NULL, - TRIGGER_TYPE VARCHAR(8) NOT NULL, - START_TIME BIGINT NOT NULL, - END_TIME BIGINT NULL, - CALENDAR_NAME VARCHAR(200) NULL, - MISFIRE_INSTR SMALLINT NULL, - JOB_DATA BYTEA NULL, - PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), - FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) - REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) -); - -CREATE TABLE qrtz_simple_triggers - ( - SCHED_NAME VARCHAR(120) NOT NULL, - TRIGGER_NAME VARCHAR(200) NOT NULL, - TRIGGER_GROUP VARCHAR(200) NOT NULL, - REPEAT_COUNT BIGINT NOT NULL, - REPEAT_INTERVAL BIGINT NOT NULL, - TIMES_TRIGGERED BIGINT NOT NULL, - PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), - FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) - REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) -); - -CREATE TABLE qrtz_cron_triggers - ( - SCHED_NAME VARCHAR(120) NOT NULL, - TRIGGER_NAME VARCHAR(200) NOT NULL, - TRIGGER_GROUP VARCHAR(200) NOT NULL, - CRON_EXPRESSION VARCHAR(120) NOT NULL, - TIME_ZONE_ID VARCHAR(80), - PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), - FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) - REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) -); - -CREATE TABLE qrtz_simprop_triggers - ( - SCHED_NAME VARCHAR(120) NOT NULL, - TRIGGER_NAME VARCHAR(200) NOT NULL, - TRIGGER_GROUP VARCHAR(200) NOT NULL, - STR_PROP_1 VARCHAR(512) NULL, - STR_PROP_2 VARCHAR(512) NULL, - STR_PROP_3 VARCHAR(512) NULL, - INT_PROP_1 INT NULL, - INT_PROP_2 INT NULL, - LONG_PROP_1 BIGINT NULL, - LONG_PROP_2 BIGINT NULL, - DEC_PROP_1 NUMERIC(13,4) NULL, - DEC_PROP_2 NUMERIC(13,4) NULL, - BOOL_PROP_1 BOOL NULL, - BOOL_PROP_2 BOOL NULL, - PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), - FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) - REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) -); - -CREATE TABLE qrtz_blob_triggers - ( - SCHED_NAME VARCHAR(120) NOT NULL, - TRIGGER_NAME VARCHAR(200) NOT NULL, - TRIGGER_GROUP VARCHAR(200) NOT NULL, - BLOB_DATA BYTEA NULL, - PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), - FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) - REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) -); - -CREATE TABLE qrtz_calendars - ( - SCHED_NAME VARCHAR(120) NOT NULL, - CALENDAR_NAME VARCHAR(200) NOT NULL, - CALENDAR BYTEA NOT NULL, - PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) -); - - -CREATE TABLE qrtz_paused_trigger_grps - ( - SCHED_NAME VARCHAR(120) NOT NULL, - TRIGGER_GROUP VARCHAR(200) NOT NULL, - PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) -); - -CREATE TABLE qrtz_fired_triggers - ( - SCHED_NAME VARCHAR(120) NOT NULL, - ENTRY_ID VARCHAR(95) NOT NULL, - TRIGGER_NAME VARCHAR(200) NOT NULL, - TRIGGER_GROUP VARCHAR(200) NOT NULL, - INSTANCE_NAME VARCHAR(200) NOT NULL, - FIRED_TIME BIGINT NOT NULL, - SCHED_TIME BIGINT NOT NULL, - PRIORITY INTEGER NOT NULL, - STATE VARCHAR(16) NOT NULL, - JOB_NAME VARCHAR(200) NULL, - JOB_GROUP VARCHAR(200) NULL, - IS_NONCONCURRENT BOOL NULL, - REQUESTS_RECOVERY BOOL NULL, - PRIMARY KEY (SCHED_NAME,ENTRY_ID) -); - -CREATE TABLE qrtz_scheduler_state - ( - SCHED_NAME VARCHAR(120) NOT NULL, - INSTANCE_NAME VARCHAR(200) NOT NULL, - LAST_CHECKIN_TIME BIGINT NOT NULL, - CHECKIN_INTERVAL BIGINT NOT NULL, - PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) -); - -CREATE TABLE qrtz_locks - ( - SCHED_NAME VARCHAR(120) NOT NULL, - LOCK_NAME VARCHAR(40) NOT NULL, - PRIMARY KEY (SCHED_NAME,LOCK_NAME) -); - -create index idx_qrtz_j_req_recovery on qrtz_job_details(SCHED_NAME,REQUESTS_RECOVERY); -create index idx_qrtz_j_grp on qrtz_job_details(SCHED_NAME,JOB_GROUP); - -create index idx_qrtz_t_j on qrtz_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); -create index idx_qrtz_t_jg on qrtz_triggers(SCHED_NAME,JOB_GROUP); -create index idx_qrtz_t_c on qrtz_triggers(SCHED_NAME,CALENDAR_NAME); -create index idx_qrtz_t_g on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP); -create index idx_qrtz_t_state on qrtz_triggers(SCHED_NAME,TRIGGER_STATE); -create index idx_qrtz_t_n_state on qrtz_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); -create index idx_qrtz_t_n_g_state on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); -create index idx_qrtz_t_next_fire_time on qrtz_triggers(SCHED_NAME,NEXT_FIRE_TIME); -create index idx_qrtz_t_nft_st on qrtz_triggers(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); -create index idx_qrtz_t_nft_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); -create index idx_qrtz_t_nft_st_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); -create index idx_qrtz_t_nft_st_misfire_grp on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); - -create index idx_qrtz_ft_trig_inst_name on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME); -create index idx_qrtz_ft_inst_job_req_rcvry on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); -create index idx_qrtz_ft_j_g on qrtz_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); -create index idx_qrtz_ft_jg on qrtz_fired_triggers(SCHED_NAME,JOB_GROUP); -create index idx_qrtz_ft_t_g on qrtz_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); -create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP); - -commit; From 69c8f6464901b190c0699250a1cd2c602e81e0c7 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 13 Mar 2020 18:30:54 +0530 Subject: [PATCH 037/298] Issue #00 fix: api key variable to point to dev env --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index be88c3a1a4..95139ee06c 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -82,3 +82,6 @@ sunbird_portal_base_url={{sunbird_portal_base_url | d('')}} #Release-2.6.5 sunbird_portal_updateLoginTimeEnabled={{sunbird_portal_updateLoginTimeEnabled|lower}} + +#Dock +dock_api_auth_token={{ dock_api_auth_token }} From ae6544fb9522c76163d81e593a6eecf1ee7a5415 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 12:04:34 +0530 Subject: [PATCH 038/298] Issue #00 fix: redirect org api to dev --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index e1a13f6bb8..4baec6e9f7 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -101,6 +101,10 @@ proxyconfig: | return 301 {{proto}}://{{ proxy_server_name }}; } + location ~* ^/api/org/v1/search/ { + return 301 https://dev.sunbirded.org/$1; + } + location ~* ^/auth/v1/refresh/token { rewrite ^/auth/(.*) /auth/$1 break; proxy_set_header Host $host; From 3f5fc9e941e53e424ffe903b258d0221f552a347 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 12:08:45 +0530 Subject: [PATCH 039/298] Issue #00 fix: indentation fix --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 4baec6e9f7..8e16db4134 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -101,10 +101,10 @@ proxyconfig: | return 301 {{proto}}://{{ proxy_server_name }}; } - location ~* ^/api/org/v1/search/ { - return 301 https://dev.sunbirded.org/$1; + location ~* ^/api/org/v1/search/ { + return 301 https://dev.sunbirded.org/$1; } - + location ~* ^/auth/v1/refresh/token { rewrite ^/auth/(.*) /auth/$1 break; proxy_set_header Host $host; From b37d07c06e624b408419cb540d4d764839f0771f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 12:18:52 +0530 Subject: [PATCH 040/298] Issue #00 fix: indentation fix --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 8e16db4134..731cc1e4ee 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -101,7 +101,7 @@ proxyconfig: | return 301 {{proto}}://{{ proxy_server_name }}; } - location ~* ^/api/org/v1/search/ { + location ~* ^/api/org/v1/search { return 301 https://dev.sunbirded.org/$1; } From b76b1c22806648ebe7de57af5dec4e62076df0b1 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 13:06:06 +0530 Subject: [PATCH 041/298] Issue #00 fix: org search api redirection to portal --- .../helm_charts/core/nginx-public-ingress/values.j2 | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 731cc1e4ee..79e8075e96 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -102,7 +102,13 @@ proxyconfig: | } location ~* ^/api/org/v1/search { - return 301 https://dev.sunbirded.org/$1; + rewrite ^/api/org/v1/search/(.*) /api/search/v1/search/$1 break; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Scheme $scheme; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_pass http://player; } location ~* ^/auth/v1/refresh/token { From ddb141141b18adba6bc0aaf667b16e97a58cdb00 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 13:29:49 +0530 Subject: [PATCH 042/298] Issue #00 fix: updating postgresql role --- ansible/postgresql-data-update-managed.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/postgresql-data-update-managed.yml b/ansible/postgresql-data-update-managed.yml index 145efd0efc..0b8e4c094f 100644 --- a/ansible/postgresql-data-update-managed.yml +++ b/ansible/postgresql-data-update-managed.yml @@ -4,4 +4,4 @@ vars_files: - ['{{inventory_dir}}/secrets.yml', 'secrets/{{env}}.yml'] roles: - - postgresql-data-update-managed + - postgresql-dock-data-update From 13d65a14d6ada67a112f8cd7026dbf4620836101 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 13:48:48 +0530 Subject: [PATCH 043/298] Issue #00 fix: adding private nginx endpoints for all service --- .../templates/configmap.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml index d38118cf6a..f2bfa244ce 100644 --- a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml +++ b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml @@ -27,6 +27,22 @@ data: rewrite ^/certreg/(.*) /$1 break; proxy_pass http://cert-registry-service:9000; } + location /assessment/ { + rewrite ^/assessment-service/(.*) /$1 break; + proxy_pass http://assessment-service:9000; + } + location /knowledge-mw/ { + rewrite ^/knowledge-mw/(.*) /$1 break; + proxy_pass http://knowledge-mw-service:5000; + } + location /player/ { + rewrite ^/player/(.*) /$1 break; + proxy_pass http://player:3000; + } + location /opensaber/ { + rewrite ^/opensaber/(.*) /$1 break; + proxy_pass http://opensaber-service:8080; + } } kind: ConfigMap metadata: From de45b851cb2a7a8073c160051e94d361f771091b Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 15:53:37 +0530 Subject: [PATCH 044/298] Issue #00 fix: proxy changes for programs service --- .../helm_charts/core/nginx-public-ingress/values.j2 | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 79e8075e96..23e3994bf0 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -111,6 +111,16 @@ proxyconfig: | proxy_pass http://player; } + location ~* ^/api/programs/(.*) { + rewrite ^/api/programs/(.*) /api/programs/$1 break; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Scheme $scheme; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_pass http://player; + } + location ~* ^/auth/v1/refresh/token { rewrite ^/auth/(.*) /auth/$1 break; proxy_set_header Host $host; From e693fdc3a0d37c669628d4ac02a24f88c81a9b3b Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 16:49:41 +0530 Subject: [PATCH 045/298] Issue #00 fix: reverting proxy changes --- .../helm_charts/core/nginx-public-ingress/values.j2 | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 23e3994bf0..79e8075e96 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -111,16 +111,6 @@ proxyconfig: | proxy_pass http://player; } - location ~* ^/api/programs/(.*) { - rewrite ^/api/programs/(.*) /api/programs/$1 break; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Scheme $scheme; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_pass http://player; - } - location ~* ^/auth/v1/refresh/token { rewrite ^/auth/(.*) /auth/$1 break; proxy_set_header Host $host; From b82760ba045b6e19ec0b29c994852b079745e4c5 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 17:41:04 +0530 Subject: [PATCH 046/298] Issue #000 fix: variablising programs base url --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index a92f5ce3b2..47c3e669aa 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -1,4 +1,4 @@ -sunbird_program_base_url={{ proto }}://{{ domain_name }} +sunbird_program_base_url={{ sunbird_program_base_url }} sunbird_program_port= 6000 sunbird_service_log_level=info sunbird_program_db_user={{ dock_postgres_user }} From 1ad605b9a55a020d68a9cb33d0bf0e1d1481030c Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 17 Mar 2020 17:59:58 +0530 Subject: [PATCH 047/298] Issue #00 fix: adding api key variable for programs --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 47c3e669aa..be50ca0c24 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -1,4 +1,5 @@ sunbird_program_base_url={{ sunbird_program_base_url }} +sunbird_api_auth_token={{ sunbird_api_auth_token }} sunbird_program_port= 6000 sunbird_service_log_level=info sunbird_program_db_user={{ dock_postgres_user }} From b98366d80bb4dbd2eea08711508a585322da780f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 11:12:14 +0530 Subject: [PATCH 048/298] Issue #00 fix: adding node exporter role --- ansible/node-exporter.yml | 14 ++++++++++++++ pipelines/deploy/monitor/Core/Jenkinsfile | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 ansible/node-exporter.yml diff --git a/ansible/node-exporter.yml b/ansible/node-exporter.yml new file mode 100644 index 0000000000..56428c9010 --- /dev/null +++ b/ansible/node-exporter.yml @@ -0,0 +1,14 @@ +- hosts: all + become: yes + gather_facts: false + vars_files: + - ['{{inventory_dir}}/secrets.yml', 'secrets/{{env}}.yml'] + roles: + - vm-agents-nodeexporter + +- hosts: process-exporter + become: yes + vars_files: + - ['{{inventory_dir}}/secrets.yml', 'secrets/{{env}}.yml'] + roles: + - vm-agents-processexporter diff --git a/pipelines/deploy/monitor/Core/Jenkinsfile b/pipelines/deploy/monitor/Core/Jenkinsfile index 0b99e6148d..9692fd4620 100644 --- a/pipelines/deploy/monitor/Core/Jenkinsfile +++ b/pipelines/deploy/monitor/Core/Jenkinsfile @@ -24,7 +24,7 @@ node() { envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() - ansiblePlaybook = "${currentWs}/ansible/monitoring.yml" + ansiblePlaybook = "${currentWs}/ansible/node-exporter.yml" ansibleExtraArgs = "--skip-tags lp_dp_monitoring --vault-password-file /var/lib/jenkins/secrets/vault-pass -v" values.put('currentWs', currentWs) values.put('env', envDir) From c9eb42e8a737a8724de7e7a7d4f6819978aa3e15 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 11:27:01 +0530 Subject: [PATCH 049/298] Issue #000 fix: removing skipping tags --- pipelines/deploy/monitor/Core/Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pipelines/deploy/monitor/Core/Jenkinsfile b/pipelines/deploy/monitor/Core/Jenkinsfile index 9692fd4620..30295f7170 100644 --- a/pipelines/deploy/monitor/Core/Jenkinsfile +++ b/pipelines/deploy/monitor/Core/Jenkinsfile @@ -25,7 +25,7 @@ node() { module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() ansiblePlaybook = "${currentWs}/ansible/node-exporter.yml" - ansibleExtraArgs = "--skip-tags lp_dp_monitoring --vault-password-file /var/lib/jenkins/secrets/vault-pass -v" + ansibleExtraArgs = "--vault-password-file /var/lib/jenkins/secrets/vault-pass -v" values.put('currentWs', currentWs) values.put('env', envDir) values.put('module', module) From 47484e154e952fe8ece95e02f3686463a6dbecc9 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 13:00:39 +0530 Subject: [PATCH 050/298] Issue #00 fix: adding serial --- ansible/roles/vm-agents-nodeexporter/tasks/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/vm-agents-nodeexporter/tasks/main.yml b/ansible/roles/vm-agents-nodeexporter/tasks/main.yml index 49cdafd9cf..50d341827a 100755 --- a/ansible/roles/vm-agents-nodeexporter/tasks/main.yml +++ b/ansible/roles/vm-agents-nodeexporter/tasks/main.yml @@ -3,6 +3,7 @@ apt: name: prometheus-node-exporter state: absent + add serial: 1 - name: Cleanup previous install config file: path=/etc/default/prometheus-node-exporter state=absent From 84a9b91109b203671e6057ce45ecaa374544795b Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 13:10:10 +0530 Subject: [PATCH 051/298] Issue #000 fix: testing nodeexporter --- ansible/roles/vm-agents-nodeexporter/tasks/main.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/ansible/roles/vm-agents-nodeexporter/tasks/main.yml b/ansible/roles/vm-agents-nodeexporter/tasks/main.yml index 50d341827a..596cbf1f61 100755 --- a/ansible/roles/vm-agents-nodeexporter/tasks/main.yml +++ b/ansible/roles/vm-agents-nodeexporter/tasks/main.yml @@ -1,9 +1,4 @@ --- -- name: uninstall prometheus-node-exporter from apt repo - apt: - name: prometheus-node-exporter - state: absent - add serial: 1 - name: Cleanup previous install config file: path=/etc/default/prometheus-node-exporter state=absent From 1e6a362525f3dc23571c695c7c0ed73217d7d36d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 17:11:39 +0530 Subject: [PATCH 052/298] Issue #00 fix: adding grafana location block --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 79e8075e96..89dd868a70 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -198,6 +198,11 @@ proxyconfig: | proxy_pass $target; } + location /grafana/ { + rewrite ^/grafana/(.*) /$1 break; + proxy_pass http://prometheus-operator-grafana.monitoring.svc.cluster.local; + } + location ~* ^/assets/public/(.*) { # Enabling cache for Response code 200 expires 1M; From 611ea28b6fe773b704cc335a6f0241de57337b42 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 18:26:55 +0530 Subject: [PATCH 053/298] Issue #00 fix: changing prometheus datasource --- .../dashboards/dashboards/api-manager.json | 18 +- .../dashboards/master-dashboard.json | 18 +- .../dashboards/dashboards/nginx.json | 8 +- .../dashboards/dashboards/noc-dashboard.json | 6 +- .../dashboards/dashboards/noc-dashboard1.json | 12 +- .../dashboards/dashboards/node-exporter.json | 358 +++++++++--------- .../dashboards/dashboards/postgres.json | 16 +- .../dashboards/prometheus-stats.json | 28 +- 8 files changed, 232 insertions(+), 232 deletions(-) diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/api-manager.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/api-manager.json index a1d92e1f55..65fc5dba72 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/api-manager.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/api-manager.json @@ -38,7 +38,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -151,7 +151,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -247,7 +247,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -358,7 +358,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -454,7 +454,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -550,7 +550,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -646,7 +646,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -766,7 +766,7 @@ "text": "All", "value": "$__all" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "label_values(kong_request_count, cluster)", "hide": 0, "includeAll": true, @@ -793,7 +793,7 @@ "$__all" ] }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "label_values(kong_request_count,api)", "hide": 0, "includeAll": true, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/master-dashboard.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/master-dashboard.json index 2c84beeb65..4f36381d76 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/master-dashboard.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/master-dashboard.json @@ -1458,7 +1458,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -1568,7 +1568,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 4, "fill": 1, "fillGradient": 0, @@ -1665,7 +1665,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 4, "fill": 1, "fillGradient": 0, @@ -1777,7 +1777,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -1873,7 +1873,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -2323,7 +2323,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -2436,7 +2436,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -2540,7 +2540,7 @@ "text": "kubernetes-1", "value": "kubernetes-1" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "label_values(node_load1,cluster)", "hide": 0, "includeAll": true, @@ -2594,7 +2594,7 @@ "$__all" ] }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "label_values(kong_request_count,api)", "hide": 0, "includeAll": true, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/nginx.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/nginx.json index 96b9e7f5a0..eee1d3d276 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/nginx.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/nginx.json @@ -26,7 +26,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -120,7 +120,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -218,7 +218,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -323,7 +323,7 @@ "text": "All", "value": "$__all" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "label_values(nginx_http_requests_total, cluster)", "hide": 0, "includeAll": true, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json index d339ef8290..6991ee169a 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json @@ -1194,7 +1194,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 4, "fill": 1, "gridPos": { @@ -1286,7 +1286,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 4, "fill": 1, "gridPos": { @@ -1576,7 +1576,7 @@ "text": "All", "value": "$__all" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "label_values(node_load1,cluster)", "hide": 0, "includeAll": true, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json index 1ec63f400f..0b10787a01 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json @@ -25,7 +25,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -119,7 +119,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -213,7 +213,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -307,7 +307,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -403,7 +403,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -709,7 +709,7 @@ "text": "All", "value": "$__all" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "label_values(node_load1,cluster)", "hide": 0, "includeAll": true, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/node-exporter.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/node-exporter.json index e1f990c1e4..ed399a3a51 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/node-exporter.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/node-exporter.json @@ -42,7 +42,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "Busy state of all CPU cores together", "format": "percent", @@ -128,7 +128,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 0, "description": "Non available RAM memory", "format": "percent", @@ -216,7 +216,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "Used Swap", "format": "percent", @@ -300,7 +300,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "Used Root FS", "format": "percent", @@ -384,7 +384,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "Busy state of all CPU cores together (1 min average)", "format": "percent", @@ -469,7 +469,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "Busy state of all CPU cores together (5 min average)", "format": "percent", @@ -568,7 +568,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "Total number of CPU cores", "format": "short", "gauge": { @@ -650,7 +650,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "description": "Total RAM", "format": "bytes", @@ -733,7 +733,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "description": "Total SWAP", "format": "bytes", @@ -816,7 +816,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "Total RootFS", "format": "bytes", @@ -901,7 +901,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "description": "System Load (1m avg)", "format": "short", @@ -985,7 +985,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 1, "description": "System uptime", "format": "s", @@ -1093,7 +1093,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "description": "Basic CPU info", "fill": 4, @@ -1270,7 +1270,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "description": "Basic memory usage", "fill": 4, @@ -1455,7 +1455,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "Basic network info per interface", "fill": 4, "gridPos": { @@ -1589,7 +1589,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 3, "description": "Disk space used of all filesystems mounted", "fill": 4, @@ -1704,7 +1704,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "description": "", "fill": 4, @@ -1884,7 +1884,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "description": "", "fill": 4, @@ -2060,7 +2060,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 4, "gridPos": { "h": 12, @@ -2189,7 +2189,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 3, "description": "", "fill": 4, @@ -2283,7 +2283,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -2467,7 +2467,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 3, "description": "", "fill": 4, @@ -2597,7 +2597,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 3, "description": "", "fill": 4, @@ -2724,7 +2724,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -2841,7 +2841,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -2967,7 +2967,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3106,7 +3106,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3231,7 +3231,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3350,7 +3350,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3468,7 +3468,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3596,7 +3596,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3706,7 +3706,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3828,7 +3828,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -3938,7 +3938,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -4064,7 +4064,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -4182,7 +4182,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -4311,7 +4311,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -4430,7 +4430,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -4536,7 +4536,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -4638,7 +4638,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -4758,7 +4758,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -4883,7 +4883,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5014,7 +5014,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5131,7 +5131,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5254,7 +5254,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5363,7 +5363,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5480,7 +5480,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5589,7 +5589,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5746,7 +5746,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -5879,7 +5879,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6012,7 +6012,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6145,7 +6145,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6278,7 +6278,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6420,7 +6420,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6555,7 +6555,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6687,7 +6687,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6817,7 +6817,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -6934,7 +6934,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7051,7 +7051,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7200,7 +7200,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7331,7 +7331,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7448,7 +7448,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7564,7 +7564,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7673,7 +7673,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7798,7 +7798,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -7960,7 +7960,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8077,7 +8077,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8192,7 +8192,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8309,7 +8309,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8424,7 +8424,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8540,7 +8540,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8656,7 +8656,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8772,7 +8772,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8881,7 +8881,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -8998,7 +8998,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9107,7 +9107,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9224,7 +9224,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9340,7 +9340,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9449,7 +9449,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9558,7 +9558,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9675,7 +9675,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9792,7 +9792,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 2, "fill": 2, "gridPos": { @@ -9912,7 +9912,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10004,7 +10004,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10104,7 +10104,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10198,7 +10198,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10294,7 +10294,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10377,7 +10377,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10468,7 +10468,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10552,7 +10552,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10642,7 +10642,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -10740,7 +10740,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -10850,7 +10850,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -10998,7 +10998,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -11176,7 +11176,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -11355,7 +11355,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 3, "gridPos": { @@ -11536,7 +11536,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -11704,7 +11704,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -11883,7 +11883,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 3, "gridPos": { @@ -12051,7 +12051,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -12219,7 +12219,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -12399,7 +12399,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 3, "description": "", "fill": 2, @@ -12505,7 +12505,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -12591,7 +12591,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -12683,7 +12683,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -12771,7 +12771,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -12879,7 +12879,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13004,7 +13004,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13133,7 +13133,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13262,7 +13262,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13391,7 +13391,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13512,7 +13512,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13641,7 +13641,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13763,7 +13763,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13872,7 +13872,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -13981,7 +13981,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14078,7 +14078,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14176,7 +14176,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14299,7 +14299,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14406,7 +14406,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14497,7 +14497,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14596,7 +14596,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14718,7 +14718,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14847,7 +14847,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -14970,7 +14970,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15093,7 +15093,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15216,7 +15216,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15341,7 +15341,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15466,7 +15466,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15563,7 +15563,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15668,7 +15668,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15782,7 +15782,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -15895,7 +15895,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -16076,7 +16076,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -16222,7 +16222,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -16325,7 +16325,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -16431,7 +16431,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -16557,7 +16557,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -16699,7 +16699,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -16805,7 +16805,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -16942,7 +16942,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -17067,7 +17067,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -17197,7 +17197,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -17345,7 +17345,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -17453,7 +17453,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -17551,7 +17551,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -17666,7 +17666,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -17775,7 +17775,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -17929,7 +17929,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -18073,7 +18073,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -18218,7 +18218,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -18327,7 +18327,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -18433,7 +18433,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -18531,7 +18531,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -18646,7 +18646,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -18745,7 +18745,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -18853,7 +18853,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -18953,7 +18953,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -19053,7 +19053,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "description": "", "fill": 2, @@ -19153,7 +19153,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -19243,7 +19243,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -19341,7 +19341,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -19431,7 +19431,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -19521,7 +19521,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -19656,7 +19656,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "fill": 2, "gridPos": { @@ -19766,7 +19766,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -19899,7 +19899,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -20004,7 +20004,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "fill": 2, "gridPos": { "h": 10, @@ -20148,7 +20148,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "fill": 2, "gridPos": { @@ -20321,7 +20321,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "fill": 2, "gridPos": { @@ -20498,7 +20498,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "fill": 2, "gridPos": { @@ -20624,7 +20624,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "fill": 2, "gridPos": { @@ -20750,7 +20750,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "fill": 2, "gridPos": { @@ -20876,7 +20876,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "fill": 2, "gridPos": { @@ -21017,7 +21017,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -21101,7 +21101,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "description": "", "fill": 2, "gridPos": { @@ -21198,7 +21198,7 @@ "text": "vm-node-exporter", "value": "vm-node-exporter" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "", "hide": 0, "includeAll": false, @@ -21223,7 +21223,7 @@ "text": "11.4.0.16", "value": "11.4.0.16" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "", "hide": 0, "includeAll": false, @@ -21248,7 +21248,7 @@ "text": "9100", "value": "9100" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "", "hide": 0, "includeAll": false, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/postgres.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/postgres.json index 1fd848875a..5f7c9ace4a 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/postgres.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/postgres.json @@ -25,7 +25,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -383,7 +383,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 0, "editable": true, "error": false, @@ -509,7 +509,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": 1, "editable": true, "error": false, @@ -850,7 +850,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1034,7 +1034,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1123,7 +1123,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1223,7 +1223,7 @@ "text": "None", "value": "" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "", "hide": 0, "includeAll": false, @@ -1248,7 +1248,7 @@ "text": "All", "value": "$__all" }, - "datasource": "prom-fed", + "datasource": "Prometheus", "definition": "", "hide": 0, "includeAll": true, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/prometheus-stats.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/prometheus-stats.json index 4514d56dd1..c577496da3 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/prometheus-stats.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/prometheus-stats.json @@ -144,7 +144,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "format": "none", @@ -221,7 +221,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(245, 54, 54, 0.9)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "format": "none", @@ -304,7 +304,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "format": "s", @@ -401,7 +401,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -488,7 +488,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -591,7 +591,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "decimals": null, "editable": true, "error": false, @@ -701,7 +701,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -791,7 +791,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -894,7 +894,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -983,7 +983,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1086,7 +1086,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1179,7 +1179,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1286,7 +1286,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1377,7 +1377,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "prom-fed", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, From 8e06ef55616138cf211ed867ad2312d3ae6c5910 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 18:31:40 +0530 Subject: [PATCH 054/298] Issue #00 fix: adding servicemonitor for nginx --- .../templates/serviceMonitor.yml | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml b/kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml new file mode 100644 index 0000000000..76efb64c6f --- /dev/null +++ b/kubernetes/helm_charts/core/nginx-public-ingress/templates/serviceMonitor.yml @@ -0,0 +1,25 @@ +{{- if .Values.serviceMonitor.enabled }} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: {{ include "nginx-public-ingress.fullname" . }} + namespace: {{ default .Values.namespace .Release.Namespace }} + labels: + {{- include "nginx-public-ingress.labels" . | nindent 4 }} + {{- toYaml .Values.serviceMonitor.labels | nindent 4 }} +spec: + endpoints: + - honorLabels: true + interval: 15s + path: /metrics + port: http + scheme: http + scrapeTimeout: 10s + jobLabel: nginx-public-ingress + namespaceSelector: + matchNames: + - {{ default .Values.namespace .Release.Namespace }} + selector: + matchLabels: + {{- include "nginx-public-ingress.labels" . | nindent 6 }} +{{- end }} From 706c68c007398cb12de93332a8dac014b000606e Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 18 Mar 2020 18:50:14 +0530 Subject: [PATCH 055/298] Issue #00 fix:statsd exporter fix --- kubernetes/ansible/roles/sunbird-monitoring/defaults/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/kubernetes/ansible/roles/sunbird-monitoring/defaults/main.yml b/kubernetes/ansible/roles/sunbird-monitoring/defaults/main.yml index 92a9bf1ab5..d6b82a127c 100644 --- a/kubernetes/ansible/roles/sunbird-monitoring/defaults/main.yml +++ b/kubernetes/ansible/roles/sunbird-monitoring/defaults/main.yml @@ -10,6 +10,7 @@ monitoring_stack: - blackbox-exporter - additional-scrape-configs - alertrules + - statsd-exporter namespace: monitoring From 23218298577f16540a9424833bef59a9df6f8b14 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 19 Mar 2020 10:47:21 +0530 Subject: [PATCH 056/298] Issue #00 fix: automating enc service table creation --- .../postgresql-dock-data-update/tasks/main.yml | 13 +++++++++++-- .../templates/enc_postgres.sql | 12 ++++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql diff --git a/ansible/roles/postgresql-dock-data-update/tasks/main.yml b/ansible/roles/postgresql-dock-data-update/tasks/main.yml index 563b2999bb..33f8b64b6a 100644 --- a/ansible/roles/postgresql-dock-data-update/tasks/main.yml +++ b/ansible/roles/postgresql-dock-data-update/tasks/main.yml @@ -23,9 +23,18 @@ - name: Create the schema for programs service postgresql_db: - login_user: "{{ programs_service_postgres_user }}" + login_user: "{{ programs_service_postgres_username }}" login_password: "{{ programs_service_postgres_password }}" login_host: "{{ programs_service_postgres_host }}" - name: "{{ programs_service_db }}" + name: "{{ programs_postgres_db }}" state: restore target: "/tmp/programs_postgres.sql" + +- name: Create tables for enc service + postgresql_db: + login_user: "{{ enc_postgres_user }}" + login_password: "{{ enc_postgres_password }}" + login_host: "{{ enc_postgres_host }}" + name: "{{ enc_postgres_database }}" + state: restore + target: "/tmp/enc_postgres.sql" diff --git a/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql b/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql new file mode 100644 index 0000000000..ada819c60f --- /dev/null +++ b/ansible/roles/postgresql-dock-data-update/templates/enc_postgres.sql @@ -0,0 +1,12 @@ +CREATE TYPE "enum_Keys_type" AS ENUM ('MASTER','OTHER'); +CREATE TABLE "Keys" ( + id SERIAL PRIMARY KEY, + public text NOT NULL, + private text NOT NULL, + type "enum_Keys_type" NOT NULL, + active boolean DEFAULT true NOT NULL, + reserved boolean DEFAULT false NOT NULL, + "createdAt" timestamp with time zone NOT NULL, + "updatedAt" timestamp with time zone NOT NULL +); +commit; From aba3439fffe794dc03784e3202b50c9709286520 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 23 Mar 2020 14:07:25 +0530 Subject: [PATCH 057/298] Issue #00 fix: task to upload kp schemas --- ansible/upload-schemas.yml | 13 +++++++ pipelines/upload/schemas/Jenkinsfile | 55 ++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 ansible/upload-schemas.yml create mode 100644 pipelines/upload/schemas/Jenkinsfile diff --git a/ansible/upload-schemas.yml b/ansible/upload-schemas.yml new file mode 100644 index 0000000000..f7ae68ba98 --- /dev/null +++ b/ansible/upload-schemas.yml @@ -0,0 +1,13 @@ +- hosts: local + become: yes + gather_facts: no + vars_files: + - "{{inventory_dir}}/secrets.yml" + environment: + AZURE_STORAGE_ACCOUNT: "{{ azure_account_name }}" + AZURE_STORAGE_SAS_TOKEN: "{{ azure_plugin_storage_account_sas }}" + tasks: + - name: upload batch + command: "az storage blob upload-batch --destination {{ schemas_container_name }}/schemas --source {{ source_name }}" + async: 3600 + poll: 10 diff --git a/pipelines/upload/schemas/Jenkinsfile b/pipelines/upload/schemas/Jenkinsfile new file mode 100644 index 0000000000..fd45c6e087 --- /dev/null +++ b/pipelines/upload/schemas/Jenkinsfile @@ -0,0 +1,55 @@ +@Library('deploy-conf') _ +node() { + try { + String ANSI_GREEN = "\u001B[32m" + String ANSI_NORMAL = "\u001B[0m" + String ANSI_BOLD = "\u001B[1m" + String ANSI_RED = "\u001B[31m" + String ANSI_YELLOW = "\u001B[33m" + + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + ansiColor('xterm') { + values = lp_dp_params() + values.put('module', 'Core') + stage('get artifact') { + currentWs = sh(returnStdout: true, script: 'pwd').trim() + artifact = values.artifact_name + ":" + values.artifact_version + values.put('currentWs', currentWs) + values.put('artifact', artifact) + artifact_download(values) + } + stage('deploy artifact'){ + sh """ + git clone https://github.com/Sunbird-Ed/creation-portal.git + """ + ansiblePlaybook = "${currentWs}/ansible/upload-schemas.yml" + ansibleExtraArgs = "--extra-vars \" source_file=${currentWs}/creation-portal/kp_schemas \" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + println values + ansible_playbook_run(values) + currentBuild.result = 'SUCCESS' + archiveArtifacts artifacts: "${artifact}", fingerprint: true, onlyIfSuccessful: true + archiveArtifacts artifacts: 'metadata.json', onlyIfSuccessful: true + currentBuild.description = "Artifact: ${values.artifact_version}, Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + } + } + catch (err) { + currentBuild.result = 'FAILURE' + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} From 04c053d6a1bb33a29c3238b5464faed090e93dc8 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 23 Mar 2020 14:17:44 +0530 Subject: [PATCH 058/298] Issue #00 fix: updating jenkinsfile --- pipelines/upload/schemas/Jenkinsfile | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pipelines/upload/schemas/Jenkinsfile b/pipelines/upload/schemas/Jenkinsfile index fd45c6e087..103fea0cd1 100644 --- a/pipelines/upload/schemas/Jenkinsfile +++ b/pipelines/upload/schemas/Jenkinsfile @@ -20,13 +20,13 @@ node() { ansiColor('xterm') { values = lp_dp_params() values.put('module', 'Core') - stage('get artifact') { - currentWs = sh(returnStdout: true, script: 'pwd').trim() - artifact = values.artifact_name + ":" + values.artifact_version - values.put('currentWs', currentWs) - values.put('artifact', artifact) - artifact_download(values) - } + // stage('get artifact') { + // currentWs = sh(returnStdout: true, script: 'pwd').trim() + // artifact = values.artifact_name + ":" + values.artifact_version + // values.put('currentWs', currentWs) + // values.put('artifact', artifact) + // artifact_download(values) + // } stage('deploy artifact'){ sh """ git clone https://github.com/Sunbird-Ed/creation-portal.git @@ -38,9 +38,9 @@ node() { println values ansible_playbook_run(values) currentBuild.result = 'SUCCESS' - archiveArtifacts artifacts: "${artifact}", fingerprint: true, onlyIfSuccessful: true - archiveArtifacts artifacts: 'metadata.json', onlyIfSuccessful: true - currentBuild.description = "Artifact: ${values.artifact_version}, Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + // archiveArtifacts artifacts: "${artifact}", fingerprint: true, onlyIfSuccessful: true + // archiveArtifacts artifacts: 'metadata.json', onlyIfSuccessful: true + // currentBuild.description = "Artifact: ${values.artifact_version}, Private: ${params.private_branch}, Public: ${params.branch_or_tag}" } } } From 2ea8f444043620c81674c6ff97ab3d22ab8ce87d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 24 Mar 2020 10:09:40 +0530 Subject: [PATCH 059/298] Issue #00 fix: jenkinsfile --- pipelines/upload/schemas/Jenkinsfile | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/pipelines/upload/schemas/Jenkinsfile b/pipelines/upload/schemas/Jenkinsfile index 103fea0cd1..60ff19d2d2 100644 --- a/pipelines/upload/schemas/Jenkinsfile +++ b/pipelines/upload/schemas/Jenkinsfile @@ -18,18 +18,15 @@ node() { } ansiColor('xterm') { - values = lp_dp_params() - values.put('module', 'Core') - // stage('get artifact') { - // currentWs = sh(returnStdout: true, script: 'pwd').trim() - // artifact = values.artifact_name + ":" + values.artifact_version - // values.put('currentWs', currentWs) - // values.put('artifact', artifact) - // artifact_download(values) - // } + values = [:] + currentWs = sh(returnStdout: true, script: 'pwd').trim() + envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() + module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() + jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() stage('deploy artifact'){ sh """ - git clone https://github.com/Sunbird-Ed/creation-portal.git + rm -rf creation-portal + git clone https://github.com/Sunbird-Ed/creation-portal.git """ ansiblePlaybook = "${currentWs}/ansible/upload-schemas.yml" ansibleExtraArgs = "--extra-vars \" source_file=${currentWs}/creation-portal/kp_schemas \" --vault-password-file /var/lib/jenkins/secrets/vault-pass" @@ -38,9 +35,6 @@ node() { println values ansible_playbook_run(values) currentBuild.result = 'SUCCESS' - // archiveArtifacts artifacts: "${artifact}", fingerprint: true, onlyIfSuccessful: true - // archiveArtifacts artifacts: 'metadata.json', onlyIfSuccessful: true - // currentBuild.description = "Artifact: ${values.artifact_version}, Private: ${params.private_branch}, Public: ${params.branch_or_tag}" } } } From 75adf9ffeb5479f6e53b9f8280b39c2586209a2a Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 24 Mar 2020 11:03:05 +0530 Subject: [PATCH 060/298] Issue #00 fix: jenkins job for upload schemas --- pipelines/upload/schemas/Jenkinsfile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pipelines/upload/schemas/Jenkinsfile b/pipelines/upload/schemas/Jenkinsfile index 60ff19d2d2..0618192793 100644 --- a/pipelines/upload/schemas/Jenkinsfile +++ b/pipelines/upload/schemas/Jenkinsfile @@ -25,11 +25,15 @@ node() { jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() stage('deploy artifact'){ sh """ - rm -rf creation-portal - git clone https://github.com/Sunbird-Ed/creation-portal.git + rm -rf creation-portal + git clone https://github.com/Sunbird-Ed/creation-portal.git -b creation_portal """ ansiblePlaybook = "${currentWs}/ansible/upload-schemas.yml" - ansibleExtraArgs = "--extra-vars \" source_file=${currentWs}/creation-portal/kp_schemas \" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + ansibleExtraArgs = "--extra-vars \" source_name=${currentWs}/creation-portal/kp_schemas \" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('env', envDir) + values.put('module', module) + values.put('jobName', jobName) values.put('ansiblePlaybook', ansiblePlaybook) values.put('ansibleExtraArgs', ansibleExtraArgs) println values From cd64fa4be46dd9af87b7350541c40e455f5a1702 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 25 Mar 2020 16:28:52 +0530 Subject: [PATCH 061/298] Issue #00 fix: changing cassandra keyspace name --- .../templates/content-service_application.conf | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index eb9b6cdb77..36125da65f 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -321,21 +321,21 @@ schema.base_path="{{ schema_base_path }}" # Cassandra Configuration cassandra { lp { - connection: "{{ lp_cassandra_connection }}" + connection: "{{ cassandra_keyspace_prefix }}" } lpa { - connection: "{{ dp_cassandra_connection }}" + connection: "{{ cassandra_keyspace_prefix }}" } } collection { - keyspace: "{{ lp_cassandra_keyspace_prefix }}_hierarchy_store" + keyspace: "{{ cassandra_keyspace_prefix }}_hierarchy_store" cache.enable: true image.migration.enabled: true } content { - keyspace: "{{ lp_cassandra_keyspace_prefix }}_content_store" + keyspace: "{{ cassandra_keyspace_prefix }}_content_store" cache { ttl: 86400 enable: true From 232dc55e777f54e187719592d594698c3f5e04c0 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 25 Mar 2020 17:12:31 +0530 Subject: [PATCH 062/298] Issue #00 fix: changing cassandra keyspace name --- .../stack-sunbird/templates/content-service_application.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 36125da65f..c5b7a092a4 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -321,10 +321,10 @@ schema.base_path="{{ schema_base_path }}" # Cassandra Configuration cassandra { lp { - connection: "{{ cassandra_keyspace_prefix }}" + connection: "{{ lp_cassandra_connection }}" } lpa { - connection: "{{ cassandra_keyspace_prefix }}" + connection: "{{ dp_cassandra_connection }}" } } From 40b4541de6a54c7c00c06d578fbfca518b66bb61 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 25 Mar 2020 17:16:38 +0530 Subject: [PATCH 063/298] Issue #00 fix: changing cassandra keyspace name --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index c5b7a092a4..ef2fed93e7 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -324,7 +324,7 @@ cassandra { connection: "{{ lp_cassandra_connection }}" } lpa { - connection: "{{ dp_cassandra_connection }}" + connection: "{{ lp_cassandra_connection }}" } } From 154a02f03414554b6c5ac689f45d149468e4b0ed Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 25 Mar 2020 21:03:14 +0530 Subject: [PATCH 064/298] Issue #00 fix: removing liveliness probe for assessment --- .../helm_charts/core/assessment/templates/deployment.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/kubernetes/helm_charts/core/assessment/templates/deployment.yaml b/kubernetes/helm_charts/core/assessment/templates/deployment.yaml index fd4ed00982..1b710e740e 100644 --- a/kubernetes/helm_charts/core/assessment/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/assessment/templates/deployment.yaml @@ -36,12 +36,6 @@ spec: {{ toYaml .Values.resources | indent 10 }} ports: - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} volumeMounts: - name: {{ .Chart.Name }}-config mountPath: /home/sunbird/assessment-service-1.0-SNAPSHOT/config/application.conf From bf94169ff4b8afd4ae89036c34b90177d78f4d48 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 25 Mar 2020 21:49:58 +0530 Subject: [PATCH 065/298] Issue #00 fix: pointing schemas to blob for assessment service --- .../stack-sunbird/templates/assessment-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 7ac6f0540a..0737979a20 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -317,7 +317,7 @@ play.filters { play.http.parser.maxMemoryBuffer = 50MB akka.http.parsing.max-content-length = 50MB -schema.base_path="/home/sunbird/assessment-service-1.0-SNAPSHOT/schemas/" +schema.base_path="{{ schema_base_path }}" # Cassandra Configuration cassandra.lp.connection="{{ lp_cassandra_connection }}" From e5b85fb31ca32e3a6b882e00edf234058e1454e4 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 27 Mar 2020 10:35:29 +0530 Subject: [PATCH 066/298] Issue #00 fix: enc service postgres schema --- ansible/roles/postgresql-dock-data-update/tasks/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/postgresql-dock-data-update/tasks/main.yml b/ansible/roles/postgresql-dock-data-update/tasks/main.yml index 33f8b64b6a..476e63fc37 100644 --- a/ansible/roles/postgresql-dock-data-update/tasks/main.yml +++ b/ansible/roles/postgresql-dock-data-update/tasks/main.yml @@ -14,6 +14,7 @@ template: src={{item}} dest=/tmp/{{item}} with_items: - programs_postgres.sql + - enc_postrges.sql - name: Install postgres client to create schema from file apt: From 6e88562b06966d7ddc7e3f4705e84f3efa9f737b Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 27 Mar 2020 10:46:42 +0530 Subject: [PATCH 067/298] Issue #00 fix: enc service postgres schema --- ansible/roles/postgresql-dock-data-update/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/postgresql-dock-data-update/tasks/main.yml b/ansible/roles/postgresql-dock-data-update/tasks/main.yml index 476e63fc37..a18d5b3c31 100644 --- a/ansible/roles/postgresql-dock-data-update/tasks/main.yml +++ b/ansible/roles/postgresql-dock-data-update/tasks/main.yml @@ -14,7 +14,7 @@ template: src={{item}} dest=/tmp/{{item}} with_items: - programs_postgres.sql - - enc_postrges.sql + - enc_postgres.sql - name: Install postgres client to create schema from file apt: From 27ec145c723eb087b6b5307334c5b4eaf44bc238 Mon Sep 17 00:00:00 2001 From: "S M Y ALTAMASH smy.altamash@gmail.com" Date: Fri, 27 Mar 2020 13:20:21 +0530 Subject: [PATCH 068/298] adding artifcat download changes --- ansible/artifacts-download.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/artifacts-download.yml b/ansible/artifacts-download.yml index 9999f43480..fc348be091 100644 --- a/ansible/artifacts-download.yml +++ b/ansible/artifacts-download.yml @@ -5,6 +5,6 @@ - "{{inventory_dir}}/secrets.yml" environment: AZURE_STORAGE_ACCOUNT: "{{ artifact_azure_account_name }}" - AZURE_STORAGE_KEY: "{{ artifact_azure_account_sas }}" + AZURE_STORAGE_SAS_TOKEN: "{{ artifact_azure_account_sas }}" roles: - artifacts-download-azure From 04f78ac82ab1e0aed2e3d91c91a305c19ec4e11d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 27 Mar 2020 13:22:04 +0530 Subject: [PATCH 069/298] Issue #00 fix: fix: absolute path for reloader helm chart --- kubernetes/ansible/bootstrap_minimal.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/ansible/bootstrap_minimal.yaml b/kubernetes/ansible/bootstrap_minimal.yaml index 9f34c90226..847b25a166 100644 --- a/kubernetes/ansible/bootstrap_minimal.yaml +++ b/kubernetes/ansible/bootstrap_minimal.yaml @@ -64,4 +64,4 @@ when: merge_proxy_server_name is not none and proxymerge_site_crt is defined and proxymerge_site_key is defined - name: Installing reloader for configmaps reload - shell: helm upgrade --install reloader ../helm_charts/core/reloader --namespace "{{ namespace }}" -f "{{ helm_file.path }}" + shell: helm upgrade --install --atomic reloader "{{ playbook_dir }}"/../helm_charts/core/reloader --namespace "{{ namespace }}" -f "{{ helm_file.path }}" From 1f789af792e1f2c7b8d11f23910b13c1c5bb5008 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 27 Mar 2020 13:23:40 +0530 Subject: [PATCH 070/298] Issue #00 fix: sas token fix --- ansible/artifacts-download.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/artifacts-download.yml b/ansible/artifacts-download.yml index 9999f43480..fc348be091 100644 --- a/ansible/artifacts-download.yml +++ b/ansible/artifacts-download.yml @@ -5,6 +5,6 @@ - "{{inventory_dir}}/secrets.yml" environment: AZURE_STORAGE_ACCOUNT: "{{ artifact_azure_account_name }}" - AZURE_STORAGE_KEY: "{{ artifact_azure_account_sas }}" + AZURE_STORAGE_SAS_TOKEN: "{{ artifact_azure_account_sas }}" roles: - artifacts-download-azure From fbe43edaf716c4fa88b4324175514092e616359f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 27 Mar 2020 17:14:19 +0530 Subject: [PATCH 071/298] Issue #00 fix: enable https --- .../core/nginx-public-ingress/values.j2 | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 89dd868a70..adbb14ea38 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -64,19 +64,36 @@ repository: {{proxy_repository|default('proxy')}} image_tag: {{ image_tag }} proxyconfig: | + {% if proto=='https' %} server { listen 80; listen [::]:80; server_name {{ proxy_server_name }}; + # Limitting open connection per ip + limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; + + return 301 https://{{ proxy_server_name }}$request_uri; + } + {% endif %} + server { + {% if proto=='http' %} + listen 80; + listen [::]:80; + {% else %} + listen 443 ssl; + ssl_certificate /etc/secrets/site.crt; + ssl_certificate_key /etc/secrets/site.key; + ssl_protocols TLSv1.2 TLSv1.3; + ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA HIGH !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"; + {% endif %} + server_name {{ proxy_server_name }}; + # Limitting open connection per ip limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-SSL on; proxy_set_header X-Forwarded-Proto $scheme; - - ignore_invalid_headers off; #pass through headers from Jenkins which are considered invalid by Nginx server. - resolver {{ kube_dns_ip }} valid=30s; location ~* ^/auth/realms/(.+)/token/introspect/ { return 301 {{proto}}://$host/api/auth/v1/realms/$1/token/introspect; From 909a50605315c0ba44b7c0a1215a3ba614bcb6e3 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 30 Mar 2020 18:38:50 +0530 Subject: [PATCH 072/298] Issue #00 fix: adding new programs api --- ansible/roles/kong-api/defaults/main.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 4ddaff3800..2404a9362f 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4240,3 +4240,20 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programCollectionCopy + request_path: "{{ program_service_prefix }}/v1/collection/copy" + upstream_url: "{{ program_service_url }}/program/v1/collection/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From 0609fb78328b13b21d15342d51d21a355bcadaff Mon Sep 17 00:00:00 2001 From: Raghupathi Date: Mon, 30 Mar 2020 20:51:34 +0530 Subject: [PATCH 073/298] Issue #00 fix: Update programs variables (#1334) * Issue #00 fix: Update programs variables Updating programs variables * Issue #00 fix: updating programs variables --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index be50ca0c24..de3e4accd5 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -1,4 +1,4 @@ -sunbird_program_base_url={{ sunbird_program_base_url }} +sunbird_base_url={{ sunbird_program_base_url }} sunbird_api_auth_token={{ sunbird_api_auth_token }} sunbird_program_port= 6000 sunbird_service_log_level=info @@ -8,3 +8,5 @@ sunbird_program_db_name={{ programs_postgres_db }} sunbird_program_db_password={{ dock_postgres_password }} sunbird_program_db_port=5432 sunbird_program_db_dialect=postgres +dock_base_url={{ dock_base_url }} +dock_channel={{ dock_channel }} From 00328d69717e3079f09f2a6dfe55a9c23df98f37 Mon Sep 17 00:00:00 2001 From: Rayulu Date: Tue, 31 Mar 2020 01:18:16 +0530 Subject: [PATCH 074/298] temporary change to test on dev environment --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index de3e4accd5..856d2b9260 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -8,5 +8,5 @@ sunbird_program_db_name={{ programs_postgres_db }} sunbird_program_db_password={{ dock_postgres_password }} sunbird_program_db_port=5432 sunbird_program_db_dialect=postgres -dock_base_url={{ dock_base_url }} -dock_channel={{ dock_channel }} +dock_base_url=http://dock.sunbirded.org +dock_channel=sunbird From 179e9cbeaa00a3c3eeb7c81e7e752e7b648e7cd6 Mon Sep 17 00:00:00 2001 From: Raghupathi Date: Tue, 31 Mar 2020 01:48:51 +0530 Subject: [PATCH 075/298] Issue #00 fix: update vars for program (#1335) --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 856d2b9260..10fc7d737b 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -8,5 +8,6 @@ sunbird_program_db_name={{ programs_postgres_db }} sunbird_program_db_password={{ dock_postgres_password }} sunbird_program_db_port=5432 sunbird_program_db_dialect=postgres -dock_base_url=http://dock.sunbirded.org -dock_channel=sunbird +dock_base_url={{ dock_base_url }} +dock_channel={{ dock_channel }} +learning_service_url={{ sunbird_content_repo_api_base_url }} From d09c6baaa3e4d87d6989e82a58c83bc46a56f6d7 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 31 Mar 2020 16:13:45 +0530 Subject: [PATCH 076/298] Issue #00 fix: adding new variables for player --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 95139ee06c..9a2a5cbd21 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -85,3 +85,5 @@ sunbird_portal_updateLoginTimeEnabled={{sunbird_portal_updateLoginTimeEnabled|lo #Dock dock_api_auth_token={{ dock_api_auth_token }} +sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} +sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} From 0a8f0fc26c084a462e857258545ecd7708641e98 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 31 Mar 2020 18:16:17 +0530 Subject: [PATCH 077/298] Issue #00 fix: adding new portal variable --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 9a2a5cbd21..cdeebaccfd 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -87,3 +87,4 @@ sunbird_portal_updateLoginTimeEnabled={{sunbird_portal_updateLoginTimeEnabled|lo dock_api_auth_token={{ dock_api_auth_token }} sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} +kp_assessment_service_base_url={{ kp_assessment_service_base_url }} From f4c47370a865f87db110d31d438c28293d07a63b Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 31 Mar 2020 18:55:43 +0530 Subject: [PATCH 078/298] Issue #00 fix: adding new portal variable --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index cdeebaccfd..734878cf80 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -87,4 +87,4 @@ sunbird_portal_updateLoginTimeEnabled={{sunbird_portal_updateLoginTimeEnabled|lo dock_api_auth_token={{ dock_api_auth_token }} sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} -kp_assessment_service_base_url={{ kp_assessment_service_base_url }} +sunbird_kp_assessment_service_base_url={{ sunbird_kp_assessment_service_base_url }} From ec02128869fb033fa4ca0d73119cb0391932eca6 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 31 Mar 2020 21:25:42 +0530 Subject: [PATCH 079/298] Issue #00 fix: adding new portal variable --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 734878cf80..2a3fb7bc7b 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -84,7 +84,7 @@ sunbird_portal_base_url={{sunbird_portal_base_url | d('')}} sunbird_portal_updateLoginTimeEnabled={{sunbird_portal_updateLoginTimeEnabled|lower}} #Dock +sunbird_kp_assessment_service_base_url={{ sunbird_kp_assessment_service_base_url }} dock_api_auth_token={{ dock_api_auth_token }} sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} -sunbird_kp_assessment_service_base_url={{ sunbird_kp_assessment_service_base_url }} From 1532984eb88ef191b9be272e89dd6ad58199e992 Mon Sep 17 00:00:00 2001 From: "S M Y ALTAMASH smy.altamash@gmail.com" Date: Wed, 15 Apr 2020 18:28:21 +0530 Subject: [PATCH 080/298] upload test --- ansible/artifacts-download.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/artifacts-download.yml b/ansible/artifacts-download.yml index fc348be091..a58a6f62de 100644 --- a/ansible/artifacts-download.yml +++ b/ansible/artifacts-download.yml @@ -5,6 +5,6 @@ - "{{inventory_dir}}/secrets.yml" environment: AZURE_STORAGE_ACCOUNT: "{{ artifact_azure_account_name }}" - AZURE_STORAGE_SAS_TOKEN: "{{ artifact_azure_account_sas }}" + AZURE_STORAGE_KEY: "{{ artifact_azure_account_key }}" roles: - artifacts-download-azure From 6a410cab380be4135662994145990507eb9925d9 Mon Sep 17 00:00:00 2001 From: "S M Y ALTAMASH smy.altamash@gmail.com" Date: Wed, 15 Apr 2020 18:28:37 +0530 Subject: [PATCH 081/298] upload test --- ansible/artifacts-upload.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/artifacts-upload.yml b/ansible/artifacts-upload.yml index fbe3696254..4071e51325 100644 --- a/ansible/artifacts-upload.yml +++ b/ansible/artifacts-upload.yml @@ -5,6 +5,6 @@ - "{{inventory_dir}}/secrets.yml" environment: AZURE_STORAGE_ACCOUNT: "{{ artifact_azure_account_name }}" - AZURE_STORAGE_SAS_TOKEN: "{{ artifact_azure_account_sas }}" + AZURE_STORAGE_KEY: "{{ artifact_azure_account_key }}" roles: - artifacts-upload-azure From 5b7ea8b8039c1c8ba3d085b43f7ac14aa9db9030 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Sun, 19 Apr 2020 14:57:49 +0530 Subject: [PATCH 082/298] Issue #00 fix: changing grafana datasource name --- .../dashboards/dashboards/druid.json | 4 +-- .../dashboards/dashboards/elasticsearch.json | 34 +++++++++---------- .../dashboards/dashboards/noc-dashboard.json | 4 +-- .../dashboards/dashboards/noc-dashboard1.json | 4 +-- .../dashboards/dashboards/redis.json | 14 ++++---- .../dashboards/secor-consumarlag-kafka.json | 30 ++++++++-------- .../dashboards/service-availability.json | 6 ++-- 7 files changed, 48 insertions(+), 48 deletions(-) diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/druid.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/druid.json index 971d394e85..270acebcae 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/druid.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/druid.json @@ -20,7 +20,7 @@ "panels": [ { "columns": [], - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fontSize": "120%", "gridPos": { "h": 9, @@ -145,7 +145,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 7, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/elasticsearch.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/elasticsearch.json index a3107e098c..06abc8dddd 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/elasticsearch.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/elasticsearch.json @@ -28,7 +28,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "format": "none", @@ -110,7 +110,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "format": "none", @@ -198,7 +198,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "format": "none", @@ -286,7 +286,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "format": "none", @@ -370,7 +370,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -459,7 +459,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "gridPos": { "h": 7, @@ -563,7 +563,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -652,7 +652,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -741,7 +741,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -830,7 +830,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -919,7 +919,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1007,7 +1007,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1094,7 +1094,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1188,7 +1188,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1280,7 +1280,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1369,7 +1369,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -1467,7 +1467,7 @@ "text": "log-es-2", "value": "log-es-2" }, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "definition": "label_values(elasticsearch_cluster_health_number_of_data_nodes,cluster)", "hide": 0, "includeAll": false, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json index 6991ee169a..d72f37e1a8 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard.json @@ -1378,7 +1378,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "gridPos": { "h": 5, @@ -1468,7 +1468,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "gridPos": { "h": 5, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json index 0b10787a01..9f74baadd6 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/noc-dashboard1.json @@ -499,7 +499,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { @@ -603,7 +603,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "fillGradient": 0, "gridPos": { diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/redis.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/redis.json index 096d461fd6..489acbd025 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/redis.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/redis.json @@ -29,7 +29,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "decimals": 0, "editable": true, "error": false, @@ -117,7 +117,7 @@ "rgba(237, 129, 40, 0.89)", "rgba(50, 172, 45, 0.97)" ], - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "decimals": 0, "editable": true, "error": false, @@ -203,7 +203,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "decimals": 2, "editable": true, "error": false, @@ -313,7 +313,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -417,7 +417,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, @@ -517,7 +517,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 7, @@ -616,7 +616,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "editable": true, "error": false, "fill": 1, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/secor-consumarlag-kafka.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/secor-consumarlag-kafka.json index 46e3a2e888..45e6e802c1 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/secor-consumarlag-kafka.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/secor-consumarlag-kafka.json @@ -24,7 +24,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 8, @@ -114,7 +114,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 8, @@ -204,7 +204,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 8, @@ -294,7 +294,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 8, @@ -384,7 +384,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 8, @@ -474,7 +474,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 8, @@ -564,7 +564,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 10, @@ -654,7 +654,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 10, @@ -744,7 +744,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 9, @@ -834,7 +834,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 9, @@ -924,7 +924,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 9, @@ -1014,7 +1014,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 9, @@ -1104,7 +1104,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 9, @@ -1194,7 +1194,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 9, @@ -1284,7 +1284,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 0, "gridPos": { "h": 9, diff --git a/kubernetes/helm_charts/monitoring/dashboards/dashboards/service-availability.json b/kubernetes/helm_charts/monitoring/dashboards/dashboards/service-availability.json index 19ccd70582..9834656a0c 100644 --- a/kubernetes/helm_charts/monitoring/dashboards/dashboards/service-availability.json +++ b/kubernetes/helm_charts/monitoring/dashboards/dashboards/service-availability.json @@ -23,7 +23,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "gridPos": { "h": 11, @@ -115,7 +115,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "gridPos": { "h": 7, @@ -206,7 +206,7 @@ "bars": false, "dashLength": 10, "dashes": false, - "datasource": "Prometheus_Stateful", + "datasource": "Prometheus", "fill": 1, "gridPos": { "h": 7, From 4c1ca1f0fbc21721b0a8b43c2ae0e8bbf6c51a56 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 20 Apr 2020 19:44:49 +0530 Subject: [PATCH 083/298] Issue #00 fix: adding telemetry logstash service --- ansible/roles/stack-sunbird/defaults/main.yml | 3 +- ...line.conf => telemetry-logstash-dock.conf} | 0 .../core/telemetry-logstash-dock/Chart.yaml | 5 ++ .../templates/deployment.yaml | 66 +++++++++++++++++++ .../core/telemetry-logstash-dock/values.j2 | 25 +++++++ 5 files changed, 98 insertions(+), 1 deletion(-) rename ansible/roles/stack-sunbird/templates/{telemetry-logstash-datapipeline.conf => telemetry-logstash-dock.conf} (100%) create mode 100644 kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml create mode 100644 kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml create mode 100644 kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 7868697715..5f4d156aa4 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -239,7 +239,8 @@ service_env: print: ../../../../ansible/roles/stack-sunbird/templates/sunbird_print-service.env opensaber: ../../../../ansible/roles/stack-sunbird/templates/sunbird_opensaber.env program: ../../../../ansible/roles/stack-sunbird/templates/sunbird_program.env - + telemetry-logstash-dock: ../../../../ansible/roles/stack-sunbird/templates/telemetry-logstash-dock.conf + sunbird_portal_player_cdn_enabled: false ########### stack-apimanager defaults vars ##### for kubernetes ######### diff --git a/ansible/roles/stack-sunbird/templates/telemetry-logstash-datapipeline.conf b/ansible/roles/stack-sunbird/templates/telemetry-logstash-dock.conf similarity index 100% rename from ansible/roles/stack-sunbird/templates/telemetry-logstash-datapipeline.conf rename to ansible/roles/stack-sunbird/templates/telemetry-logstash-dock.conf diff --git a/kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml b/kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml new file mode 100644 index 0000000000..dbf9d485c1 --- /dev/null +++ b/kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +appVersion: "1.0" +description: A Helm chart for Kubernetes +name: content +version: 0.1.0 diff --git a/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml b/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml new file mode 100644 index 0000000000..ae91acc5fb --- /dev/null +++ b/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml @@ -0,0 +1,66 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Chart.Name }} + namespace: {{ .Values.namespace }} + annotations: + reloader.stakater.com/auto: "true" +spec: + replicas: {{ .Values.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.strategy.maxsurge }} + maxUnavailable: {{ default (sub .Values.replicaCount 1) .Values.strategy.maxunavailable }} + selector: + matchLabels: + app: {{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Chart.Name }} + spec: +{{- if .Values.imagepullsecrets }} + imagePullSecrets: + - name: {{ .Values.imagepullsecrets }} +{{- end }} + volumes: + - name: {{ .Chart.Name }}-config + configMap: + name: {{ .Chart.Name }}-config + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" + imagePullPolicy: Always + envFrom: + - configMapRef: + name: {{ .Chart.Name }}-config + resources: +{{ toYaml .Values.resources | indent 10 }} + ports: + - containerPort: {{ .Values.network.port }} + {{- if .Values.healthcheck }} + livenessProbe: +{{ toYaml .Values.livenessProbe | indent 10 }} + readinessProbe: +{{ toYaml .Values.readinessProbe | indent 10 }} + {{- end }} + volumeMounts: + - name: {{ .Chart.Name }}-config + mountPath: /etc/telemetry-logstash.conf + +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ .Chart.Name }}-service + namespace: {{ .Values.namespace }} + labels: + app: {{ .Chart.Name }} +spec: + ports: + - name: http-{{ .Chart.Name }} + protocol: TCP + port: {{ .Values.network.targetport }} + selector: + app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 b/kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 new file mode 100644 index 0000000000..036705d6f0 --- /dev/null +++ b/kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 @@ -0,0 +1,25 @@ +### Default variable file for cert-service ### + +namespace: {{ namespace }} +imagepullsecrets: {{ imagepullsecrets }} +dockerhub: sunbird + +replicaCount: {{telemetry-logstash-dock_replicacount|default(1)}} +repository: {{telemetry-logstash-dock_repository|default('logstash')}} +image_tag: {{ 5.6-alpine }} +resources: + requests: + cpu: {{telemetry-logstash-dock_cpu_req|default('100m')}} + memory: {{telemetry-logstash-dock_mem_req|default('100Mi')}} + limits: + cpu: {{telemetry-logstash-dock_cpu_limit|default('1')}} + memory: {{telemetry-logstash-dock_mem_limit|default('1024Mi')}} +network: + port: 5044 + targetport: 5044 +strategy: + type: RollingUpdate + maxsurge: {{ telemetry-logstash-dock_maxsurge|default(1) }} + maxunavailable: {{ telemetry-logstash-dock_maxunavailable|default }} + +{{ telemetry-logstash-dock_liveness_readiness | to_nice_yaml }} From 52386f0c97751d514298b1d1fc6faf4c78302f2e Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 20 Apr 2020 19:59:38 +0530 Subject: [PATCH 084/298] Issue #00 fix: adding telemetry logstash service --- .../core/telemetry-logstash-dock/values.j2 | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 b/kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 index 036705d6f0..8196f25af5 100644 --- a/kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 +++ b/kubernetes/helm_charts/core/telemetry-logstash-dock/values.j2 @@ -4,22 +4,20 @@ namespace: {{ namespace }} imagepullsecrets: {{ imagepullsecrets }} dockerhub: sunbird -replicaCount: {{telemetry-logstash-dock_replicacount|default(1)}} -repository: {{telemetry-logstash-dock_repository|default('logstash')}} -image_tag: {{ 5.6-alpine }} +replicaCount: 1 +repository: 'logstash' +image_tag: 5.6-alpine resources: requests: - cpu: {{telemetry-logstash-dock_cpu_req|default('100m')}} - memory: {{telemetry-logstash-dock_mem_req|default('100Mi')}} + cpu: '100m' + memory: '100Mi' limits: - cpu: {{telemetry-logstash-dock_cpu_limit|default('1')}} - memory: {{telemetry-logstash-dock_mem_limit|default('1024Mi')}} + cpu: 1 + memory: '1024Mi' network: port: 5044 targetport: 5044 strategy: type: RollingUpdate - maxsurge: {{ telemetry-logstash-dock_maxsurge|default(1) }} - maxunavailable: {{ telemetry-logstash-dock_maxunavailable|default }} - -{{ telemetry-logstash-dock_liveness_readiness | to_nice_yaml }} + maxsurge: 1 + maxunavailable: 1 From b76c20869ea312dc8805809ddd1618003a590335 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 20 Apr 2020 20:07:54 +0530 Subject: [PATCH 085/298] Issue #00 fix: updating chart name --- kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml b/kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml index dbf9d485c1..3760b5476d 100644 --- a/kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml +++ b/kubernetes/helm_charts/core/telemetry-logstash-dock/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v1 appVersion: "1.0" description: A Helm chart for Kubernetes -name: content +name: telemetry-logstash-dock version: 0.1.0 From 4c992db9792aa8f6a487022f9611f407fee33bfd Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 20 Apr 2020 20:12:45 +0530 Subject: [PATCH 086/298] Issue #000 fix: renaming chart name to release name --- .../templates/deployment.yaml | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml b/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml index ae91acc5fb..cedc0aa4be 100644 --- a/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml @@ -2,7 +2,7 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: {{ .Chart.Name }} + name: {{ .Release.Name }} namespace: {{ .Values.namespace }} annotations: reloader.stakater.com/auto: "true" @@ -14,27 +14,27 @@ spec: maxUnavailable: {{ default (sub .Values.replicaCount 1) .Values.strategy.maxunavailable }} selector: matchLabels: - app: {{ .Chart.Name }} + app: {{ .Release.Name }} template: metadata: labels: - app: {{ .Chart.Name }} + app: {{ .Release.Name }} spec: {{- if .Values.imagepullsecrets }} imagePullSecrets: - name: {{ .Values.imagepullsecrets }} {{- end }} volumes: - - name: {{ .Chart.Name }}-config + - name: {{ .Release.Name }}-config configMap: - name: {{ .Chart.Name }}-config + name: {{ .Release.Name }}-config containers: - - name: {{ .Chart.Name }} + - name: {{ .Release.Name }} image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" imagePullPolicy: Always envFrom: - configMapRef: - name: {{ .Chart.Name }}-config + name: {{ .Release.Name }}-config resources: {{ toYaml .Values.resources | indent 10 }} ports: @@ -46,21 +46,21 @@ spec: {{ toYaml .Values.readinessProbe | indent 10 }} {{- end }} volumeMounts: - - name: {{ .Chart.Name }}-config + - name: {{ .Release.Name }}-config mountPath: /etc/telemetry-logstash.conf --- apiVersion: v1 kind: Service metadata: - name: {{ .Chart.Name }}-service + name: {{ .Release.Name }}-service namespace: {{ .Values.namespace }} labels: - app: {{ .Chart.Name }} + app: {{ .Release.Name }} spec: ports: - - name: http-{{ .Chart.Name }} + - name: http-{{ .Release.Name }} protocol: TCP port: {{ .Values.network.targetport }} selector: - app: {{ .Chart.Name }} + app: {{ .Release.Name }} From 9ccf05b172bc58c4eee6a68210fb0bd5a19d94ad Mon Sep 17 00:00:00 2001 From: Raghupathi Date: Tue, 21 Apr 2020 14:58:50 +0530 Subject: [PATCH 087/298] issue #001 fix: alert rules for cpu (#1409) --- .../monitoring/alertrules/templates/promrulesNode.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesNode.yml b/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesNode.yml index d5fdeb67d5..f743a8ea8e 100644 --- a/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesNode.yml +++ b/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesNode.yml @@ -13,7 +13,7 @@ spec: - name: alertrules.nodes rules: - alert: high_cpu_usage_on_node_warning - expr: (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode="idle"}[5m])) * 100) >= {{ .Values.node_cpu_usage_percentage_threshold_Warning }} and (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode="idle"}[5m])) * 100) < {{ .Values.node_cpu_usage_percentage_threshold_Critical }} + expr: (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode!="idle"}[5m])) * 100) >= {{ .Values.node_cpu_usage_percentage_threshold_Warning }} and (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode!="idle"}[5m])) * 100) < {{ .Values.node_cpu_usage_percentage_threshold_Critical }} for: 1m labels: severity: warning @@ -21,7 +21,7 @@ spec: message: {{`'{{ $labels.instance }} is using a LOT of CPU. CPU usage is {{ humanize $value}}%.'`}} summary: {{`'HIGH CPU USAGE warning ON {{ $labels.instance }}'`}} - alert: high_cpu_usage_on_node_critical - expr: (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode="idle"}[5m])) * 100) >= {{ .Values.node_cpu_usage_percentage_threshold_Critical }} and (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode="idle"}[5m])) * 100) < {{ .Values.node_cpu_usage_percentage_threshold_Fatal }} + expr: (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode!="idle"}[5m])) * 100) >= {{ .Values.node_cpu_usage_percentage_threshold_Critical }} and (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode!="idle"}[5m])) * 100) < {{ .Values.node_cpu_usage_percentage_threshold_Fatal }} for: 1m labels: severity: critical @@ -29,7 +29,7 @@ spec: message: {{`'{{ $labels.instance }} is using a LOT of CPU. CPU usage is {{ humanize $value}}%.'`}} summary: {{`'HIGH CPU USAGE warning ON {{ $labels.instance }}'`}} - alert: high_cpu_usage_on_node_fatal - expr: (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode="idle"}[5m])) * 100) >= {{ .Values.node_cpu_usage_percentage_threshold_Fatal }} + expr: (avg by (instance) (irate(node_cpu_seconds_total{job="vm-node-exporter",mode!="idle"}[5m])) * 100) >= {{ .Values.node_cpu_usage_percentage_threshold_Fatal }} for: 1m labels: severity: fatal From 0009b253c018b87a975342fb1c303121c9effb3e Mon Sep 17 00:00:00 2001 From: keshavprasadms Date: Thu, 23 Apr 2020 22:52:43 +0530 Subject: [PATCH 088/298] fix: option to run kibana in kubernetes --- ansible/roles/stack-proxy/defaults/main.yml | 1 + kubernetes/ansible/roles/helm-deploy/defaults/main.yml | 1 + kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-proxy/defaults/main.yml b/ansible/roles/stack-proxy/defaults/main.yml index 1eba36933b..6d1b90f6ea 100644 --- a/ansible/roles/stack-proxy/defaults/main.yml +++ b/ansible/roles/stack-proxy/defaults/main.yml @@ -35,6 +35,7 @@ prometheus_route_prefix: prometheus prometheus_alertmanager_route_prefix: alertmanager ekstep_s3_env: "{{sunbird_env}}" registry_url: "{{proto}}://{{proxy_server_name}}/registry" +kibana_service: "{{swarm_dashboard}}:5601" upstream_url: "ekstep-public-{{ekstep_s3_env}}.s3-ap-south-1.amazonaws.com" plugin_upstream_url: "ekstep-public-{{ekstep_s3_env}}.s3-ap-south-1.amazonaws.com" diff --git a/kubernetes/ansible/roles/helm-deploy/defaults/main.yml b/kubernetes/ansible/roles/helm-deploy/defaults/main.yml index 9b30547c78..feeb2899f7 100644 --- a/kubernetes/ansible/roles/helm-deploy/defaults/main.yml +++ b/kubernetes/ansible/roles/helm-deploy/defaults/main.yml @@ -31,6 +31,7 @@ ekstep_s3_env: "{{sunbird_env}}" registry_url: "{{proto}}://{{proxy_server_name}}/registry" ep_es_host: proxy_custom_config: +kibana_service: "{{swarm_dashboard}}:5601" upstream_url: "ekstep-public-{{ekstep_s3_env}}.s3-ap-south-1.amazonaws.com" plugin_upstream_url: "ekstep-public-{{ekstep_s3_env}}.s3-ap-south-1.amazonaws.com" diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index adbb14ea38..921b5cf4d3 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -201,7 +201,7 @@ proxyconfig: | error_page 401 = /oauth2/sign_in; # Setting target url - auth_request_set $target http://{{swarm_dashboard}}:5601; + auth_request_set $target http://{{ kibana_service }}; # pass information via X-User and X-Email headers to backend, # requires running with --set-xauthrequest flag auth_request_set $user $upstream_http_x_auth_request_user; From 9a464b6c077a200c64e61663ae60c58b87559ed0 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Mon, 4 May 2020 20:11:23 +0530 Subject: [PATCH 089/298] Issue #DP-000 feat: configuration api onboarding --- ansible/roles/kong-api/defaults/main.yml | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 2404a9362f..232f576110 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4257,3 +4257,37 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programConfigurationSearch + request_path: "{{ program_service_prefix }}/v1/configuration/search" + upstream_url: "{{ program_service_url }}/program/v1/configuration/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programConfigurationList + request_path: "{{ program_service_prefix }}/v1/configuration/list" + upstream_url: "{{ program_service_url }}/program/v1/configuration/list" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From ce1a65796c609eb3c1405472ebd0768642f71c39 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj <38975782+venkateshwarans@users.noreply.github.com> Date: Mon, 4 May 2020 20:33:24 +0530 Subject: [PATCH 090/298] Issue #DP-000 feat: configuration api onboarding (#1451) --- ansible/roles/kong-api/defaults/main.yml | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 2404a9362f..232f576110 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4257,3 +4257,37 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programConfigurationSearch + request_path: "{{ program_service_prefix }}/v1/configuration/search" + upstream_url: "{{ program_service_url }}/program/v1/configuration/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programConfigurationList + request_path: "{{ program_service_prefix }}/v1/configuration/list" + upstream_url: "{{ program_service_url }}/program/v1/configuration/list" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From 8c6933e7c635b6831b5fadace7d481b277246a43 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 5 May 2020 20:07:23 +0530 Subject: [PATCH 091/298] Issue #00 fix: changing es group name for clustering --- ansible/esupgradelatest.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ansible/esupgradelatest.yml b/ansible/esupgradelatest.yml index ab354efcb8..6b2f1d14d3 100644 --- a/ansible/esupgradelatest.yml +++ b/ansible/esupgradelatest.yml @@ -1,4 +1,4 @@ -- hosts: log-es-2 +- hosts: loges become: yes vars_files: - ['{{inventory_dir}}/secrets.yml'] @@ -11,13 +11,13 @@ - { role: log-es6, es_config: { cluster.name: "{{ node_name }}", - discovery.zen.ping.unicast.hosts: "{{ groups['log-es-2'] }}", + discovery.zen.ping.unicast.hosts: "{{ groups['loges'] }}", http.port: 9200, transport.tcp.port: 9300, node.data: "{{ es_etc_node_data | default('true') }}", node.master: "{{ es_etc_node_master | default('true') }}", bootstrap.memory_lock: true, }, - es_etc_discovery_zen_ping_unicast_hosts: "{{ groups['log-es-2'] }}", + es_etc_discovery_zen_ping_unicast_hosts: "{{ groups['loges'] }}", es_etc_cluster_name: "{{ node_name }}" } From ef0f8a45dc9e00c2cf0ae61e922fa6274b4a2382 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 5 May 2020 21:05:58 +0530 Subject: [PATCH 092/298] Issue #00 fix: create es config path --- ansible/esupgradelatest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/esupgradelatest.yml b/ansible/esupgradelatest.yml index 6b2f1d14d3..f4c2e15c09 100644 --- a/ansible/esupgradelatest.yml +++ b/ansible/esupgradelatest.yml @@ -5,7 +5,7 @@ tasks: - name: Registering node name set_fact: - es_instance_name: "{% for servername in play_hosts %}{% if inventory_hostname==servername %}es-{{ loop.index }}{% endif %}{% endfor %}" + es_instance_name: "{% for servername in play_hosts %}{% if inventory_hostname==servername %}loges-{{ loop.index }}{% endif %}{% endfor %}" roles: - openjdk - { role: log-es6, From 81a327e81adbc3ba50046cd707b8c5bf670c7360 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 11 May 2020 13:15:58 +0530 Subject: [PATCH 093/298] Issue #00 fix: adding new opensaber variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 10fc7d737b..214dddc02d 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -11,3 +11,4 @@ sunbird_program_db_dialect=postgres dock_base_url={{ dock_base_url }} dock_channel={{ dock_channel }} learning_service_url={{ sunbird_content_repo_api_base_url }} +opensaber_service_url={{ sunbird_opensaber_service_url}} From 201d083d48edeaeaad78343928f4aaeaedb2befb Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 11 May 2020 18:24:12 +0530 Subject: [PATCH 094/298] Issue #00 fix: adding new programs variables --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 214dddc02d..b795aaaeba 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -12,3 +12,5 @@ dock_base_url={{ dock_base_url }} dock_channel={{ dock_channel }} learning_service_url={{ sunbird_content_repo_api_base_url }} opensaber_service_url={{ sunbird_opensaber_service_url}} +telemetry_service_endpoint='v1/telemetry' +telemetry_service_host="http://telemetry-service:9001" From d1b00b6c5f4cd4fbaa0cd5409b3f0dcda03406e2 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 12 May 2020 13:37:54 +0530 Subject: [PATCH 095/298] Issue #00 fix: adding new programs variables --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index b795aaaeba..6b3e7d66ff 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -14,3 +14,4 @@ learning_service_url={{ sunbird_content_repo_api_base_url }} opensaber_service_url={{ sunbird_opensaber_service_url}} telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" +dock_api_call_log_status={{ dock_api_call_log_status }} From 555d85ee68f13fbd9d3a63273fc876dde1da0fa0 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 12 May 2020 17:02:21 +0530 Subject: [PATCH 096/298] Issue #00 fix: adding new portal variables --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 1 + ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 2a3fb7bc7b..55fd35cc80 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -88,3 +88,4 @@ sunbird_kp_assessment_service_base_url={{ sunbird_kp_assessment_service_base_url dock_api_auth_token={{ dock_api_auth_token }} sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} +dock_api_call_log_status={{ dock_api_call_log_status }} diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 6b3e7d66ff..b795aaaeba 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -14,4 +14,3 @@ learning_service_url={{ sunbird_content_repo_api_base_url }} opensaber_service_url={{ sunbird_opensaber_service_url}} telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" -dock_api_call_log_status={{ dock_api_call_log_status }} From 922be9070c1308eab7ec02020c36293b127256f3 Mon Sep 17 00:00:00 2001 From: Raghupathi Date: Mon, 18 May 2020 12:47:07 +0530 Subject: [PATCH 097/298] fix: number of secor process in dock env (#1487) --- .../monitoring/alertrules/templates/promrulesProcess.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesProcess.yml b/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesProcess.yml index 042850b044..e15fc3edb4 100644 --- a/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesProcess.yml +++ b/kubernetes/helm_charts/monitoring/alertrules/templates/promrulesProcess.yml @@ -53,7 +53,7 @@ spec: message: {{`'Number of running processes are: {{$value}}'`}} summary: More than one process running - alert: secor_process_not_running_critical - expr: namedprocess_namegroup_states{groupname="secor",state="Sleeping"} != 13 + expr: namedprocess_namegroup_states{groupname="secor",state="Sleeping"} != 5 for: 1m labels: severity: critical From 02dd40c4d1e48bce3ac639f5e15bc8eaf58d2a32 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 20 May 2020 13:28:46 +0530 Subject: [PATCH 098/298] Issue #00 fix: adding new variable for opensaber --- ansible/roles/stack-sunbird/templates/sunbird_opensaber.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index cee8804bf4..26edf9747f 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -3,3 +3,4 @@ database_provider=SQLG connectionInfo_uri=jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb connectionInfo_username={{ opensaber_postgres_username }} connectionInfo_password={{ opensaber_postgres_password }} +search_limit=10000 From f66fa4b9605131f38de53eb43fda6b78e6792c54 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 20 May 2020 14:41:14 +0530 Subject: [PATCH 099/298] Issue #00 fix: adding new variable for opensaber --- ansible/roles/stack-sunbird/templates/sunbird_opensaber.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index 26edf9747f..68449b1616 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -3,4 +3,4 @@ database_provider=SQLG connectionInfo_uri=jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb connectionInfo_username={{ opensaber_postgres_username }} connectionInfo_password={{ opensaber_postgres_password }} -search_limit=10000 +search_limit={{ opensaber_search_limit }} From 0fa10f93621941708b5c9858749aaa2f39c795f2 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 20 May 2020 17:02:58 +0530 Subject: [PATCH 100/298] Issue #00 fix: adding new variable for opensaber --- ansible/roles/stack-sunbird/templates/sunbird_opensaber.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env index 68449b1616..3f4d4c7115 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_opensaber.env @@ -4,3 +4,4 @@ connectionInfo_uri=jdbc:postgresql://{{ opensaber_postgres_host }}/opensaberdb connectionInfo_username={{ opensaber_postgres_username }} connectionInfo_password={{ opensaber_postgres_password }} search_limit={{ opensaber_search_limit }} +database_maxPoolSize={{ opensaber_db_pool_size }} From 4e5fc63ea94b97047557d9a2cb9c619c03f3fb13 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Thu, 21 May 2020 13:32:29 +0530 Subject: [PATCH 101/298] Issue #DP-000 feat: download stats api onboarding --- ansible/roles/kong-api/defaults/main.yml | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 232f576110..648d6574d8 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4291,3 +4291,37 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: downloadProgramNominationList + request_path: "{{ program_service_prefix }}/v1/nomination/list/download" + upstream_url: "{{ program_service_url }}/program/v1/nomination/list/download" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: downloadProgramList + request_path: "{{ program_service_prefix }}/v1/list/download" + upstream_url: "{{ program_service_url }}/program/v1/list/download" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From 3426f842c26c2b89c2b687fb45a7d2d3852eb6b2 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj <38975782+venkateshwarans@users.noreply.github.com> Date: Thu, 21 May 2020 13:43:59 +0530 Subject: [PATCH 102/298] Issue #DP-000 feat: download stats api onboarding (#1499) * Issue #DP-000 feat: configuration api onboarding --- ansible/roles/kong-api/defaults/main.yml | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 232f576110..648d6574d8 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4291,3 +4291,37 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: downloadProgramNominationList + request_path: "{{ program_service_prefix }}/v1/nomination/list/download" + upstream_url: "{{ program_service_url }}/program/v1/nomination/list/download" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: downloadProgramList + request_path: "{{ program_service_prefix }}/v1/list/download" + upstream_url: "{{ program_service_url }}/program/v1/list/download" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From 3a670c613ef3f2b5c1ac6ce653d9493551b9b5d2 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 22 May 2020 13:14:15 +0530 Subject: [PATCH 103/298] Issue #00 fix: adding new variable for portal --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 55fd35cc80..6a237c5cb1 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -89,3 +89,4 @@ dock_api_auth_token={{ dock_api_auth_token }} sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} dock_api_call_log_status={{ dock_api_call_log_status }} +sunbird_portal_url={{ sunbird_portal_url }} From 589bac12c3130bbdd590c9e5418eea4c0a03603f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 1 Jun 2020 17:59:06 +0530 Subject: [PATCH 104/298] Issue #00 fix: updating content upload size from 50mb to 2gb --- .../templates/content-service_application.conf | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index ef2fed93e7..d6af3313e1 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -314,8 +314,8 @@ play.filters { } } -play.http.parser.maxMemoryBuffer = 50MB -akka.http.parsing.max-content-length = 50MB +play.http.parser.maxMemoryBuffer = 2GB +akka.http.parsing.max-content-length = 2GB schema.base_path="{{ schema_base_path }}" # Cassandra Configuration @@ -358,8 +358,8 @@ redis { } -#--Maximum Content Package File Size Limit in Bytes (50 MB) -MAX_CONTENT_PACKAGE_FILE_SIZE_LIMIT=52428800 +#--Maximum Content Package File Size Limit in Bytes (2GGB) +MAX_CONTENT_PACKAGE_FILE_SIZE_LIMIT=2000000000 #--Maximum Asset File Size Limit in Bytes (20 MB) MAX_ASSET_FILE_SIZE_LIMIT=20971520 From a777b6dec0415321a82e10ebb452d5f6cded62a4 Mon Sep 17 00:00:00 2001 From: Harsha Date: Tue, 2 Jun 2020 14:32:59 +0530 Subject: [PATCH 105/298] Issue #00 fix: helm chart for mvc service (#1539) --- ansible/roles/stack-sunbird/defaults/main.yml | 3 + .../templates/mvc-service_application.conf | 305 ++++++++++++++++++ .../templates/mvc-service_logback.xml | 62 ++++ kubernetes/helm_charts/core/mvc/Chart.yaml | 5 + .../core/mvc/templates/deployment.yaml | 73 +++++ kubernetes/helm_charts/core/mvc/values.j2 | 25 ++ 6 files changed, 473 insertions(+) create mode 100644 ansible/roles/stack-sunbird/templates/mvc-service_application.conf create mode 100644 ansible/roles/stack-sunbird/templates/mvc-service_logback.xml create mode 100644 kubernetes/helm_charts/core/mvc/Chart.yaml create mode 100644 kubernetes/helm_charts/core/mvc/templates/deployment.yaml create mode 100644 kubernetes/helm_charts/core/mvc/values.j2 diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 5f4d156aa4..ccf55f9246 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -240,6 +240,9 @@ service_env: opensaber: ../../../../ansible/roles/stack-sunbird/templates/sunbird_opensaber.env program: ../../../../ansible/roles/stack-sunbird/templates/sunbird_program.env telemetry-logstash-dock: ../../../../ansible/roles/stack-sunbird/templates/telemetry-logstash-dock.conf + mvc: + - ../../../../ansible/roles/stack-sunbird/templates/mvc-service_application.conf + - ../../../../ansible/roles/stack-sunbird/templates/mvc-service_logback.xml sunbird_portal_player_cdn_enabled: false diff --git a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf new file mode 100644 index 0000000000..2f750c957f --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf @@ -0,0 +1,305 @@ +# This is the main configuration file for the application. +# https://www.playframework.com/documentation/latest/ConfigFile +# ~~~~~ +# Play uses HOCON as its configuration file format. HOCON has a number +# of advantages over other config formats, but there are two things that +# can be used when modifying settings. +# +# You can include other configuration files in this main application.conf file: +#include "extra-config.conf" +# +# You can declare variables and substitute for them: +#mykey = ${some.value} +# +# And if an environment variable exists when there is no other substitution, then +# HOCON will fall back to substituting environment variable: +#mykey = ${JAVA_HOME} + +## Akka +# https://www.playframework.com/documentation/latest/ScalaAkka#Configuration +# https://www.playframework.com/documentation/latest/JavaAkka#Configuration +# ~~~~~ +# Play uses Akka internally and exposes Akka Streams and actors in Websockets and +# other streaming HTTP responses. +akka { + # "akka.log-config-on-start" is extraordinarly useful because it log the complete + # configuration at INFO level, including defaults and overrides, so it s worth + # putting at the very top. + # + # Put the following in your conf/logback.xml file: + # + # + # + # And then uncomment this line to debug the configuration. + # + #log-config-on-start = true +} + +## Secret key +# http://www.playframework.com/documentation/latest/ApplicationSecret +# ~~~~~ +# The secret key is used to sign Play's session cookie. +# This must be changed for production, but we don't recommend you change it in this file. +play.http.secret.key = a-long-secret-to-calm-the-rage-of-the-entropy-gods + +## Modules +# https://www.playframework.com/documentation/latest/Modules +# ~~~~~ +# Control which modules are loaded when Play starts. Note that modules are +# the replacement for "GlobalSettings", which are deprecated in 2.5.x. +# Please see https://www.playframework.com/documentation/latest/GlobalSettings +# for more information. +# +# You can also extend Play functionality by using one of the publically available +# Play modules: https://playframework.com/documentation/latest/ModuleDirectory +play.modules { + # By default, Play will load any class called Module that is defined + # in the root package (the "app" directory), or you can define them + # explicitly below. + # If there are any built-in modules that you want to enable, you can list them here. + #enabled += my.application.Module + + # If there are any built-in modules that you want to disable, you can list them here. + #disabled += "" + enabled += modules.SearchModule +} + +## IDE +# https://www.playframework.com/documentation/latest/IDE +# ~~~~~ +# Depending on your IDE, you can add a hyperlink for errors that will jump you +# directly to the code location in the IDE in dev mode. The following line makes +# use of the IntelliJ IDEA REST interface: +#play.editor="http://localhost:63342/api/file/?file=%s&line=%s" + +## Internationalisation +# https://www.playframework.com/documentation/latest/JavaI18N +# https://www.playframework.com/documentation/latest/ScalaI18N +# ~~~~~ +# Play comes with its own i18n settings, which allow the user's preferred language +# to map through to internal messages, or allow the language to be stored in a cookie. +play.i18n { + # The application languages + langs = [ "en" ] + + # Whether the language cookie should be secure or not + #langCookieSecure = true + + # Whether the HTTP only attribute of the cookie should be set to true + #langCookieHttpOnly = true +} + +## Play HTTP settings +# ~~~~~ +play.http { + ## Router + # https://www.playframework.com/documentation/latest/JavaRouting + # https://www.playframework.com/documentation/latest/ScalaRouting + # ~~~~~ + # Define the Router object to use for this application. + # This router will be looked up first when the application is starting up, + # so make sure this is the entry point. + # Furthermore, it's assumed your route file is named properly. + # So for an application router like `my.application.Router`, + # you may need to define a router file `conf/my.application.routes`. + # Default to Routes in the root package (aka "apps" folder) (and conf/routes) + #router = my.application.Router + + ## Action Creator + # https://www.playframework.com/documentation/latest/JavaActionCreator + # ~~~~~ + #actionCreator = null + + ## ErrorHandler + # https://www.playframework.com/documentation/latest/JavaRouting + # https://www.playframework.com/documentation/latest/ScalaRouting + # ~~~~~ + # If null, will attempt to load a class called ErrorHandler in the root package, + #errorHandler = null + + ## Session & Flash + # https://www.playframework.com/documentation/latest/JavaSessionFlash + # https://www.playframework.com/documentation/latest/ScalaSessionFlash + # ~~~~~ + session { + # Sets the cookie to be sent only over HTTPS. + #secure = true + + # Sets the cookie to be accessed only by the server. + #httpOnly = true + + # Sets the max-age field of the cookie to 5 minutes. + # NOTE: this only sets when the browser will discard the cookie. Play will consider any + # cookie value with a valid signature to be a valid session forever. To implement a server side session timeout, + # you need to put a timestamp in the session and check it at regular intervals to possibly expire it. + #maxAge = 300 + + # Sets the domain on the session cookie. + #domain = "example.com" + } + + flash { + # Sets the cookie to be sent only over HTTPS. + #secure = true + + # Sets the cookie to be accessed only by the server. + #httpOnly = true + } +} + +play.http.parser.maxDiskBuffer = 10MB +parsers.anyContent.maxLength = 10MB + +play.server.provider = play.core.server.NettyServerProvider + +## Netty Provider +# https://www.playframework.com/documentation/latest/SettingsNetty +# ~~~~~ +play.server.netty { + # Whether the Netty wire should be logged + log.wire = true + + # If you run Play on Linux, you can use Netty's native socket transport + # for higher performance with less garbage. + transport = "native" +} + +## WS (HTTP Client) +# https://www.playframework.com/documentation/latest/ScalaWS#Configuring-WS +# ~~~~~ +# The HTTP client primarily used for REST APIs. The default client can be +# configured directly, but you can also create different client instances +# with customized settings. You must enable this by adding to build.sbt: +# +# libraryDependencies += ws // or javaWs if using java +# +play.ws { + # Sets HTTP requests not to follow 302 requests + #followRedirects = false + + # Sets the maximum number of open HTTP connections for the client. + #ahc.maxConnectionsTotal = 50 + + ## WS SSL + # https://www.playframework.com/documentation/latest/WsSSL + # ~~~~~ + ssl { + # Configuring HTTPS with Play WS does not require programming. You can + # set up both trustManager and keyManager for mutual authentication, and + # turn on JSSE debugging in development with a reload. + #debug.handshake = true + #trustManager = { + # stores = [ + # { type = "JKS", path = "exampletrust.jks" } + # ] + #} + } +} + +## Cache +# https://www.playframework.com/documentation/latest/JavaCache +# https://www.playframework.com/documentation/latest/ScalaCache +# ~~~~~ +# Play comes with an integrated cache API that can reduce the operational +# overhead of repeated requests. You must enable this by adding to build.sbt: +# +# libraryDependencies += cache +# +play.cache { + # If you want to bind several caches, you can bind the individually + #bindCaches = ["db-cache", "user-cache", "session-cache"] +} + +## Filter Configuration +# https://www.playframework.com/documentation/latest/Filters +# ~~~~~ +# There are a number of built-in filters that can be enabled and configured +# to give Play greater security. +# +play.filters { + + # Enabled filters are run automatically against Play. + # CSRFFilter, AllowedHostFilters, and SecurityHeadersFilters are enabled by default. + enabled = [filters.AccessLogFilter] + + # Disabled filters remove elements from the enabled list. + # disabled += filters.CSRFFilter + + + ## CORS filter configuration + # https://www.playframework.com/documentation/latest/CorsFilter + # ~~~~~ + # CORS is a protocol that allows web applications to make requests from the browser + # across different domains. + # NOTE: You MUST apply the CORS configuration before the CSRF filter, as CSRF has + # dependencies on CORS settings. + cors { + # Filter paths by a whitelist of path prefixes + #pathPrefixes = ["/some/path", ...] + + # The allowed origins. If null, all origins are allowed. + #allowedOrigins = ["http://www.example.com"] + + # The allowed HTTP methods. If null, all methods are allowed + #allowedHttpMethods = ["GET", "POST"] + } + + ## Security headers filter configuration + # https://www.playframework.com/documentation/latest/SecurityHeaders + # ~~~~~ + # Defines security headers that prevent XSS attacks. + # If enabled, then all options are set to the below configuration by default: + headers { + # The X-Frame-Options header. If null, the header is not set. + #frameOptions = "DENY" + + # The X-XSS-Protection header. If null, the header is not set. + #xssProtection = "1; mode=block" + + # The X-Content-Type-Options header. If null, the header is not set. + #contentTypeOptions = "nosniff" + + # The X-Permitted-Cross-Domain-Policies header. If null, the header is not set. + #permittedCrossDomainPolicies = "master-only" + + # The Content-Security-Policy header. If null, the header is not set. + #contentSecurityPolicy = "default-src 'self'" + } + + ## Allowed hosts filter configuration + # https://www.playframework.com/documentation/latest/AllowedHostsFilter + # ~~~~~ + # Play provides a filter that lets you configure which hosts can access your application. + # This is useful to prevent cache poisoning attacks. + hosts { + # Allow requests to example.com, its subdomains, and localhost:9000. + #allowed = [".example.com", "localhost:9000"] + } +} + +play.http.parser.maxMemoryBuffer = 50MB +akka.http.parsing.max-content-length = 50MB + +schema.base_path = "/home/sunbird/mvc-service-1.0-SNAPSHOT/schemas/" + + +telemetry_env="{{ sunbird_instance }}" +installation.id="{{sunbird_installation}}" + +# ElasticSearch Configuration +ekstepPlatformApiUserId="mvc-service" +search.es_conn_info="{{ mvc_index_host }}" +search.fields.query=["name^100","title^100","lemma^100","code^100","domain","subject","description^10","keywords^100","ageGroup^10","filter^10","theme^10","genre^10","objects^25","contentType^100","language^200","teachingMode^25","skills^10","learningObjective^10","curriculum^100","gradeLevel^100","developer^100","attributions^10","identifier^100","IL_UNIQUE_ID^100","owner^50","board^100","relatedBoards^100","creator^100", "dialcodes^100","text","words","releaseNotes"] +search.fields.date=["lastUpdatedOn","createdOn","versionDate","lastSubmittedOn","lastPublishedOn"] +search.fields.mode_collection=["identifier","name","objectType","contentType","mimeType","size","childNodes","board","subject","medium","gradeLevel","appIcon","resourceType","origin","originData"] +search.batch.size=500 +search.connection.timeout=30 + +language.map={"Hindi":"hi", "English":"en", "Telugu":"te", "Kannada":"ka", "Tamil":"ta", "Assamese":"as", "Bengali":"bn", "Bodo":"bo", "Gujarati":"gu", "Konkani":"ko", "Malayalam":"ml", "Marathi":"mr", "Nepali":"ne", "Odia":"or", "Punjabi":"pj", "Sanskrit":"san"} + +# Configuration for default channel ID +channel.default="in.ekstep" +compositesearch.index.name="{{ mvc_index_name }}" + +content.tagging.backward_enable=true +content.tagging.property=["subject","medium"] diff --git a/ansible/roles/stack-sunbird/templates/mvc-service_logback.xml b/ansible/roles/stack-sunbird/templates/mvc-service_logback.xml new file mode 100644 index 0000000000..409f73b13b --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/mvc-service_logback.xml @@ -0,0 +1,62 @@ + + + + + + + + + + %d %msg%n + + + + + + + + + + + + + + + + + + + + %msg + + + {{env_name}}.telemetry.raw + + + + + + 0 + + + + + + bootstrap.servers={{lp_kafka_url}} + + buffer.memory=8388608 + + + metadata.fetch.timeout.ms=99999999999 + + client.id=${HOSTNAME}-${CONTEXT_NAME}-logback-restrictive + + + + + + + + + + diff --git a/kubernetes/helm_charts/core/mvc/Chart.yaml b/kubernetes/helm_charts/core/mvc/Chart.yaml new file mode 100644 index 0000000000..6f13819eda --- /dev/null +++ b/kubernetes/helm_charts/core/mvc/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +appVersion: "1.0" +description: A Helm chart for Kubernetes +name: mvc +version: 0.1.0 diff --git a/kubernetes/helm_charts/core/mvc/templates/deployment.yaml b/kubernetes/helm_charts/core/mvc/templates/deployment.yaml new file mode 100644 index 0000000000..625b0ef12b --- /dev/null +++ b/kubernetes/helm_charts/core/mvc/templates/deployment.yaml @@ -0,0 +1,73 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Chart.Name }} + namespace: {{ .Values.namespace }} + annotations: + reloader.stakater.com/auto: "true" +spec: + replicas: {{ .Values.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.strategy.maxsurge }} + maxUnavailable: {{ .Values.strategy.maxunavailable }} + selector: + matchLabels: + app: {{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Chart.Name }} + spec: +{{- if .Values.imagepullsecrets }} + imagePullSecrets: + - name: {{ .Values.imagepullsecrets }} +{{- end }} + volumes: + - name: {{ .Chart.Name }}-config + configMap: + name: {{ .Chart.Name }}-config + - name: {{ .Chart.Name }}-xml-config + configMap: + name: {{ .Chart.Name }}-xml-config + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" + imagePullPolicy: Always + envFrom: + - configMapRef: + name: {{ .Chart.Name }}-config + resources: +{{ toYaml .Values.resources | indent 10 }} + ports: + - containerPort: {{ .Values.network.port }} + {{- if .Values.healthcheck }} + livenessProbe: +{{ toYaml .Values.livenessProbe | indent 10 }} + readinessProbe: +{{ toYaml .Values.readinessProbe | indent 10 }} + {{- end }} + volumeMounts: + - name: {{ .Chart.Name }}-config + mountPath: /home/sunbird/mvc-service-1.0-SNAPSHOT/config/application.conf + subPath: mvc-service_application.conf + - name: {{ .Chart.Name }}-xml-config + mountPath: /home/sunbird/mvc-service-1.0-SNAPSHOT/config/logback.xml + subPath: mvc-service_logback.xml + +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ .Chart.Name }}-service + namespace: {{ .Values.namespace }} + labels: + app: {{ .Chart.Name }} +spec: + ports: + - name: http-{{ .Chart.Name }} + protocol: TCP + port: {{ .Values.network.targetport }} + selector: + app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/mvc/values.j2 b/kubernetes/helm_charts/core/mvc/values.j2 new file mode 100644 index 0000000000..4d49b7acb3 --- /dev/null +++ b/kubernetes/helm_charts/core/mvc/values.j2 @@ -0,0 +1,25 @@ +### Default variable file for mvc-service ### + +namespace: {{ namespace }} +imagepullsecrets: {{ imagepullsecrets }} +dockerhub: {{ dockerhub }} + +replicaCount: {{mvc_replicacount|default(1)}} +repository: {{mvc_repository|default('mvc-service')}} +image_tag: {{ image_tag }} +resources: + requests: + cpu: {{mvc_cpu_req|default('100m')}} + memory: {{mvc_mem_req|default('100Mi')}} + limits: + cpu: {{mvc_cpu_limit|default('1')}} + memory: {{mvc_mem_limit|default('1024Mi')}} +network: + port: 9004 + targetport: 9000 +strategy: + type: RollingUpdate + maxsurge: {{ mvc_maxsurge|default('25%') }} + maxunavailable: {{ mvc_maxunavailable|default('25%') }} + +{{ mvc_liveness_readiness | to_nice_yaml }} From 8c26c4bfceae9398112d59e87a0bfbce7e22ec2c Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 2 Jun 2020 14:43:47 +0530 Subject: [PATCH 106/298] Issue #00 fix: adding new variables for mvc --- ansible/inventory/env/group_vars/all.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/inventory/env/group_vars/all.yml b/ansible/inventory/env/group_vars/all.yml index 3e2bc8b9a0..95c2060f2c 100644 --- a/ansible/inventory/env/group_vars/all.yml +++ b/ansible/inventory/env/group_vars/all.yml @@ -716,3 +716,5 @@ offline_installer_container_name: "" #added this var for adopter usecase # Dock vars schema_base_path: /home/sunbird/content-service-1.0-SNAPSHOT/schemas/ +mvc_index_name: mvc-content +mvc_index_host: "{{ groups['es7']|join(':9200,')}}:9200" From d2b11192180b37752a3e99979403f8477e480ac5 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 2 Jun 2020 15:04:03 +0530 Subject: [PATCH 107/298] Issue #00 fix: adding liveliness probe for mvc --- ansible/roles/stack-sunbird/defaults/main.yml | 18 ++++++++++++++++++ kubernetes/helm_charts/core/mvc/values.j2 | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index ccf55f9246..fe1aa38ebd 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -489,3 +489,21 @@ userorg_liveness_readiness: port: 9000 initialDelaySeconds: 60 periodSeconds: 10 + +mvc_liveness_readiness: + healthcheck: true + readinessProbe: + httpGet: + path: /health + port: 9000 + initialDelaySeconds: 30 + periodSeconds: 10 + timeoutSeconds: 5 + failureThreshold: 5 + successThreshold: 1 + livenessProbe: + httpGet: + path: /health + port: 9000 + initialDelaySeconds: 60 + periodSeconds: 10 diff --git a/kubernetes/helm_charts/core/mvc/values.j2 b/kubernetes/helm_charts/core/mvc/values.j2 index 4d49b7acb3..4205778c02 100644 --- a/kubernetes/helm_charts/core/mvc/values.j2 +++ b/kubernetes/helm_charts/core/mvc/values.j2 @@ -15,7 +15,7 @@ resources: cpu: {{mvc_cpu_limit|default('1')}} memory: {{mvc_mem_limit|default('1024Mi')}} network: - port: 9004 + port: 9005 targetport: 9000 strategy: type: RollingUpdate From 6ef3fb84773b8a910db40493dc87cc25f08ddf82 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 3 Jun 2020 10:01:17 +0530 Subject: [PATCH 108/298] Issue #00 fix: separate jenkinsfile for java11 artifact --- pipelines/upload/docker/Jenkinsfile.java11 | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 pipelines/upload/docker/Jenkinsfile.java11 diff --git a/pipelines/upload/docker/Jenkinsfile.java11 b/pipelines/upload/docker/Jenkinsfile.java11 new file mode 100644 index 0000000000..26b9d39e1e --- /dev/null +++ b/pipelines/upload/docker/Jenkinsfile.java11 @@ -0,0 +1,39 @@ +@Library('deploy-conf') _ +node('slave-java11'){ + try { + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + stage('Artifact Upload') { + values = docker_params() + if(params.artifact_source == "ArtifactRepo") { + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "$currentWs/ansible/docker_image_push.yml" + ansibleExtraArgs = "--extra-vars \"hub_org=${hub_org} image_name=${values.image_name} image_tag=${values.image_tag}\" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + ansible_playbook_run(values) + currentBuild.result = 'SUCCESS' + } + archiveArtifacts 'metadata.json' + currentBuild.description = "Image: ${values.image_tag}, Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + } + + catch (err) { + currentBuild.result = "FAILURE" + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} From 4c327d5d90564cdf27d2e53f1fb46156d6cae839 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 3 Jun 2020 13:53:28 +0530 Subject: [PATCH 109/298] Issue #00 fix: onboarding mvc api --- ansible/roles/kong-api/defaults/main.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 648d6574d8..06a86a1f66 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4325,3 +4325,20 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: mvcSearch + request_path: "{{ mvc_service_prefix }}/v3/search" + upstream_url: "{{ mvc_service_url }}/v3/mvcsearch" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From 9d60283d5b6a05f71a94f3af6fbad3df5fe25282 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 3 Jun 2020 13:59:50 +0530 Subject: [PATCH 110/298] Issue #00 fix: onboarding mvc api --- ansible/roles/kong-api/defaults/main.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 06a86a1f66..92d7113fc3 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -61,6 +61,7 @@ desktop_app_prefix: /desktop license_api_prefix: /license opensaber_service_prefix: /reg program_service_prefix: /program +mvc_service_prefix: /mvc # Service URLs knowledge_mw_service_url: "http://knowledge-mw-service:5000" @@ -77,6 +78,7 @@ cert_registry_service_url: "http://cert-registry-service:9000" content_service_url: "http://content-service:9000" opensaber_service_url: "http://opensaber-service:8080" program_service_url: "http://program-service:6000" +mvc_service_url: "http://mvc-service:9000" premium_consumer_rate_limits: - api: createContent From 1c9e7b17d31b830e0e6ee2b9aba839325bbcaf60 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 3 Jun 2020 16:32:39 +0530 Subject: [PATCH 111/298] Issue #00 fix: adding google private key --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 6a237c5cb1..001a455e51 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -90,3 +90,4 @@ sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} dock_api_call_log_status={{ dock_api_call_log_status }} sunbird_portal_url={{ sunbird_portal_url }} +google_captcha_private_key={{google_captcha_private_key | default("")}} From a8d92d78d41dd7c0b459701db23cb5e30a9c857a Mon Sep 17 00:00:00 2001 From: venkanagouda <51907950+venkanagouda-k@users.noreply.github.com> Date: Wed, 3 Jun 2020 17:43:18 +0530 Subject: [PATCH 112/298] Issue #DP-6 new API - program/v1/contentReport (#1542) * Update main.yml * Update main.yml --- ansible/roles/kong-api/defaults/main.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 92d7113fc3..54db5d3619 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4327,6 +4327,23 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programContentReport + request_path: "{{ program_service_prefix }}/v1/report" + upstream_url: "{{ program_service_url }}/program/v1/report" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: mvcSearch request_path: "{{ mvc_service_prefix }}/v3/search" From adc421221161030e961814d38953e63c38adcc3d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 3 Jun 2020 20:54:21 +0530 Subject: [PATCH 113/298] Issue #00 fix: adding new variable for programs --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index b795aaaeba..0427ee683a 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -14,3 +14,5 @@ learning_service_url={{ sunbird_content_repo_api_base_url }} opensaber_service_url={{ sunbird_opensaber_service_url}} telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" +publish_content_env={{ publish_content_env }} +sunbird_kafka_host={{groups['dev-kafka']|join(':9200,')}}:9200 From b8724019eb1b4ed08cbf25594f92bdfd937958cd Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 3 Jun 2020 20:59:45 +0530 Subject: [PATCH 114/298] Issue #00 fix: adding new variable for programs --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 0427ee683a..fbb31be462 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -15,4 +15,4 @@ opensaber_service_url={{ sunbird_opensaber_service_url}} telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" publish_content_env={{ publish_content_env }} -sunbird_kafka_host={{groups['dev-kafka']|join(':9200,')}}:9200 +sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9200,')}}:9200 From 1ef71354e62173c840f5d3b8678edf68d0605dc9 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 3 Jun 2020 22:05:40 +0530 Subject: [PATCH 115/298] Program content publish API (#1544) * Issue #SB-000 feat: program api added * Issue #SB-000 feat: program new api added * Issue #SB-000 feat: program new api added * Issue #DP-373 fix: program content publish api added --- ansible/roles/kong-api/defaults/main.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 54db5d3619..315a894931 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4361,3 +4361,20 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programPublishContent + request_path: "{{ program_service_prefix }}/v1/content/publish" + upstream_url: "{{ program_service_url }}/program/v1/content/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From 5b385ff1c80a85f4c5fc04c287d43ce6d0ba99eb Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 4 Jun 2020 09:45:39 +0530 Subject: [PATCH 116/298] Issue #00 fix: updating kafka port --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index fbb31be462..8b86fb9de7 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -15,4 +15,4 @@ opensaber_service_url={{ sunbird_opensaber_service_url}} telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" publish_content_env={{ publish_content_env }} -sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9200,')}}:9200 +sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 From 7c428b58712ad8732d7957fb886988e51b9469c0 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 4 Jun 2020 12:56:22 +0530 Subject: [PATCH 117/298] Issue #00 fix: adding new programs variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 8b86fb9de7..69e621f3bd 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -14,5 +14,5 @@ learning_service_url={{ sunbird_content_repo_api_base_url }} opensaber_service_url={{ sunbird_opensaber_service_url}} telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" -publish_content_env={{ publish_content_env }} sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 +sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} From c46e98cd8627ca07542347c6719d8793f136bcfb Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 9 Jun 2020 14:12:39 +0530 Subject: [PATCH 118/298] Issue #00 fix: adding new programs variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 69e621f3bd..d7189176d1 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -16,3 +16,4 @@ telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} +dock_redis_host={{groups['redis1'][0]}} From 8e5b2edae1097cc90151b91f4b2c23b2d6bb497b Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Tue, 9 Jun 2020 14:24:55 +0530 Subject: [PATCH 119/298] Issue #DP-000 feat: program preference api onboarding --- ansible/roles/kong-api/defaults/main.yml | 51 ++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index ec3a4a0bcc..d581584405 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4378,3 +4378,54 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programPreferenceCreate + request_path: "{{ program_service_prefix }}/v1/preference/create" + upstream_url: "{{ program_service_url }}/program/v1/preference/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programPreferenceUpdate + request_path: "{{ program_service_prefix }}/v1/preference/update" + upstream_url: "{{ program_service_url }}/program/v1/preference/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programPreferenceRead + request_path: "{{ program_service_prefix }}/v1/preference/read" + upstream_url: "{{ program_service_url }}/program/v1/preference/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From 011a64e53b4df9b94799c091409ba96cbfd7528f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 10 Jun 2020 20:38:13 +0530 Subject: [PATCH 120/298] Isssue #00 fix: api refactoring --- ansible/roles/kong-api/defaults/main.yml | 87 ++++++++++++++++++------ 1 file changed, 65 insertions(+), 22 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 07a067a8d5..679cf56f1b 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -70,13 +70,11 @@ cert_service_prefix: /cert cert_registry_service_prefix: /certreg desktop_app_prefix: /desktop license_api_prefix: /license -<<<<<<< HEAD report_service_prefix: /data/v1/report-service -======= opensaber_service_prefix: /reg program_service_prefix: /program mvc_service_prefix: /mvc ->>>>>>> origin/dock-0.0.2 + # Service URLs knowledge_mw_service_url: "http://knowledge-mw-service:5000" @@ -91,13 +89,11 @@ lms_service_url: "http://lms-service:9000" cert_service_url: "http://cert-service:9000" cert_registry_service_url: "http://cert-registry-service:9000" content_service_url: "http://content-service:9000" -<<<<<<< HEAD report_service_url: "http://report-service:3030" -======= opensaber_service_url: "http://opensaber-service:8080" program_service_url: "http://program-service:6000" mvc_service_url: "http://mvc-service:9000" ->>>>>>> origin/dock-0.0.2 + premium_consumer_rate_limits: - api: createContent @@ -4547,7 +4543,6 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -<<<<<<< HEAD - name: getReportSummary request_path: "{{ report_service_prefix }}/report/summary" upstream_url: "{{ report_service_url }}/report/summary" @@ -4569,11 +4564,6 @@ kong_apis: - name: listReportSummary request_path: "{{ report_service_prefix }}/report/summary/list" upstream_url: "{{ report_service_url }}/report/summary/list" -======= - - name: LicenseAPI - request_path: "{{ license_api_prefix }}/v3" - upstream_url: "{{ content_service_url }}/license/v3" ->>>>>>> origin/dock-0.0.2 strip_request_path: true plugins: - name: jwt @@ -4642,7 +4632,9 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + +#####Dock API's ##### + - name: addEntity request_path: "{{ opensaber_service_prefix }}/add" upstream_url: "{{ opensaber_service_url }}/add" @@ -4659,7 +4651,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: readEntity request_path: "{{ opensaber_service_prefix }}/read" upstream_url: "{{ opensaber_service_url }}/read" @@ -4676,7 +4668,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: deleteEntity request_path: "{{ opensaber_service_prefix }}/delete" upstream_url: "{{ opensaber_service_url }}/delete" @@ -4693,7 +4685,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: updateEntity request_path: "{{ opensaber_service_prefix }}/update" upstream_url: "{{ opensaber_service_url }}/update" @@ -4710,7 +4702,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: searchEntity request_path: "{{ opensaber_service_prefix }}/search" upstream_url: "{{ opensaber_service_url }}/search" @@ -4727,7 +4719,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: auditEntity request_path: "{{ opensaber_service_prefix }}/audit" upstream_url: "{{ opensaber_service_url }}/audit" @@ -4744,7 +4736,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: healthCheckEntity request_path: "{{ opensaber_service_prefix }}/health" upstream_url: "{{ opensaber_service_url }}/health" @@ -4761,7 +4753,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: readProgram request_path: "{{ program_service_prefix }}/v1/read" upstream_url: "{{ program_service_url }}/program/v1/read" @@ -5050,7 +5042,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: programContentReport request_path: "{{ program_service_prefix }}/v1/report" upstream_url: "{{ program_service_url }}/program/v1/report" @@ -5068,7 +5060,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: mvcSearch + - name: mvcSearch request_path: "{{ mvc_service_prefix }}/v3/search" upstream_url: "{{ mvc_service_url }}/v3/mvcsearch" strip_request_path: true @@ -5101,3 +5093,54 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programPreferenceCreate + request_path: "{{ program_service_prefix }}/v1/preference/create" + upstream_url: "{{ program_service_url }}/program/v1/preference/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programPreferenceUpdate + request_path: "{{ program_service_prefix }}/v1/preference/update" + upstream_url: "{{ program_service_url }}/program/v1/preference/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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: programPreferenceRead + request_path: "{{ program_service_prefix }}/v1/preference/read" + upstream_url: "{{ program_service_url }}/program/v1/preference/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: 'userUpdate' + - 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 }}" From c85a77670c21b5ca76cea594ebedddf9d60bc182 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 23 Jun 2020 11:42:36 +0530 Subject: [PATCH 121/298] Isssue #00 fix: updating acls and new dock apis --- ansible/roles/kong-api/defaults/main.yml | 1232 ++++++++++------------ 1 file changed, 578 insertions(+), 654 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index cc3ccb0c0a..2a3f34c3cf 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -8,11 +8,13 @@ kong_admin_api_url: "http://{{kong_host}}:8001" # Default statsd_metrics +statsd_metrics: ["request_count", "status_count", "latency", "upstream_latency", "request_size", "response_size"] statsd_host: statsd-service statsd_port: 9125 statsd_pulgin: name: statsd + config.metrics: "{{ statsd_metrics }}" config.host: "{{ statsd_host }}" config.port: "{{ statsd_port }}" @@ -110,9 +112,9 @@ premium_consumer_rate_limits: kong_apis: - name: acceptContentFlag - uris: "{{ content_prefix }}/v1/flag/accept" + request_path: "{{ content_prefix }}/v1/flag/accept" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/flag/accept" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -128,9 +130,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: acceptTermsAndCondition - uris: "{{ user_service_prefix }}/v1/tnc/accept" + request_path: "{{ user_service_prefix }}/v1/tnc/accept" upstream_url: "{{ learning_service_url }}/v1/user/tnc/accept" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -146,9 +148,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: addBadgeToUser - uris: "{{ user_service_prefix }}/v1/badges/add" + request_path: "{{ user_service_prefix }}/v1/badges/add" upstream_url: "{{ learning_service_url }}/v1/user/badges/add" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -164,9 +166,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: addMember - uris: "{{ org_service_prefix }}/v1/member/add" + request_path: "{{ org_service_prefix }}/v1/member/add" upstream_url: "{{ learning_service_url }}/v1/org/member/add" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -182,9 +184,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: addRegCertificate - uris: "{{ cert_registry_service_prefix }}/v1/certs/add" + request_path: "{{ cert_registry_service_prefix }}/v1/certs/add" upstream_url: "{{ cert_registry_service_url }}/certs/v1/registry/add" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -200,9 +202,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: addSystemSettings - uris: "{{ data_service_prefix }}/v1/system/settings/set" + request_path: "{{ data_service_prefix }}/v1/system/settings/set" upstream_url: "{{ learning_service_url }}/v1/system/settings/set" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -218,9 +220,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: addUserSkill - uris: "{{ user_service_prefix }}/v1/skill/add" + request_path: "{{ user_service_prefix }}/v1/skill/add" upstream_url: "{{ learning_service_url }}/v1/user/skill/add" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -236,9 +238,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: addUserSkillEndorsement - uris: "{{ user_service_prefix }}/v1/skill/endorse/add" + request_path: "{{ user_service_prefix }}/v1/skill/endorse/add" upstream_url: "{{ learning_service_url }}/v1/user/skill/endorse/add" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -254,9 +256,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: addUserToBatch - uris: "{{ course_service_prefix }}/v1/batch/user/add" + request_path: "{{ course_service_prefix }}/v1/batch/user/add" upstream_url: "{{ lms_service_url }}/v1/course/batch/users/add" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -272,9 +274,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: assemblePage - uris: "{{ data_service_prefix }}/v1/page/assemble" + request_path: "{{ data_service_prefix }}/v1/page/assemble" upstream_url: "{{ lms_service_url }}/v1/page/assemble" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -286,9 +288,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: assignRole - uris: "{{ user_service_prefix }}/v1/role/assign" + request_path: "{{ user_service_prefix }}/v1/role/assign" upstream_url: "{{ learning_service_url }}/v1/user/assign/role" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -304,9 +306,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: batchBulkEnrolment - uris: "{{ course_service_prefix }}/v1/batch/bulk/enrollment" + request_path: "{{ course_service_prefix }}/v1/batch/bulk/enrollment" upstream_url: "{{ lms_service_url }}/v1/batch/bulk/enrollment" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -322,9 +324,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: batchBulkUnEnrolment - uris: "{{ course_service_prefix }}/v1/batch/bulk/unenrollment" + request_path: "{{ course_service_prefix }}/v1/batch/bulk/unenrollment" upstream_url: "{{ lms_service_url }}/v1/batch/bulk/unenrollment" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -340,9 +342,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: blockUser - uris: "{{ user_service_prefix }}/v1/block" + request_path: "{{ user_service_prefix }}/v1/block" upstream_url: "{{ learning_service_url }}/v1/user/block" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -358,9 +360,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: checkUploadJobStatus - uris: "{{ data_service_prefix }}/v1/upload/status" + request_path: "{{ data_service_prefix }}/v1/upload/status" upstream_url: "{{ learning_service_url }}/v1/upload/status" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -377,9 +379,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: compositeSearch - uris: "{{ composite_service_prefix }}/v1/search" + request_path: "{{ composite_service_prefix }}/v1/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -396,9 +398,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: contentBadgeLink - uris: "{{ badge_service_prefix }}/v1/content/link" + request_path: "{{ badge_service_prefix }}/v1/content/link" upstream_url: "{{ lms_service_url }}/v1/content/link" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -414,9 +416,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: contentBadgeUnLink - uris: "{{ badge_service_prefix }}/v1/content/unlink" + request_path: "{{ badge_service_prefix }}/v1/content/unlink" upstream_url: "{{ lms_service_url }}/v1/content/unlink" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -432,9 +434,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: copyContent - uris: "{{ content_prefix }}/v1/copy" + request_path: "{{ content_prefix }}/v1/copy" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/copy" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -450,9 +452,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: copyFramework - uris: "{{ framework_service_prefix }}/v1/copy" + request_path: "{{ framework_service_prefix }}/v1/copy" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/copy" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -468,9 +470,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: courseBatchAddCertificateTemplate - uris: "{{ course_service_prefix }}/batch/cert/v1/template/add" + request_path: "{{ course_service_prefix }}/batch/cert/v1/template/add" upstream_url: "{{ lms_service_url }}/v1/course/batch/cert/template/add" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -486,9 +488,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: courseBatchRemoveCertificateTemplate - uris: "{{ course_service_prefix }}/batch/cert/v1/template/remove" + request_path: "{{ course_service_prefix }}/batch/cert/v1/template/remove" upstream_url: "{{ lms_service_url }}/v1/course/batch/cert/template/remove" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -504,9 +506,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: courseEnrolment - uris: "{{ course_service_prefix }}/v1/enrol" + request_path: "{{ course_service_prefix }}/v1/enrol" upstream_url: "{{ lms_service_url }}/v1/course/enroll" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -522,9 +524,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: courseIssueCertificate - uris: "{{ course_service_prefix }}/batch/cert/v1/issue" + request_path: "{{ course_service_prefix }}/batch/cert/v1/issue" upstream_url: "{{ lms_service_url }}/v1/course/batch/cert/issue" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -540,9 +542,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: courseUnEnrolment - uris: "{{ course_service_prefix }}/v1/unenrol" + request_path: "{{ course_service_prefix }}/v1/unenrol" upstream_url: "{{ lms_service_url }}/v1/course/unenroll" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -558,9 +560,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createAssertion - uris: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/create" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/create" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/assertion/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -576,9 +578,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: createBadgeClass - uris: "{{ badge_service_prefix }}/v1/issuer/badge/create" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/create" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -594,9 +596,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: createBatch - uris: "{{ course_service_prefix }}/v1/batch/create" + request_path: "{{ course_service_prefix }}/v1/batch/create" upstream_url: "{{ lms_service_url }}/v1/course/batch/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -612,9 +614,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createCertTemplate - uris: "{{ cert_service_prefix }}/v1/template/create" + request_path: "{{ cert_service_prefix }}/v1/template/create" upstream_url: "{{ cert_service_url }}/cert/v1/template/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -630,9 +632,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: createChannel - uris: "{{ channel_service_prefix }}/v1/create" + request_path: "{{ channel_service_prefix }}/v1/create" upstream_url: "{{ knowledge_mw_service_url }}/v1/channel/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -648,9 +650,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createContent - uris: "{{ content_prefix }}/v1/create" + request_path: "{{ content_prefix }}/v1/create" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -666,9 +668,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createCourse - uris: "{{ course_service_prefix }}/v1/create" - upstream_url: "{{ lms_service_url }}/v1/course/create" - strip_uri: true + request_path: "{{ course_service_prefix }}/v1/create" + upstream_url: "{{ knowledge_mw_service_url }}/v1/course/create" + strip_request_path: true plugins: - name: jwt - name: cors @@ -684,9 +686,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createData - uris: "{{ data_service_prefix }}/v1/object/create" + request_path: "{{ data_service_prefix }}/v1/object/create" upstream_url: "{{ learning_service_url }}/v1/object/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -702,9 +704,9 @@ kong_apis: config.allowed_payload_size: "{{ large_request_size_limit }}" - name: createForm - uris: "{{ data_service_prefix }}/v1/form/create" + request_path: "{{ data_service_prefix }}/v1/form/create" upstream_url: "{{ player_service_url }}/plugin/v1/form/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -720,9 +722,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: createFramework - uris: "{{ framework_service_prefix }}/v1/create" + request_path: "{{ framework_service_prefix }}/v1/create" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -738,9 +740,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createFrameworkCategory - uris: "{{ framework_service_prefix }}/v1/category/create" + request_path: "{{ framework_service_prefix }}/v1/category/create" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/category/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -756,9 +758,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createFrameworkTerm - uris: "{{ framework_service_prefix }}/v1/term/create" + request_path: "{{ framework_service_prefix }}/v1/term/create" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/term/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -774,9 +776,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createissuer - uris: "{{ badge_service_prefix }}/v1/issuer/create" + request_path: "{{ badge_service_prefix }}/v1/issuer/create" upstream_url: "{{ learning_service_url }}/v1/issuer/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -792,9 +794,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: createLocation - uris: "{{ org_service_prefix }}/v1/location/create" + request_path: "{{ org_service_prefix }}/v1/location/create" upstream_url: "{{ learning_service_url }}/v1/notification/location/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -810,9 +812,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createLock - uris: "{{ lock_service_prefix }}/v1/create" + request_path: "{{ lock_service_prefix }}/v1/create" upstream_url: "{{ knowledge_mw_service_url }}/v1/lock/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -828,9 +830,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createNote - uris: "{{ notes_service_prefix }}/v1/create" + request_path: "{{ notes_service_prefix }}/v1/create" upstream_url: "{{ learning_service_url }}/v1/note/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -846,9 +848,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createOrg - uris: "{{ org_service_prefix }}/v1/create" + request_path: "{{ org_service_prefix }}/v1/create" upstream_url: "{{ learning_service_url }}/v1/org/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -864,9 +866,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createOrgType - uris: "{{ org_service_prefix }}/v1/type/create" + request_path: "{{ org_service_prefix }}/v1/type/create" upstream_url: "{{ learning_service_url }}/v1/org/type/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -882,9 +884,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: createPage - uris: "{{ data_service_prefix }}/v1/page/create" + request_path: "{{ data_service_prefix }}/v1/page/create" upstream_url: "{{ lms_service_url }}/v1/page/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -900,9 +902,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createPageSection - uris: "{{ data_service_prefix }}/v1/page/section/create" + request_path: "{{ data_service_prefix }}/v1/page/section/create" upstream_url: "{{ lms_service_url }}/v1/page/section/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -918,9 +920,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createPublisher - uris: "{{ dialcode_service_prefix }}/v1/publisher/create" + request_path: "{{ dialcode_service_prefix }}/v1/publisher/create" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/publisher/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -936,9 +938,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createSession - uris: "{{ sso_service_prefix }}/v1/create/session" + request_path: "{{ sso_service_prefix }}/v1/create/session" upstream_url: "{{ player_service_url }}/v1/sso/create/session" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -954,9 +956,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createUser - uris: "{{ user_service_prefix }}/v1/create" + request_path: "{{ user_service_prefix }}/v1/create" upstream_url: "{{ learning_service_url }}/v1/user/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -972,9 +974,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createUserLearnerV3 - uris: "{{ user_service_prefix }}/v1/signup" + request_path: "{{ user_service_prefix }}/v1/signup" upstream_url: "{{ learning_service_url }}/v1/user/signup" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -990,9 +992,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createUserVersion2 - uris: "{{ user_service_prefix }}/v2/create" + request_path: "{{ user_service_prefix }}/v2/create" upstream_url: "{{ learning_service_url }}/v2/user/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1008,9 +1010,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createUserVersion3 - uris: "{{ user_service_prefix }}/v3/create" + request_path: "{{ user_service_prefix }}/v3/create" upstream_url: "{{ learning_service_url }}/v3/user/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1024,29 +1026,11 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - - name: createUserVersion4 - uris: "{{ user_service_prefix }}/v4/create" - upstream_url: "{{ learning_service_url }}/v4/user/create" - strip_uri: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'userAccess' - - 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: deleteBadgeClass - uris: "{{ badge_service_prefix }}/v1/issuer/badge/delete" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/delete" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1062,9 +1046,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: deleteData - uris: "{{ data_service_prefix }}/v1/object/delete" + request_path: "{{ data_service_prefix }}/v1/object/delete" upstream_url: "{{ learning_service_url }}/v1/object/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1080,9 +1064,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: deleteIssuer - uris: "{{ badge_service_prefix }}/v1/issuer/delete" + request_path: "{{ badge_service_prefix }}/v1/issuer/delete" upstream_url: "{{ learning_service_url }}/v1/issuer/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1098,9 +1082,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: deleteLocation - uris: "{{ org_service_prefix }}/v1/location/delete" + request_path: "{{ org_service_prefix }}/v1/location/delete" upstream_url: "{{ learning_service_url }}/v1/notification/location/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1116,9 +1100,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: deleteNote - uris: "{{ notes_service_prefix }}/v1/delete" + request_path: "{{ notes_service_prefix }}/v1/delete" upstream_url: "{{ learning_service_url }}/v1/note/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1134,9 +1118,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: deviceProfile - uris: "{{ device_prefix }}/profile" + request_path: "{{ device_prefix }}/profile" upstream_url: "{{ sunbird_analytics_api_base_url }}/v1/device/profile" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1152,9 +1136,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: deviceRegister - uris: "{{ device_prefix }}/register" + request_path: "{{ device_prefix }}/register" upstream_url: "{{ sunbird_analytics_api_base_url }}/v1/device/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1170,9 +1154,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: dialAssemble - uris: "{{ data_service_prefix }}/v1/dial/assemble" + request_path: "{{ data_service_prefix }}/v1/dial/assemble" upstream_url: "{{ lms_service_url }}/v1/dial/assemble" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -1184,9 +1168,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: downloadCertificate - uris: "{{ user_service_prefix }}/v1/certs/download" + request_path: "{{ user_service_prefix }}/v1/certs/download" upstream_url: "{{ learning_service_url }}/v1/user/certs/download" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1202,9 +1186,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: downloadRegCertificate - uris: "{{ cert_registry_service_prefix }}/v1/certs/download" + request_path: "{{ cert_registry_service_prefix }}/v1/certs/download" upstream_url: "{{ cert_registry_service_url }}/certs/v1/registry/download" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1220,9 +1204,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: downloadTOC - uris: "{{ textbook_service_prefix }}/v1/toc/download" + request_path: "{{ textbook_service_prefix }}/v1/toc/download" upstream_url: "{{ lms_service_url }}/v1/textbook/toc/download" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1238,9 +1222,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: echo - uris: "{{ echo_service_prefix }}" + request_path: "{{ echo_service_prefix }}" upstream_url: "{{ echo_service_url }}" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1256,9 +1240,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: experimentcreate - uris: "{{ data_service_prefix }}/v1/experiement/create" + request_path: "{{ data_service_prefix }}/v1/experiement/create" upstream_url: "{{ sunbird_analytics_api_base_url }}/experiment/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1274,9 +1258,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: experimentread - uris: "{{ data_service_prefix }}/v1/experiement/get" + request_path: "{{ data_service_prefix }}/v1/experiement/get" upstream_url: "{{ sunbird_analytics_api_base_url }}/experiment/get" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1292,9 +1276,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: fetchURLMetaInformation - uris: "{{ content_prefix }}/v1/fetchmeta" + request_path: "{{ content_prefix }}/v1/fetchmeta" upstream_url: "{{ knowledge_mw_service_url }}/v1/url/fetchmeta" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1310,9 +1294,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: flagContent - uris: "{{ content_prefix }}/v1/flag" + request_path: "{{ content_prefix }}/v1/flag" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/flag" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1328,9 +1312,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: freshDesk - uris: "{{ tickets_prefix }}/v1/create" + request_path: "{{ tickets_prefix }}/v1/create" upstream_url: "{{ freshDesk_url }}/api/v2/tickets" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1346,9 +1330,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: generateCertificate - uris: "{{ cert_service_prefix }}/v1/certs/generate" + request_path: "{{ cert_service_prefix }}/v1/certs/generate" upstream_url: "{{ cert_service_url }}/v1/certs/generate" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1364,9 +1348,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: generateDialcodes - uris: "{{ dialcode_service_prefix }}/v1/generate" + request_path: "{{ dialcode_service_prefix }}/v1/generate" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/generate" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1382,9 +1366,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: generateOtp - uris: "{{ otp_service_prefix }}/v1/generate" + request_path: "{{ otp_service_prefix }}/v1/generate" upstream_url: "{{ learning_service_url }}/v1/otp/generate" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1400,9 +1384,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getAllData - uris: "{{ data_service_prefix }}/v1/object/read/list" + request_path: "{{ data_service_prefix }}/v1/object/read/list" upstream_url: "{{ learning_service_url }}/v1/object/read/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1418,9 +1402,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getAllIssuer - uris: "{{ badge_service_prefix }}/v1/issuer/list" + request_path: "{{ badge_service_prefix }}/v1/issuer/list" upstream_url: "{{ learning_service_url }}/v1/issuer/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1436,9 +1420,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getAssertion - uris: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/read" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/read" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/assertion/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1454,9 +1438,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getAssertionList - uris: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/search" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/search" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/assertion/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1472,9 +1456,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getAudienceCount - uris: "{{ data_service_prefix }}/v1/notification/audience" + request_path: "{{ data_service_prefix }}/v1/notification/audience" upstream_url: "{{ learning_service_url }}/v1/notification/audience" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1490,9 +1474,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getBadgeClass - uris: "{{ badge_service_prefix }}/v1/issuer/badge/read" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/read" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1508,9 +1492,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getBatch - uris: "{{ course_service_prefix }}/v1/batch/read" + request_path: "{{ course_service_prefix }}/v1/batch/read" upstream_url: "{{ lms_service_url }}/v1/course/batch/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1526,9 +1510,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getContentUploadUrl - uris: "{{ content_prefix }}/v1/upload/url/read" + request_path: "{{ content_prefix }}/v1/upload/url/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/upload/url" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1544,9 +1528,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getCourseConsumptionDashboard - uris: "{{ dashboard_service_prefix }}/v1/consumption/course" + request_path: "{{ dashboard_service_prefix }}/v1/consumption/course" upstream_url: "{{ lms_service_url }}/v1/dashboard/consumption/course" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1562,9 +1546,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getCourseHierarchy - uris: "{{ course_service_prefix }}/v1/hierarchy" + request_path: "{{ course_service_prefix }}/v1/hierarchy" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/hierarchy" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -1576,9 +1560,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getCourseProgressDashboard - uris: "{{ dashboard_service_prefix }}/v1/progress/course" + request_path: "{{ dashboard_service_prefix }}/v1/progress/course" upstream_url: "{{ lms_service_url }}/v1/dashboard/progress/course" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1594,9 +1578,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getCourseProgressDashboardV2 - uris: "{{ dashboard_service_prefix }}/v2/progress/course" + request_path: "{{ dashboard_service_prefix }}/v2/progress/course" upstream_url: "{{ lms_service_url }}/v2/dashboard/progress/course" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1612,9 +1596,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getData - uris: "{{ data_service_prefix }}/v1/object/read" + request_path: "{{ data_service_prefix }}/v1/object/read" upstream_url: "{{ learning_service_url }}/v1/object/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1630,9 +1614,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getIssuerDetails - uris: "{{ badge_service_prefix }}/v1/issuer/read" + request_path: "{{ badge_service_prefix }}/v1/issuer/read" upstream_url: "{{ learning_service_url }}/v1/issuer/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1648,9 +1632,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getLocation - uris: "{{ org_service_prefix }}/v1/location/read" + request_path: "{{ org_service_prefix }}/v1/location/read" upstream_url: "{{ learning_service_url }}/v1/notification/location/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1666,9 +1650,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getMediaTypes - uris: "{{ user_service_prefix }}/v1/mediatype/list" + request_path: "{{ user_service_prefix }}/v1/mediatype/list" upstream_url: "{{ learning_service_url }}/v1/user/mediatype/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1684,9 +1668,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getPageSettings - uris: "{{ data_service_prefix }}/v1/page/read" + request_path: "{{ data_service_prefix }}/v1/page/read" upstream_url: "{{ lms_service_url }}/v1/page/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1702,9 +1686,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getParticipants - uris: "{{ course_service_prefix }}/v1/batch/participants/list" + request_path: "{{ course_service_prefix }}/v1/batch/participants/list" upstream_url: "{{ lms_service_url }}/v1/batch/participants/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1720,9 +1704,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getSkills - uris: "{{ data_service_prefix }}/v1/skills" + request_path: "{{ data_service_prefix }}/v1/skills" upstream_url: "{{ learning_service_url }}/v1/skills" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1738,9 +1722,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getSystemSettings - uris: "{{ data_service_prefix }}/v1/system/settings/get" + request_path: "{{ data_service_prefix }}/v1/system/settings/get" upstream_url: "{{ learning_service_url }}/v1/system/settings/get" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1756,9 +1740,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getTenantInfo - uris: "{{ org_service_prefix }}/v1/tenant/info" + request_path: "{{ org_service_prefix }}/v1/tenant/info" upstream_url: "{{ player_service_url }}/v1/tenant/info" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1774,9 +1758,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getUploadJobStatusLink - uris: "{{ data_service_prefix }}/v1/upload/statusDownloadLink" + request_path: "{{ data_service_prefix }}/v1/upload/statusDownloadLink" upstream_url: "{{ learning_service_url }}/v1/upload/statusDownloadLink" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1793,9 +1777,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getUserByKey - uris: "{{ user_service_prefix }}/v1/get" + request_path: "{{ user_service_prefix }}/v1/get" upstream_url: "{{ learning_service_url }}/v1/user/get" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1811,9 +1795,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getUserConsumptionDasbhoard - uris: "{{ dashboard_service_prefix }}/v1/consumption/user" + request_path: "{{ dashboard_service_prefix }}/v1/consumption/user" upstream_url: "{{ learning_service_url }}/v1/dashboard/consumption/user" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1829,9 +1813,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getUserProfile - uris: "{{ user_service_prefix }}/v1/read" + request_path: "{{ user_service_prefix }}/v1/read" upstream_url: "{{ learning_service_url }}/v1/user/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1847,9 +1831,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getUserProfileV2 - uris: "{{ user_service_prefix }}/v2/read" + request_path: "{{ user_service_prefix }}/v2/read" upstream_url: "{{ learning_service_url }}/v2/user/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1865,9 +1849,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getUserSkill - uris: "{{ user_service_prefix }}/v1/skill/read" + request_path: "{{ user_service_prefix }}/v1/skill/read" upstream_url: "{{ learning_service_url }}/v1/user/skill/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1883,9 +1867,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: getUserType - uris: "{{ user_service_prefix }}/v1/type/list" + request_path: "{{ user_service_prefix }}/v1/type/list" upstream_url: "{{ learning_service_url }}/v1/user/type/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1901,9 +1885,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: indexSync - uris: "{{ data_service_prefix }}/v1/index/sync" + request_path: "{{ data_service_prefix }}/v1/index/sync" upstream_url: "{{ learning_service_url }}/v1/data/sync" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1920,9 +1904,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: ItemSetAPIs - uris: "{{ itemset_prefix }}/v1" + request_path: "{{ itemset_prefix }}/v1" upstream_url: "{{ knowledge_mw_service_url }}/itemset/v1" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1938,9 +1922,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: KongConsumerApi - uris: "{{ api_manager_perfix }}/v1/consumer" + request_path: "{{ api_manager_perfix }}/v1/consumer" upstream_url: "{{ am_util_url }}/v1/consumer" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1956,9 +1940,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: LicenseAPI - uris: "{{ license_api_prefix }}/v3" + request_path: "{{ license_api_prefix }}/v3" upstream_url: "{{ content_service_url }}/license/v3" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1974,9 +1958,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: linkDialcodeContent - uris: "{{ dialcode_service_prefix }}/v1/content/link" + request_path: "{{ dialcode_service_prefix }}/v1/content/link" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/content/link" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -1992,9 +1976,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listAllBadges - uris: "{{ org_service_prefix }}/v1/badges/list" + request_path: "{{ org_service_prefix }}/v1/badges/list" upstream_url: "{{ learning_service_url }}/v1/badges/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2010,9 +1994,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: listChannel - uris: "{{ channel_service_prefix }}/v1/list" + request_path: "{{ channel_service_prefix }}/v1/list" upstream_url: "{{ knowledge_mw_service_url }}/v1/channel/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2028,9 +2012,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchCourseBatches - uris: "{{ course_service_prefix }}/v1/batch/list" + request_path: "{{ course_service_prefix }}/v1/batch/list" upstream_url: "{{ lms_service_url }}/v1/course/batch/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2046,27 +2030,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listCourseEnrollments - uris: "{{ course_service_prefix }}/v1/user/enrollment/list" + request_path: "{{ course_service_prefix }}/v1/user/enrollment/list" upstream_url: "{{ lms_service_url }}/v1/user/courses/list" - strip_uri: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'courseAccess' - - 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: listUserCourseEnrollments - uris: "{{ course_service_prefix }}/v2/user/enrollment/list" - upstream_url: "{{ lms_service_url }}/v2/user/courses/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2081,11 +2047,10 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: listDialcodes - uris: "{{ dialcode_service_prefix }}/v1/list" + request_path: "{{ dialcode_service_prefix }}/v1/list" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2101,9 +2066,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listFramework - uris: "{{ framework_service_prefix }}/v1/list" + request_path: "{{ framework_service_prefix }}/v1/list" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2119,9 +2084,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listLock - uris: "{{ lock_service_prefix }}/v1/list" + request_path: "{{ lock_service_prefix }}/v1/list" upstream_url: "{{ knowledge_mw_service_url }}/v1/lock/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2137,9 +2102,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listOrdinals - uris: "{{ meta_service_prefix }}/v1/ordinals/list" + request_path: "{{ meta_service_prefix }}/v1/ordinals/list" upstream_url: "{{ knowledge_mw_service_url }}/v1/ordinals/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2155,9 +2120,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listOrgTypes - uris: "{{ org_service_prefix }}/v1/type/list" + request_path: "{{ org_service_prefix }}/v1/type/list" upstream_url: "{{ learning_service_url }}/v1/org/type/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2173,9 +2138,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: listPageSections - uris: "{{ data_service_prefix }}/v1/page/section/list" + request_path: "{{ data_service_prefix }}/v1/page/section/list" upstream_url: "{{ lms_service_url }}/v1/page/section/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2191,9 +2156,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listResourceBundles - uris: "{{ meta_service_prefix }}/v1/resourcebundles/list" + request_path: "{{ meta_service_prefix }}/v1/resourcebundles/list" upstream_url: "{{ knowledge_mw_service_url }}/v1/resourcebundles/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2209,9 +2174,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listSystemSettings - uris: "{{ data_service_prefix }}/v1/system/settings/list" + request_path: "{{ data_service_prefix }}/v1/system/settings/list" upstream_url: "{{ learning_service_url }}/v1/system/settings/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2227,9 +2192,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listTerms - uris: "{{ meta_service_prefix }}/v1/terms/list" + request_path: "{{ meta_service_prefix }}/v1/terms/list" upstream_url: "{{ knowledge_mw_service_url }}/v1/terms/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2245,9 +2210,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: masterLocationCreate - uris: "{{ data_service_prefix }}/v1/location/create" + request_path: "{{ data_service_prefix }}/v1/location/create" upstream_url: "{{ learning_service_url }}/v1/location/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2263,9 +2228,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: masterLocationDelete - uris: "{{ data_service_prefix }}/v1/location/delete" + request_path: "{{ data_service_prefix }}/v1/location/delete" upstream_url: "{{ learning_service_url }}/v1/location/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2281,9 +2246,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: masterLocationSearch - uris: "{{ data_service_prefix }}/v1/location/search" + request_path: "{{ data_service_prefix }}/v1/location/search" upstream_url: "{{ learning_service_url }}/v1/location/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2299,9 +2264,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: masterLocationUpdate - uris: "{{ data_service_prefix }}/v1/location/update" + request_path: "{{ data_service_prefix }}/v1/location/update" upstream_url: "{{ learning_service_url }}/v1/location/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2317,9 +2282,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: masterLocationUpload - uris: "{{ data_service_prefix }}/v1/bulk/location/upload" + request_path: "{{ data_service_prefix }}/v1/bulk/location/upload" upstream_url: "{{ learning_service_url }}/v1/bulk/location/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2335,9 +2300,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: mergeUserAccounts - uris: "{{ user_service_prefix }}/v1/account/merge" + request_path: "{{ user_service_prefix }}/v1/account/merge" upstream_url: "{{ learning_service_url }}/private/user/v1/account/merge" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2353,9 +2318,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: metricsSearchData - uris: "{{ data_service_prefix }}/v1/object/metrics" + request_path: "{{ data_service_prefix }}/v1/object/metrics" upstream_url: "{{ learning_service_url }}/v1/object/metrics" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2370,10 +2335,28 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: onboardConsumer + request_path: "{{ api_manager_perfix }}/v1/consumer/create/jwt" + upstream_url: "{{ am_util_url }}/v1/consumer/create/jwt" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'kongConsumerAdmin' + - name: rate-limiting + config.policy: local + config.hour: "{{ small_rate_limit_per_hour }}" + config.limit_by: credential + - name: request-size-limiting + config.allowed_payload_size: "{{ small_request_size_limit }}" + - name: orgAssignKeys - uris: "{{ org_service_prefix }}/v1/assign/key" + request_path: "{{ org_service_prefix }}/v1/assign/key" upstream_url: "{{ learning_service_url }}/v1/org/assign/key" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2389,9 +2372,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: orgBulkUpload - uris: "{{ org_service_prefix }}/v1/upload" + request_path: "{{ org_service_prefix }}/v1/upload" upstream_url: "{{ learning_service_url }}/v1/org/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2407,9 +2390,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: pluginSearch - uris: "{{ plugin_service_prefix }}/v1/search" + request_path: "{{ plugin_service_prefix }}/v1/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/plugins/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2425,9 +2408,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentCreateAPIs - uris: "{{ private_content_prefix }}/v3/create" + request_path: "{{ private_content_prefix }}/v3/create" upstream_url: "{{ content_service_url }}/content/v3/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2440,12 +2423,12 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ medium_request_size_limit }}" + config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentReadAPIs - uris: "{{ private_content_prefix }}/v3/read" + request_path: "{{ private_content_prefix }}/v3/read" upstream_url: "{{ content_service_url }}/content/v3/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2461,9 +2444,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentUpdateAPIs - uris: "{{ private_content_prefix }}/v3/update" + request_path: "{{ private_content_prefix }}/v3/update" upstream_url: "{{ content_service_url }}/content/v3/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2479,9 +2462,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentRetireAPI - uris: "{{ private_content_prefix }}/v3/retire" + request_path: "{{ private_content_prefix }}/v3/retire" upstream_url: "{{ vm_learning_service_url }}/content/v3/retire" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2497,9 +2480,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentUploadAPI - uris: "{{ private_content_prefix }}/v3/upload" + request_path: "{{ private_content_prefix }}/v3/upload" upstream_url: "{{ vm_learning_service_url }}/content/v3/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2515,9 +2498,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentReviewAPI - uris: "{{ private_content_prefix }}/v3/review" + request_path: "{{ private_content_prefix }}/v3/review" upstream_url: "{{ vm_learning_service_url }}/content/v3/review" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2533,9 +2516,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentPublishAPI - uris: "{{ private_content_prefix }}/v3/publish" + request_path: "{{ private_content_prefix }}/v3/publish" upstream_url: "{{ vm_learning_service_url }}/content/v3/publish" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2551,9 +2534,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentRejectAPI - uris: "{{ private_content_prefix }}/v3/reject" + request_path: "{{ private_content_prefix }}/v3/reject" upstream_url: "{{ vm_learning_service_url }}/content/v3/reject" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2569,9 +2552,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: PrivateContentHierarchyAPI - uris: "{{ private_content_prefix }}/v3/hierarchy" + request_path: "{{ private_content_prefix }}/v3/hierarchy" upstream_url: "{{ vm_learning_service_url }}/content/v3/hierarchy" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2587,9 +2570,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: privateUserAssignRole - uris: "{{ user_service_prefix }}/private/v1/assign/role" + request_path: "{{ user_service_prefix }}/private/v1/assign/role" upstream_url: "{{ learning_service_url }}/private/user/v1/assign/role" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2605,9 +2588,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: privateUserRead - uris: "{{ user_service_prefix }}/private/v1/read" + request_path: "{{ user_service_prefix }}/private/v1/read" upstream_url: "{{ learning_service_url }}/private/user/v1/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2623,9 +2606,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: privateUserUpdate - uris: "{{ user_service_prefix }}/private/v1/update" + request_path: "{{ user_service_prefix }}/private/v1/update" upstream_url: "{{ learning_service_url }}/private/user/v1/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2641,9 +2624,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: profileVisibility - uris: "{{ user_service_prefix }}/v1/profile/visibility" + request_path: "{{ user_service_prefix }}/v1/profile/visibility" upstream_url: "{{ learning_service_url }}/v1/user/profile/visibility" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2659,9 +2642,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: publishContent - uris: "{{ content_prefix }}/v1/publish" + request_path: "{{ content_prefix }}/v1/publish" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/publish" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2677,9 +2660,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: publishCourse - uris: "{{ course_service_prefix }}/v1/publish" + request_path: "{{ course_service_prefix }}/v1/publish" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/publish" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2695,9 +2678,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: publishDialcode - uris: "{{ dialcode_service_prefix }}/v1/publish" + request_path: "{{ dialcode_service_prefix }}/v1/publish" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/publish" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2713,9 +2696,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: publishFramework - uris: "{{ framework_service_prefix }}/v1/publish" + request_path: "{{ framework_service_prefix }}/v1/publish" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/publish" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2731,9 +2714,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: qrCodeBatchProcessRetry - uris: "{{ dialcode_service_prefix }}/v1/process/retry" + request_path: "{{ dialcode_service_prefix }}/v1/process/retry" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/process/retry" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2749,9 +2732,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: qrCodeBatchProcessStatus - uris: "{{ dialcode_service_prefix }}/v1/process/status" + request_path: "{{ dialcode_service_prefix }}/v1/process/status" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/process/status" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2767,9 +2750,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: qrCodeDownload - uris: "{{ course_service_prefix }}/v1/qrcode/download" + request_path: "{{ course_service_prefix }}/v1/qrcode/download" upstream_url: "{{ lms_service_url }}/v1/course/qrcode/download" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2785,9 +2768,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readCertTemplate - uris: "{{ cert_service_prefix }}/v1/template/read" + request_path: "{{ cert_service_prefix }}/v1/template/read" upstream_url: "{{ cert_service_url }}/cert/v1/template/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2803,9 +2786,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: readChannel - uris: "{{ channel_service_prefix }}/v1/read" + request_path: "{{ channel_service_prefix }}/v1/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/channel/read" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -2817,9 +2800,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readContent - uris: "{{ content_prefix }}/v1/read" + request_path: "{{ content_prefix }}/v1/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/read" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -2831,9 +2814,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readContentState - uris: "{{ course_service_prefix }}/v1/content/state/read" + request_path: "{{ course_service_prefix }}/v1/content/state/read" upstream_url: "{{ lms_service_url }}/v1/content/state/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2849,9 +2832,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readCourse - uris: "{{ course_service_prefix }}/v1/read" + request_path: "{{ course_service_prefix }}/v1/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2867,9 +2850,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readCourseEnrollment - uris: "{{ course_service_prefix }}/v1/user/enrollment/read" + request_path: "{{ course_service_prefix }}/v1/user/enrollment/read" upstream_url: "{{ lms_service_url }}/v1/user/courses/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2885,9 +2868,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readDialcode - uris: "{{ dialcode_service_prefix }}/v1/read" + request_path: "{{ dialcode_service_prefix }}/v1/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2903,9 +2886,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readForm - uris: "{{ data_service_prefix }}/v1/form/read" + request_path: "{{ data_service_prefix }}/v1/form/read" upstream_url: "{{ player_service_url }}/plugin/v1/form/read" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -2917,9 +2900,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: readFramework - uris: "{{ framework_service_prefix }}/v1/read" + request_path: "{{ framework_service_prefix }}/v1/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/read" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -2931,9 +2914,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readFrameworkCategory - uris: "{{ framework_service_prefix }}/v1/category/read" + request_path: "{{ framework_service_prefix }}/v1/category/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/category/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2949,9 +2932,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readFrameworkTerm - uris: "{{ framework_service_prefix }}/v1/term/read" + request_path: "{{ framework_service_prefix }}/v1/term/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/term/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2967,9 +2950,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readNote - uris: "{{ notes_service_prefix }}/v1/read" + request_path: "{{ notes_service_prefix }}/v1/read" upstream_url: "{{ learning_service_url }}/v1/note/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -2985,9 +2968,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readOrg - uris: "{{ org_service_prefix }}/v1/read" + request_path: "{{ org_service_prefix }}/v1/read" upstream_url: "{{ learning_service_url }}/v1/org/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3003,9 +2986,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readPageSection - uris: "{{ data_service_prefix }}/v1/page/section/read" + request_path: "{{ data_service_prefix }}/v1/page/section/read" upstream_url: "{{ lms_service_url }}/v1/page/section/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3021,9 +3004,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readPublisher - uris: "{{ dialcode_service_prefix }}/v1/publisher/read" + request_path: "{{ dialcode_service_prefix }}/v1/publisher/read" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/publisher/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3039,9 +3022,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readRoleMapping - uris: "{{ data_service_prefix }}/v1/role/read" + request_path: "{{ data_service_prefix }}/v1/role/read" upstream_url: "{{ learning_service_url }}/v1/role/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3057,9 +3040,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readUserProfile - uris: "{{ user_service_prefix }}/v1/profile/read" + request_path: "{{ user_service_prefix }}/v1/profile/read" upstream_url: "{{ learning_service_url }}/v1/user/getuser" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3075,9 +3058,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerDesktopApp - uris: "{{ api_manager_perfix }}/v1/consumer/desktop_app/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/desktop_app/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/desktop_app/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3093,9 +3076,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerDesktopDevice - uris: "{{ api_manager_perfix }}/v1/consumer/desktop_device/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/desktop_device/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/desktop_device/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3111,9 +3094,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: refreshLock - uris: "{{ lock_service_prefix }}/v1/refresh" + request_path: "{{ lock_service_prefix }}/v1/refresh" upstream_url: "{{ knowledge_mw_service_url }}/v1/lock/refresh" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3129,9 +3112,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerMobileApp - uris: "{{ api_manager_perfix }}/v1/consumer/mobile_app/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/mobile_app/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/mobile_app/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3147,9 +3130,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerMobileAppOpenRAP - uris: "{{ api_manager_perfix }}/v1/consumer/mobile_app_openrap/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/mobile_app_openrap/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/mobile_app_openrap/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3165,9 +3148,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerMobileAppTeacherAid - uris: "{{ api_manager_perfix }}/v1/consumer/mobile_app_teacheraid/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/mobile_app_teacheraid/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/mobile_app_teacheraid/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3183,27 +3166,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerMobileDevice - uris: "{{ api_manager_perfix }}/v1/consumer/mobile_device/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/mobile_device/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/mobile_device/credential/register" - strip_uri: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'mobileAdmin' - - 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: registerMobileDevicev2 - uris: "{{ api_manager_perfix }}/v2/consumer/mobile_device/credential/register" - upstream_url: "{{ am_util_url }}/v2/consumer/mobile_device/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3219,9 +3184,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerMobileDeviceOpenRAP - uris: "{{ api_manager_perfix }}/v1/consumer/mobile_device_openrap/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/mobile_device_openrap/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/mobile_device_openrap/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3237,9 +3202,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerMobileDeviceTeacherAid - uris: "{{ api_manager_perfix }}/v1/consumer/mobile_device_teacheraid/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/mobile_device_teacheraid/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/mobile_device_teacheraid/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3255,9 +3220,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: rejectContent - uris: "{{ content_prefix }}/v1/reject" + request_path: "{{ content_prefix }}/v1/reject" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/reject" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3273,9 +3238,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: rejectContentFlag - uris: "{{ content_prefix }}/v1/flag/reject" + request_path: "{{ content_prefix }}/v1/flag/reject" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/flag/reject" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3291,9 +3256,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: releaseDialcode - uris: "{{ dialcode_service_prefix }}/v1/release" + request_path: "{{ dialcode_service_prefix }}/v1/release" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/release" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3309,9 +3274,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: removeMember - uris: "{{ org_service_prefix }}/v1/member/remove" + request_path: "{{ org_service_prefix }}/v1/member/remove" upstream_url: "{{ learning_service_url }}/v1/org/member/remove" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3327,9 +3292,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: removeUserFromBatch - uris: "{{ course_service_prefix }}/v1/batch/user/remove" + request_path: "{{ course_service_prefix }}/v1/batch/user/remove" upstream_url: "{{ lms_service_url }}/v1/course/batch/users/remove" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3345,9 +3310,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: reserveDialcode - uris: "{{ dialcode_service_prefix }}/v1/reserve" + request_path: "{{ dialcode_service_prefix }}/v1/reserve" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/reserve" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3363,9 +3328,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: retireContent - uris: "{{ content_prefix }}/v1/retire" + request_path: "{{ content_prefix }}/v1/retire" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/retire" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3381,9 +3346,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: retireCourse - uris: "{{ course_service_prefix }}/v1/retire" + request_path: "{{ course_service_prefix }}/v1/retire" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/retire" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3399,9 +3364,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: retireLock - uris: "{{ lock_service_prefix }}/v1/retire" + request_path: "{{ lock_service_prefix }}/v1/retire" upstream_url: "{{ knowledge_mw_service_url }}/v1/lock/retire" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3417,9 +3382,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: revokeAssertion - uris: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/delete" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/assertion/delete" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/assertion/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3435,9 +3400,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: searchBadgeClass - uris: "{{ badge_service_prefix }}/v1/issuer/badge/search" + request_path: "{{ badge_service_prefix }}/v1/issuer/badge/search" upstream_url: "{{ learning_service_url }}/v1/issuer/badge/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3453,9 +3418,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: searchChannel - uris: "{{ channel_service_prefix }}/v1/search" + request_path: "{{ channel_service_prefix }}/v1/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/channel/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3471,9 +3436,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchContent - uris: "{{ content_prefix }}/v1/search" + request_path: "{{ content_prefix }}/v1/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/search" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -3485,9 +3450,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchCourse - uris: "{{ course_service_prefix }}/v1/search" + request_path: "{{ course_service_prefix }}/v1/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3503,9 +3468,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchData - uris: "{{ data_service_prefix }}/v1/object/search" + request_path: "{{ data_service_prefix }}/v1/object/search" upstream_url: "{{ learning_service_url }}/v1/object/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3521,9 +3486,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: searchDialcodes - uris: "{{ dialcode_service_prefix }}/v1/search" + request_path: "{{ dialcode_service_prefix }}/v1/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3539,9 +3504,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchFrameworkCategory - uris: "{{ framework_service_prefix }}/v1/category/search" + request_path: "{{ framework_service_prefix }}/v1/category/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/category/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3557,9 +3522,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchFrameworkTerm - uris: "{{ framework_service_prefix }}/v1/term/search" + request_path: "{{ framework_service_prefix }}/v1/term/search" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/term/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3575,9 +3540,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchNotes - uris: "{{ notes_service_prefix }}/v1/search" + request_path: "{{ notes_service_prefix }}/v1/search" upstream_url: "{{ learning_service_url }}/v1/note/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3593,9 +3558,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchOrg - uris: "{{ org_service_prefix }}/v1/search" + request_path: "{{ org_service_prefix }}/v1/search" upstream_url: "{{ learning_service_url }}/v1/org/search" - strip_uri: true + strip_request_path: true plugins: - name: cors - "{{ statsd_pulgin }}" @@ -3607,9 +3572,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchUser - uris: "{{ user_service_prefix }}/v1/search" + request_path: "{{ user_service_prefix }}/v1/search" upstream_url: "{{ learning_service_url }}/v1/user/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3625,9 +3590,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: sendEmailNotification - uris: "{{ user_service_prefix }}/v1/notification/email" + request_path: "{{ user_service_prefix }}/v1/notification/email" upstream_url: "{{ learning_service_url }}/v1/notification/email" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3643,9 +3608,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: sendNotification - uris: "{{ data_service_prefix }}/v1/notification/send" + request_path: "{{ data_service_prefix }}/v1/notification/send" upstream_url: "{{ learning_service_url }}/v1/notification/send" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3661,9 +3626,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: submitContentForReview - uris: "{{ content_prefix }}/v1/review" + request_path: "{{ content_prefix }}/v1/review" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/review" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3679,9 +3644,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: submitCourseForReview - uris: "{{ course_service_prefix }}/v1/review" + request_path: "{{ course_service_prefix }}/v1/review" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/review" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3697,9 +3662,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: telemetry - uris: "{{ data_service_prefix }}/v1/telemetry" + request_path: "{{ data_service_prefix }}/v1/telemetry" upstream_url: "{{ telemetry_service_url }}/v1/telemetry" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3715,9 +3680,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: telemetryErrorLogging - uris: "{{ data_service_prefix }}/v1/client/logs" + request_path: "{{ data_service_prefix }}/v1/client/logs" upstream_url: "{{ sunbird_analytics_api_base_url }}/data/v1/client/logs" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3733,9 +3698,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: unblockUser - uris: "{{ user_service_prefix }}/v1/unblock" + request_path: "{{ user_service_prefix }}/v1/unblock" upstream_url: "{{ learning_service_url }}/v1/user/unblock" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3751,9 +3716,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateBatch - uris: "{{ course_service_prefix }}/v1/batch/update" + request_path: "{{ course_service_prefix }}/v1/batch/update" upstream_url: "{{ lms_service_url }}/v1/course/batch/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3769,9 +3734,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateCertTemplate - uris: "{{ cert_service_prefix }}/v1/template/update" + request_path: "{{ cert_service_prefix }}/v1/template/update" upstream_url: "{{ cert_service_url }}/cert/v1/template/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3787,9 +3752,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: updateChannel - uris: "{{ channel_service_prefix }}/v1/update" + request_path: "{{ channel_service_prefix }}/v1/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/channel/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3805,9 +3770,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateCollaborators - uris: "{{ content_prefix }}/v1/collaborator/update" + request_path: "{{ content_prefix }}/v1/collaborator/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/collaborator/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3823,9 +3788,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateContent - uris: "{{ content_prefix }}/v1/update" + request_path: "{{ content_prefix }}/v1/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3841,9 +3806,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateContentState - uris: "{{ course_service_prefix }}/v1/content/state/update" + request_path: "{{ course_service_prefix }}/v1/content/state/update" upstream_url: "{{ lms_service_url }}/v1/content/state/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3859,9 +3824,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateCourse - uris: "{{ course_service_prefix }}/v1/update" + request_path: "{{ course_service_prefix }}/v1/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3877,9 +3842,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateCourseHierarchy - uris: "{{ course_service_prefix }}/v1/hierarchy/update" + request_path: "{{ course_service_prefix }}/v1/hierarchy/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/course/hierarchy/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3895,9 +3860,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateData - uris: "{{ data_service_prefix }}/v1/object/update" + request_path: "{{ data_service_prefix }}/v1/object/update" upstream_url: "{{ learning_service_url }}/v1/object/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3913,9 +3878,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: updateDesktopApp - uris: "{{ desktop_app_prefix }}/v1/update" + request_path: "{{ desktop_app_prefix }}/v1/update" upstream_url: "{{ player_service_url }}/v1/desktop/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3931,9 +3896,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateDialcode - uris: "{{ dialcode_service_prefix }}/v1/update" + request_path: "{{ dialcode_service_prefix }}/v1/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3949,9 +3914,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateForm - uris: "{{ data_service_prefix }}/v1/form/update" + request_path: "{{ data_service_prefix }}/v1/form/update" upstream_url: "{{ player_service_url }}/plugin/v1/form/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3967,9 +3932,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: updateFramework - uris: "{{ framework_service_prefix }}/v1/update" + request_path: "{{ framework_service_prefix }}/v1/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -3985,9 +3950,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateFrameworkCategory - uris: "{{ framework_service_prefix }}/v1/category/update" + request_path: "{{ framework_service_prefix }}/v1/category/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/category/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4003,9 +3968,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateFrameworkTerm - uris: "{{ framework_service_prefix }}/v1/term/update" + request_path: "{{ framework_service_prefix }}/v1/term/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/term/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4021,9 +3986,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateLocation - uris: "{{ org_service_prefix }}/v1/location/update" + request_path: "{{ org_service_prefix }}/v1/location/update" upstream_url: "{{ learning_service_url }}/v1/notification/location/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4039,9 +4004,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateNote - uris: "{{ notes_service_prefix }}/v1/update" + request_path: "{{ notes_service_prefix }}/v1/update" upstream_url: "{{ learning_service_url }}/v1/note/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4057,9 +4022,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateOrg - uris: "{{ org_service_prefix }}/v1/update" + request_path: "{{ org_service_prefix }}/v1/update" upstream_url: "{{ learning_service_url }}/v1/org/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4075,9 +4040,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateOrgStatus - uris: "{{ org_service_prefix }}/v1/status/update" + request_path: "{{ org_service_prefix }}/v1/status/update" upstream_url: "{{ learning_service_url }}/v1/org/status/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4093,9 +4058,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateOrgType - uris: "{{ org_service_prefix }}/v1/type/update" + request_path: "{{ org_service_prefix }}/v1/type/update" upstream_url: "{{ learning_service_url }}/v1/org/type/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4111,9 +4076,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: updatePage - uris: "{{ data_service_prefix }}/v1/page/update" + request_path: "{{ data_service_prefix }}/v1/page/update" upstream_url: "{{ lms_service_url }}/v1/page/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4129,9 +4094,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updatePageSection - uris: "{{ data_service_prefix }}/v1/page/section/update" + request_path: "{{ data_service_prefix }}/v1/page/section/update" upstream_url: "{{ lms_service_url }}/v1/page/section/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4147,9 +4112,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updatePublisher - uris: "{{ dialcode_service_prefix }}/v1/publisher/update" + request_path: "{{ dialcode_service_prefix }}/v1/publisher/update" upstream_url: "{{ knowledge_mw_service_url }}/v1/dialcode/publisher/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4165,9 +4130,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateUser - uris: "{{ user_service_prefix }}/v1/update" + request_path: "{{ user_service_prefix }}/v1/update" upstream_url: "{{ learning_service_url }}/v1/user/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4183,9 +4148,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: updateUserloginTime - uris: "{{ user_service_prefix }}/v1/update/logintime" + request_path: "{{ user_service_prefix }}/v1/update/logintime" upstream_url: "{{ learning_service_url }}/v1/user/update/logintime" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4201,9 +4166,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: updateUserSkill - uris: "{{ user_service_prefix }}/v1/skill/update" + request_path: "{{ user_service_prefix }}/v1/skill/update" upstream_url: "{{ learning_service_url }}/v1/user/skill/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4219,9 +4184,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: uploadContent - uris: "{{ content_prefix }}/v1/upload" + request_path: "{{ content_prefix }}/v1/upload" upstream_url: "{{ knowledge_mw_service_url }}/v1/content/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4237,9 +4202,9 @@ kong_apis: config.allowed_payload_size: "{{ large_request_size_limit }}" - name: uploadCrashLogs - uris: "{{ desktop_app_prefix }}/v1/upload-crash-logs" + request_path: "{{ desktop_app_prefix }}/v1/upload-crash-logs" upstream_url: "{{ player_service_url }}/v1/desktop/upload-crash-logs" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4255,9 +4220,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: uploadMedia - uris: "{{ content_prefix }}/v1/media/upload" + request_path: "{{ content_prefix }}/v1/media/upload" upstream_url: "{{ learning_service_url }}/v1/file/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4273,9 +4238,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: uploadTOC - uris: "{{ textbook_service_prefix }}/v1/toc/upload" + request_path: "{{ textbook_service_prefix }}/v1/toc/upload" upstream_url: "{{ lms_service_url }}/v1/textbook/toc/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4291,9 +4256,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: userBulkUpload - uris: "{{ user_service_prefix }}/v1/upload" + request_path: "{{ user_service_prefix }}/v1/upload" upstream_url: "{{ learning_service_url }}/v1/user/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4309,9 +4274,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: UserBulkUploadv2 - uris: "{{ user_service_prefix }}/v2/bulk/upload" + request_path: "{{ user_service_prefix }}/v2/bulk/upload" upstream_url: "{{ learning_service_url }}/v2/bulk/user/upload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4327,9 +4292,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: userExistenceApi - uris: "{{ user_service_prefix }}/v1/exists" + request_path: "{{ user_service_prefix }}/v1/exists" upstream_url: "{{ learning_service_url }}/v1/user/exists" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4345,9 +4310,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: userFeed - uris: "{{ user_service_prefix }}/v1/feed" + request_path: "{{ user_service_prefix }}/v1/feed" upstream_url: "{{ learning_service_url }}/v1/user/feed" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4363,9 +4328,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: userMigrate - uris: "{{ user_service_prefix }}/v1/migrate" + request_path: "{{ user_service_prefix }}/v1/migrate" upstream_url: "{{ learning_service_url }}/v1/user/migrate" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4381,9 +4346,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: validateRegCertificate - uris: "{{ cert_registry_service_prefix }}/v1/certs/validate" + request_path: "{{ cert_registry_service_prefix }}/v1/certs/validate" upstream_url: "{{ cert_registry_service_url }}/certs/v1/registry/validate" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4399,9 +4364,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: verifyOtp - uris: "{{ otp_service_prefix }}/v1/verify" + request_path: "{{ otp_service_prefix }}/v1/verify" upstream_url: "{{ learning_service_url }}/v1/otp/verify" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4417,9 +4382,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: verifyRegCertificate - uris: "{{ cert_registry_service_prefix }}/v1/certs/verify" + request_path: "{{ cert_registry_service_prefix }}/v1/certs/verify" upstream_url: "{{ cert_registry_service_url }}/certs/v1/registry/verify" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4435,9 +4400,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerIgotApp - uris: "{{ api_manager_perfix }}/v1/consumer/igot_app/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/igot_app/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/igot_app/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4453,9 +4418,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: registerIgotDevice - uris: "{{ api_manager_perfix }}/v1/consumer/igot_device/credential/register" + request_path: "{{ api_manager_perfix }}/v1/consumer/igot_device/credential/register" upstream_url: "{{ am_util_url }}/v1/consumer/igot_device/credential/register" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4471,9 +4436,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listReports - uris: "{{ report_service_prefix }}/report/list" + request_path: "{{ report_service_prefix }}/report/list" upstream_url: "{{ report_service_url }}/report/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4489,9 +4454,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getReport - uris: "{{ report_service_prefix }}/report/get" + request_path: "{{ report_service_prefix }}/report/get" upstream_url: "{{ report_service_url }}/report/get" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4507,9 +4472,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: updateReport - uris: "{{ report_service_prefix }}/report/update" + request_path: "{{ report_service_prefix }}/report/update" upstream_url: "{{ report_service_url }}/report/update" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4525,9 +4490,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: deleteReport - uris: "{{ report_service_prefix }}/report/delete" + request_path: "{{ report_service_prefix }}/report/delete" upstream_url: "{{ report_service_url }}/report/delete" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4543,9 +4508,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createReport - uris: "{{ report_service_prefix }}/report/create" + request_path: "{{ report_service_prefix }}/report/create" upstream_url: "{{ report_service_url }}/report/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4561,9 +4526,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createReportSummary - uris: "{{ report_service_prefix }}/report/summary/create" + request_path: "{{ report_service_prefix }}/report/summary/create" upstream_url: "{{ report_service_url }}/report/summary/create" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4579,9 +4544,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: getReportSummary - uris: "{{ report_service_prefix }}/report/summary" + request_path: "{{ report_service_prefix }}/report/summary" upstream_url: "{{ report_service_url }}/report/summary" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4597,9 +4562,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listReportSummary - uris: "{{ report_service_prefix }}/report/summary/list" + request_path: "{{ report_service_prefix }}/report/summary/list" upstream_url: "{{ report_service_url }}/report/summary/list" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4615,9 +4580,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: searchRegCertificate - uris: "{{ cert_registry_service_prefix }}/v1/certs/search" + request_path: "{{ cert_registry_service_prefix }}/v1/certs/search" upstream_url: "{{ cert_registry_service_url }}/certs/v1/registry/search" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4633,9 +4598,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readRegCertificate - uris: "{{ cert_registry_service_prefix }}/v1/certs/read" + request_path: "{{ cert_registry_service_prefix }}/v1/certs/read" upstream_url: "{{ cert_registry_service_url }}/certs/v1/registry/read" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4651,9 +4616,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: forgotPassword - uris: "{{ learner_private_route_prefix }}/user/v1/password/reset" + request_path: "{{ learner_private_route_prefix }}/user/v1/password/reset" upstream_url: "{{ learning_service_url }}/private/user/v1/password/reset" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -4679,7 +4644,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'registryCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4696,7 +4662,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'registryAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4713,7 +4680,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'registryAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4730,7 +4698,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'registryUpdate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4747,41 +4716,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' - - 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: auditEntity - request_path: "{{ opensaber_service_prefix }}/audit" - upstream_url: "{{ opensaber_service_url }}/audit" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: 'userUpdate' - - 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: healthCheckEntity - request_path: "{{ opensaber_service_prefix }}/health" - upstream_url: "{{ opensaber_service_url }}/health" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'registryAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4798,7 +4734,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'programAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4815,7 +4752,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'programCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4832,24 +4770,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' - - 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: deleteProgram - request_path: "{{ program_service_prefix }}/v1/delete" - upstream_url: "{{ program_service_url }}/program/v1/delete" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'programUpdate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4866,7 +4788,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'programAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4883,7 +4806,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'programAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4900,7 +4824,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'nominationCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4917,7 +4842,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'nominationUpdate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4934,7 +4860,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'nominationAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4951,7 +4878,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'nominationAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4968,7 +4896,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'contentCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4985,7 +4914,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'contentAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5002,7 +4932,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'contentUpdate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5019,7 +4950,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'appAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5036,7 +4968,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'appAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5053,7 +4986,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'reportsAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5070,7 +5004,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'reportsAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5087,7 +5022,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'reportsAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5095,22 +5031,6 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: mvcSearch - request_path: "{{ mvc_service_prefix }}/v3/search" - upstream_url: "{{ mvc_service_url }}/v3/mvcsearch" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: 'userUpdate' - - 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: programPublishContent request_path: "{{ program_service_prefix }}/v1/content/publish" @@ -5121,7 +5041,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'contentAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5138,7 +5059,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'preferenceCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5155,7 +5077,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'preferenceUpdate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5172,7 +5095,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: 'userUpdate' + config.whitelist: + - 'preferenceAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" From b82a2fd84a0c6bc9fa26256501f6092011f2af89 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 23 Jun 2020 14:07:16 +0530 Subject: [PATCH 122/298] Isssue #00 fix: removing lms api --- ansible/roles/kong-api/defaults/main.yml | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 2a3f34c3cf..81c5dfbe5b 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -2011,24 +2011,6 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: searchCourseBatches - request_path: "{{ course_service_prefix }}/v1/batch/list" - upstream_url: "{{ lms_service_url }}/v1/course/batch/search" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'courseAccess' - - 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: listCourseEnrollments request_path: "{{ course_service_prefix }}/v1/user/enrollment/list" upstream_url: "{{ lms_service_url }}/v1/user/courses/list" From fd2ad0e4bf0f40bcfb4da9f8469c4d838b2fd855 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 23 Jun 2020 17:33:08 +0530 Subject: [PATCH 123/298] Isssue #00 fix: adding mvc search api --- ansible/roles/kong-api/defaults/main.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 81c5dfbe5b..569464cc9b 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5085,3 +5085,21 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: mvcSearch + request_path: "{{ mvc_service_prefix }}/v3/search" + upstream_url: "{{ mvc_service_url }}/v3/mvcsearch" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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 }}" From b752079427f6ef28d02fdd6d6ffee20f4ec78dc1 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 23 Jun 2020 19:39:14 +0530 Subject: [PATCH 124/298] Isssue #00 fix: adding programs api --- ansible/roles/kong-api/defaults/main.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 569464cc9b..f4fff37fb6 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5103,3 +5103,21 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programTenantList + request_path: "{{ program_service_prefix }}/v1/tenant/list" + upstream_url: "{{ program_service_url }}/program/v1/tenant/list" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'programTenantList' + - 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 }}" From 7c3f3594244e0eee0aa126634d5de5ee5e6ab6e2 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 24 Jun 2020 12:17:39 +0530 Subject: [PATCH 125/298] Isssue #00 fix: adding program variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 69e621f3bd..d7189176d1 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -16,3 +16,4 @@ telemetry_service_endpoint='v1/telemetry' telemetry_service_host="http://telemetry-service:9001" sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} +dock_redis_host={{groups['redis1'][0]}} From df456516adb2a4a52e10fc27cd45e82fb447f33a Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 24 Jun 2020 12:30:42 +0530 Subject: [PATCH 126/298] Isssue #00 fix: adding program variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index d7189176d1..2743c8fc95 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -17,3 +17,4 @@ telemetry_service_host="http://telemetry-service:9001" sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} dock_redis_host={{groups['redis1'][0]}} +content_service_url="http://content-service:9000/" From 2baffde76057c7522e5b8ef0b3660e5aecaf503a Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 24 Jun 2020 14:05:04 +0530 Subject: [PATCH 127/298] Isssue #00 fix: adding program variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 2743c8fc95..644212ecf6 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -17,4 +17,4 @@ telemetry_service_host="http://telemetry-service:9001" sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} dock_redis_host={{groups['redis1'][0]}} -content_service_url="http://content-service:9000/" +content_service_url=http://content-service:9000/ From f468d497d1b74c1373101c142eea45d5ecb4795e Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 24 Jun 2020 19:45:01 +0530 Subject: [PATCH 128/298] Isssue #00 fix: adding program variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 644212ecf6..65e6604193 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -18,3 +18,4 @@ sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}} sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} dock_redis_host={{groups['redis1'][0]}} content_service_url=http://content-service:9000/ +sunbird_program_db_pool={{ sunbird_program_db_pool }} From 604421391a8f33347b9a834d56e711419915bd0b Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 25 Jun 2020 16:06:35 +0530 Subject: [PATCH 129/298] Isssue #00 fix: updating program variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 65e6604193..d6b0b9eb4b 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -1,6 +1,6 @@ sunbird_base_url={{ sunbird_program_base_url }} sunbird_api_auth_token={{ sunbird_api_auth_token }} -sunbird_program_port= 6000 +sunbird_program_port=6000 sunbird_service_log_level=info sunbird_program_db_user={{ dock_postgres_user }} sunbird_program_db_host={{ dock_postgres_host }} @@ -12,8 +12,8 @@ dock_base_url={{ dock_base_url }} dock_channel={{ dock_channel }} learning_service_url={{ sunbird_content_repo_api_base_url }} opensaber_service_url={{ sunbird_opensaber_service_url}} -telemetry_service_endpoint='v1/telemetry' -telemetry_service_host="http://telemetry-service:9001" +telemetry_service_endpoint=v1/telemetry +telemetry_service_host=http://telemetry-service:9001 sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} dock_redis_host={{groups['redis1'][0]}} From e6c2d7fb6a968e87454578b691fa77b54d171048 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 25 Jun 2020 16:17:06 +0530 Subject: [PATCH 130/298] Isssue #00 fix: removing program variable --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 - 1 file changed, 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index d6b0b9eb4b..673bbe7699 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -18,4 +18,3 @@ sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}} sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} dock_redis_host={{groups['redis1'][0]}} content_service_url=http://content-service:9000/ -sunbird_program_db_pool={{ sunbird_program_db_pool }} From c5f494d3e065e7863438be18710a038e9b88e9cd Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 29 Jun 2020 10:50:11 +0530 Subject: [PATCH 131/298] Isssue #00 fix: updating svc name for oauth --- kubernetes/helm_charts/core/nginx-public-ingress/values.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 8903152447..eccc3fca4f 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -260,7 +260,7 @@ proxyconfig: | proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; proxy_set_header X-Scheme $scheme; proxy_set_header X-Auth-Request-Redirect $request_uri; - proxy_pass http://oauth2-proxy.logging.svc.cluster.local; + proxy_pass http://oauth2-proxy-service.logging.svc.cluster.local; } location = /oauth2/auth { proxy_set_header Host $host; @@ -269,7 +269,7 @@ proxyconfig: | # nginx auth_request includes headers but not body proxy_set_header Content-Length ""; proxy_pass_request_body off; - proxy_pass http://oauth2-proxy.logging.svc.cluster.local; + proxy_pass http://oauth2-proxy-service.logging.svc.cluster.local; } location /dashboard/ { auth_request /oauth2/auth; From 768efcc6c09fe226704089c90a8bac752e89c79e Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 29 Jun 2020 15:05:31 +0530 Subject: [PATCH 132/298] Isssue #00 fix: adding print servce endpoint --- .../core/nginx-private-ingress/templates/configmap.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml index 5484dd0a4a..9757f9bc2e 100644 --- a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml +++ b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml @@ -75,6 +75,10 @@ data: rewrite ^/opensaber/(.*) /$1 break; proxy_pass http://opensaber-service:8080; } + location /print/ { + rewrite ^/print/(.*) /$1 break; + proxy_pass http://print-service:5000; + } } } kind: ConfigMap From c7456630c2774058c321b0c9dd54c6a1cf7f3022 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 30 Jun 2020 11:01:30 +0530 Subject: [PATCH 133/298] Isssue #00 fix: removing unwanted variable --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 1 - 1 file changed, 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index b60e01c372..b97d629b7e 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -97,7 +97,6 @@ sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} dock_api_call_log_status={{ dock_api_call_log_status }} sunbird_portal_url={{ sunbird_portal_url }} -google_captcha_private_key={{google_captcha_private_key | default("")}} #Release-3.0.0 sunbird_collectionEditorURL=collection-editor/index.html From 65461c2b8208d20e88b45450a4335f9749870361 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 1 Jul 2020 15:46:24 +0530 Subject: [PATCH 134/298] Isssue #00 fix: adding programs service endpoint --- .../core/nginx-private-ingress/templates/configmap.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml index 9757f9bc2e..1dfa226b75 100644 --- a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml +++ b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml @@ -79,6 +79,11 @@ data: rewrite ^/print/(.*) /$1 break; proxy_pass http://print-service:5000; } + location /program/ { + rewrite ^/program/(.*) /$1 break; + proxy_pass http://program-service:6000; + } + } } kind: ConfigMap From e4c2b8ff1dc3616cbc263cc1f71c034ae7300930 Mon Sep 17 00:00:00 2001 From: Keshav Prasad Date: Mon, 13 Jul 2020 17:51:20 +0530 Subject: [PATCH 135/298] fix: ansible condition fix (#1686) --- kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml b/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml index 8eaae90dce..d9bcc9ca3e 100644 --- a/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml +++ b/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml @@ -41,7 +41,7 @@ include_role: name: mount-keys tasks_from: "{{item}}" - when: (release_name == ("learner" || "lms")) and adminutil__access_keycount is defined and adminutil__access_keycount > 0 + when: (release_name == "learner" or release_name == "lms") and adminutil__access_keycount is defined and adminutil__access_keycount > 0 with_items: - remove-from-helm.yml - remove-keys-from-inventory.yml From 290225ffedebc267cbdde151e25cfd25eec16cb4 Mon Sep 17 00:00:00 2001 From: tanmayranjan <45866373+tanmayranjan@users.noreply.github.com> Date: Tue, 14 Jul 2020 11:42:20 +0530 Subject: [PATCH 136/298] whitelist changed for mvccontent create api (#1702) * added new route for mvc content create api * changed whitelist name --- ansible/roles/kong-api/defaults/main.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index f4fff37fb6..f2318dcae8 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5104,6 +5104,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + - name: mvcContentCreate + request_path: "{{ mvc_service_prefix }}/v3/create" + upstream_url: "{{ mvc_service_url }}/v3/mvccontent/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: programTenantList request_path: "{{ program_service_prefix }}/v1/tenant/list" upstream_url: "{{ program_service_url }}/program/v1/tenant/list" From 4df51768fcf36df678f45bc66a7b5a54cf9fd5dd Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Sat, 25 Jul 2020 14:11:51 +0530 Subject: [PATCH 137/298] adding kafka config --- .../stack-sunbird/templates/mvc-service_application.conf | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf index 2f750c957f..c4a4ab00db 100644 --- a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf @@ -277,6 +277,13 @@ play.filters { } } +kafka { + urls : "{{ kafka_urls }}" + topic.send.enable : true + topics.instruction : "{{ env_name }}.auto.creation.job.request" +} + + play.http.parser.maxMemoryBuffer = 50MB akka.http.parsing.max-content-length = 50MB From 4ef9fc631e11eb961e6266ab8d0f02325143cb84 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 4 Aug 2020 13:28:20 +0530 Subject: [PATCH 138/298] adding new variable --- .../roles/stack-sunbird/templates/mvc-service_application.conf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf index c4a4ab00db..bb91eeb5d0 100644 --- a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf @@ -288,7 +288,8 @@ play.http.parser.maxMemoryBuffer = 50MB akka.http.parsing.max-content-length = 50MB schema.base_path = "/home/sunbird/mvc-service-1.0-SNAPSHOT/schemas/" - +sunbird_kp_content_service_base_url: "{{ sunbird_kp_content_service_base_url }}" +sunbird_content_url: "{{ sunbird_content_url }}" telemetry_env="{{ sunbird_instance }}" installation.id="{{sunbird_installation}}" From 0e3bb96b1a38d46977c1b329ef742c0c8007700a Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 11 Aug 2020 13:37:39 +0530 Subject: [PATCH 139/298] adding mlworkbench deployment scripts --- ansible/roles/stack-sunbird/defaults/main.yml | 7 ++++ ansible/roles/stack-sunbird/tasks/main.yml | 3 ++ .../tasks/mlworkbench-service.yml | 9 +++++ .../templates/mlworkbench-service.env | 7 ++++ .../stack-sunbird/templates/stack_ml_api.yml | 25 +++++++++++++ pipelines/deploy/mlworkbench/Jenkinsfile | 36 +++++++++++++++++++ 6 files changed, 87 insertions(+) create mode 100644 ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml create mode 100644 ansible/roles/stack-sunbird/templates/mlworkbench-service.env create mode 100644 ansible/roles/stack-sunbird/templates/stack_ml_api.yml create mode 100644 pipelines/deploy/mlworkbench/Jenkinsfile diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 25333d070b..4184e81a73 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -204,6 +204,13 @@ taxonomy_service_limit_memory: 512M taxonomy_service_reservation_cpu: 0 taxonomy_service_limit_cpu: 1 +# ML workbench Config +mlworkbench_service_replicas: 1 +mlworkbench_service_reservation_memory: 1G +mlworkbench_service_limit_memory: 2G +mlworkbench_service_reservation_cpu: 1 +mlworkbench_service_limit_cpu: 1 + ############################ kube vars ####################### hub_org: sunbird nginx_per_ip_connection_limit: 400 diff --git a/ansible/roles/stack-sunbird/tasks/main.yml b/ansible/roles/stack-sunbird/tasks/main.yml index 6e5c025544..89b38d787a 100644 --- a/ansible/roles/stack-sunbird/tasks/main.yml +++ b/ansible/roles/stack-sunbird/tasks/main.yml @@ -61,4 +61,7 @@ - include: taxonomy-service.yml when: deploy_taxonomy is defined + - include: mlworkbench-service.yml + when: deploy_mlworkbench is defined + - include: restart_private_proxy.yml diff --git a/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml new file mode 100644 index 0000000000..fb71d06995 --- /dev/null +++ b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml @@ -0,0 +1,9 @@ +--- +- name: Remove mlworkbench service + shell: "docker service rm mlworkbench-service" + ignore_errors: yes + +- name: Deploy mlworkbench service + shell: "docker service create --with-registry-auth --replicas {{ mlworkbench_service_replicas }} -p 3579:3579 --name mlworkbench-service --hostname mlworkbench-service --reserve-memory {{ mlworkbench_service_reservation_memory }} --limit-memory {{ mlworkbench_service_limit_memory }} --limit-cpu {{ mlworkbench_service_limit_cpu }} --reserve-cpu {{ mlworkbench_service_reservation_cpu }} --network application_default --env-file /home/deployer/env/mlworkbench-service.env {{hub_org}}/{{image_name}}:{{image_tag}}" + args: + chdir: /home/deployer/stack diff --git a/ansible/roles/stack-sunbird/templates/mlworkbench-service.env b/ansible/roles/stack-sunbird/templates/mlworkbench-service.env new file mode 100644 index 0000000000..fa14d673b3 --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/mlworkbench-service.env @@ -0,0 +1,7 @@ +GOOGLE_APPLICATION_CREDENTIALS="" +redis_host={{groups['redis']}} +redis_port=6379 +redis_password="" +tagme_token="" +kafka_host={{groups['processing-cluster-kafka']|join(':9092,')}}:9092 +kafka_port=9092 diff --git a/ansible/roles/stack-sunbird/templates/stack_ml_api.yml b/ansible/roles/stack-sunbird/templates/stack_ml_api.yml new file mode 100644 index 0000000000..a7a0e93624 --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/stack_ml_api.yml @@ -0,0 +1,25 @@ +version: '3.1' +services: + learner_service: + image: "{{hub_org}}/{{image_name}}:{{image_tag}}" + env_file: + /home/deployer/env/sunbird_ml-api.env + deploy: + replicas: {{ ml-api_replicas | default(1) }} + resources: + reservations: + memory: "{{ ml-api_reservation_memory | default('256M') }}" + limits: + memory: "{{ ml-api_limit_memory | default('512M') }}" + # healthcheck: + # test: curl -f http://localhost:9000/health || exit 1 + interval: 10s + timeout: 5s + retries: 5 + ports: + - "3579:3579" + networks: + - application_default +networks: + application_default: + external: true diff --git a/pipelines/deploy/mlworkbench/Jenkinsfile b/pipelines/deploy/mlworkbench/Jenkinsfile new file mode 100644 index 0000000000..fdb70084e6 --- /dev/null +++ b/pipelines/deploy/mlworkbench/Jenkinsfile @@ -0,0 +1,36 @@ +@Library('deploy-conf') _ +node() { + try { + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + stage('deploy') { + values = docker_params() + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "$currentWs/ansible/deploy.yml" + ansibleExtraArgs = "--tags \"stack-sunbird\" --extra-vars \"hub_org=$hub_org image_name=$values.image_name image_tag=$values.image_tag service_name=mlworkbench-service deploy_mlworkbench=True\" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + ansible_playbook_run(values) + archiveArtifacts 'metadata.json' + currentBuild.description = "Image: ${values.image_tag}, Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + summary() + } + catch (err) { + currentBuild.result = "FAILURE" + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} From db2321990cfa7ec57fe8f7869dc116eab4a96c4e Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 11 Aug 2020 13:41:20 +0530 Subject: [PATCH 140/298] adding mlworkbench deployment scripts --- .../roles/stack-sunbird/templates/mvc-service_application.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf index bb91eeb5d0..40c6055a67 100644 --- a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf @@ -1,3 +1,4 @@ + # This is the main configuration file for the application. # https://www.playframework.com/documentation/latest/ConfigFile # ~~~~~ @@ -291,6 +292,7 @@ schema.base_path = "/home/sunbird/mvc-service-1.0-SNAPSHOT/schemas/" sunbird_kp_content_service_base_url: "{{ sunbird_kp_content_service_base_url }}" sunbird_content_url: "{{ sunbird_content_url }}" + telemetry_env="{{ sunbird_instance }}" installation.id="{{sunbird_installation}}" From 2c0d0730f6d9cde519edac60d4062cecedf4d2ef Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 11 Aug 2020 13:49:55 +0530 Subject: [PATCH 141/298] adding mlworkbench deployment scripts --- ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml index fb71d06995..bc31a5e5cb 100644 --- a/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml +++ b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml @@ -4,6 +4,6 @@ ignore_errors: yes - name: Deploy mlworkbench service - shell: "docker service create --with-registry-auth --replicas {{ mlworkbench_service_replicas }} -p 3579:3579 --name mlworkbench-service --hostname mlworkbench-service --reserve-memory {{ mlworkbench_service_reservation_memory }} --limit-memory {{ mlworkbench_service_limit_memory }} --limit-cpu {{ mlworkbench_service_limit_cpu }} --reserve-cpu {{ mlworkbench_service_reservation_cpu }} --network application_default --env-file /home/deployer/env/mlworkbench-service.env {{hub_org}}/{{image_name}}:{{image_tag}}" + shell: "docker service create --with-registry-auth --replicas {{ mlworkbench_service_replicas }} -p 3579:3579 --name mlworkbench-service --hostname mlworkbench-service --reserve-memory {{ mlworkbench_service_reservation_memory }} --limit-memory {{ mlworkbench_service_limit_memory }} --limit-cpu {{ mlworkbench_service_limit_cpu }} --reserve-cpu {{ mlworkbench_service_reservation_cpu }} --network application_default --env-file /home/deployer/env/sunbird_mlworkbench-service.env {{hub_org}}/{{image_name}}:{{image_tag}}" args: chdir: /home/deployer/stack From 2dc169061664d95d672f6f7bf880ecf31ff92622 Mon Sep 17 00:00:00 2001 From: Vaishali Khandagale Date: Tue, 11 Aug 2020 14:09:17 +0530 Subject: [PATCH 142/298] Kong config for sync registry users --- ansible/roles/kong-api/defaults/main.yml | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index f2318dcae8..64e758176c 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5131,7 +5131,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'programTenantList' - name: rate-limiting config.policy: local @@ -5139,3 +5139,21 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: programRegistrySync + request_path: "{{ program_service_prefix }}/v1/sync/registry" + upstream_url: "{{ program_service_url }}/program/v1/sync/registry" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'programUpdate' + - 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 }}" From e57464ac55f3095fade8acd23a304c1a60fb620c Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 11 Aug 2020 15:24:25 +0530 Subject: [PATCH 143/298] updating mlworkbench changes --- ansible/roles/stack-sunbird/tasks/common.yml | 2 +- ...{mlworkbench-service.env => sunbird_mlworkbench-service.env} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename ansible/roles/stack-sunbird/templates/{mlworkbench-service.env => sunbird_mlworkbench-service.env} (100%) diff --git a/ansible/roles/stack-sunbird/tasks/common.yml b/ansible/roles/stack-sunbird/tasks/common.yml index 228aab1597..74ad1ce983 100644 --- a/ansible/roles/stack-sunbird/tasks/common.yml +++ b/ansible/roles/stack-sunbird/tasks/common.yml @@ -42,4 +42,4 @@ - name: Save service configurations into an env file template: src="sunbird_{{service_name}}.env" dest="/home/deployer/env/sunbird_{{service_name}}.env" mode=0644 when: out.stat.exists - \ No newline at end of file + diff --git a/ansible/roles/stack-sunbird/templates/mlworkbench-service.env b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env similarity index 100% rename from ansible/roles/stack-sunbird/templates/mlworkbench-service.env rename to ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env From d7ac489a251311b73cae430ba399c28d048053f5 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 11 Aug 2020 15:30:04 +0530 Subject: [PATCH 144/298] updating mlworkbench variable changes --- .../stack-sunbird/templates/sunbird_mlworkbench-service.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env index fa14d673b3..dc698e76f7 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env @@ -1,5 +1,5 @@ GOOGLE_APPLICATION_CREDENTIALS="" -redis_host={{groups['redis']}} +redis_host={{groups['redis1']}} redis_port=6379 redis_password="" tagme_token="" From 6e8ba610db13c80b377d9a4a5aa8dd0bdbf43b02 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 11 Aug 2020 16:13:17 +0530 Subject: [PATCH 145/298] adding new portal variable --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index b97d629b7e..5aae3a88fc 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -105,3 +105,6 @@ sunbird_genericEditorURL=generic-editor/index.html sunbird_keycloak_public_key={{core_vault_sunbird_sso_publickey}} sunbird_bot_configured={{sunbird_bot_configured|default('true')}} sunbird_bot_service_URL=/chatapi/bot + +#Dock-0.0.2 +sunbird_learner_url={{sunbird_learner_url}} From dafccc3c349ba99b2129beb697b5b0cd77772d03 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Tue, 11 Aug 2020 16:19:35 +0530 Subject: [PATCH 146/298] Issue DP-844 feat: Publish program API's (#1804) --- ansible/roles/kong-api/defaults/main.yml | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 64e758176c..e64806aa62 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4761,6 +4761,42 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + - name: publishProgram + request_path: "{{ program_service_prefix }}/v1/publish" + upstream_url: "{{ program_service_url }}/program/v1/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'programUpdate' + - 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: unlistPublishProgram + request_path: "{{ program_service_prefix }}/v1/unlist/publish" + upstream_url: "{{ program_service_url }}/program/v1/unlist/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'programUpdate' + - 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: listProgram request_path: "{{ program_service_prefix }}/v1/list" upstream_url: "{{ program_service_url }}/program/v1/list" From ac191ad0c306d613690f9522376dab78e66b88c7 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Tue, 11 Aug 2020 16:27:06 +0530 Subject: [PATCH 147/298] Issue #844 fix: changed ACL to programAdmin --- ansible/roles/kong-api/defaults/main.yml | 72 ++++++++++++------------ 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index e64806aa62..812f70dea3 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -368,7 +368,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'orgSuperAdmin' - 'userSuperAdmin' - name: rate-limiting @@ -387,7 +387,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'contentAdmin' - 'contentTempAccess' - name: rate-limiting @@ -1766,7 +1766,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'orgSuperAdmin' - 'userSuperAdmin' - name: rate-limiting @@ -1893,7 +1893,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'userAdmin' - 'orgAdmin' - name: rate-limiting @@ -4626,7 +4626,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'registryCreate' - name: rate-limiting config.policy: local @@ -4644,7 +4644,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'registryAccess' - name: rate-limiting config.policy: local @@ -4662,7 +4662,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'registryAdmin' - name: rate-limiting config.policy: local @@ -4680,7 +4680,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'registryUpdate' - name: rate-limiting config.policy: local @@ -4698,7 +4698,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'registryAdmin' - name: rate-limiting config.policy: local @@ -4716,7 +4716,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'programAccess' - name: rate-limiting config.policy: local @@ -4734,7 +4734,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'programCreate' - name: rate-limiting config.policy: local @@ -4752,7 +4752,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'programUpdate' - name: rate-limiting config.policy: local @@ -4770,8 +4770,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: - - 'programUpdate' + config.whitelist: + - 'programAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4788,8 +4788,8 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: - - 'programUpdate' + config.whitelist: + - 'programAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -4806,7 +4806,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'programAccess' - name: rate-limiting config.policy: local @@ -4824,7 +4824,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'programAdmin' - name: rate-limiting config.policy: local @@ -4842,7 +4842,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'nominationCreate' - name: rate-limiting config.policy: local @@ -4860,7 +4860,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'nominationUpdate' - name: rate-limiting config.policy: local @@ -4878,7 +4878,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'nominationAdmin' - name: rate-limiting config.policy: local @@ -4896,7 +4896,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'nominationAccess' - name: rate-limiting config.policy: local @@ -4914,7 +4914,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'contentCreate' - name: rate-limiting config.policy: local @@ -4932,7 +4932,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'contentAccess' - name: rate-limiting config.policy: local @@ -4950,7 +4950,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'contentUpdate' - name: rate-limiting config.policy: local @@ -4968,7 +4968,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'appAdmin' - name: rate-limiting config.policy: local @@ -4986,7 +4986,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'appAccess' - name: rate-limiting config.policy: local @@ -5004,7 +5004,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'reportsAdmin' - name: rate-limiting config.policy: local @@ -5022,7 +5022,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'reportsAdmin' - name: rate-limiting config.policy: local @@ -5040,7 +5040,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'reportsAdmin' - name: rate-limiting config.policy: local @@ -5059,7 +5059,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'contentAdmin' - name: rate-limiting config.policy: local @@ -5077,7 +5077,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'preferenceCreate' - name: rate-limiting config.policy: local @@ -5095,7 +5095,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'preferenceUpdate' - name: rate-limiting config.policy: local @@ -5113,7 +5113,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'preferenceAccess' - name: rate-limiting config.policy: local @@ -5131,7 +5131,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'contentAdmin' - name: rate-limiting config.policy: local @@ -5149,7 +5149,7 @@ kong_apis: - name: cors - "{{ statsd_pulgin }}" - name: acl - config.whitelist: + config.whitelist: - 'contentCreate' - name: rate-limiting config.policy: local From 203ae33be7760f59c0ee8a8282f9f7740e585161 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 11 Aug 2020 20:17:57 +0530 Subject: [PATCH 148/298] updating vars --- .../stack-sunbird/templates/sunbird_mlworkbench-service.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env index dc698e76f7..26e34a549c 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env @@ -1,5 +1,5 @@ GOOGLE_APPLICATION_CREDENTIALS="" -redis_host={{groups['redis1']}} +redis_host={{groups['redis1'][0]}} redis_port=6379 redis_password="" tagme_token="" From 0ed0f4bddde21b57660a93287f7c52653ecd018d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 12 Aug 2020 13:16:13 +0530 Subject: [PATCH 149/298] updating ml api var --- .../stack-sunbird/templates/sunbird_mlworkbench-service.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env index 26e34a549c..0d51c6263b 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench-service.env @@ -3,5 +3,5 @@ redis_host={{groups['redis1'][0]}} redis_port=6379 redis_password="" tagme_token="" -kafka_host={{groups['processing-cluster-kafka']|join(':9092,')}}:9092 +kafka_host={{groups['processing-cluster-kafka']|join(',')}} kafka_port=9092 From a7f088ffff30b9a5003cf6ff3fe7ae54d2313700 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Thu, 13 Aug 2020 19:29:58 +0530 Subject: [PATCH 150/298] Issue #DP-000 chore: Bulk job request api onboarding --- ansible/roles/kong-api/defaults/main.yml | 72 ++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 812f70dea3..3384b87cb4 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5193,3 +5193,75 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + +- name: programBulkJobRequestCreate + request_path: "{{ program_service_prefix }}/v1/process/create" + upstream_url: "{{ program_service_url }}/program/v1/process/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'appAccess' + - 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: programBulkJobRequestRead + request_path: "{{ program_service_prefix }}/v1/process/read" + upstream_url: "{{ program_service_url }}/program/v1/process/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'appAccess' + - 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: programBulkJobRequestUpdate + request_path: "{{ program_service_prefix }}/v1/process/update" + upstream_url: "{{ program_service_url }}/program/v1/process/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'appAccess' + - 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: programBulkJobRequestSearch + request_path: "{{ program_service_prefix }}/v1/process/search" + upstream_url: "{{ program_service_url }}/program/v1/process/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'appAccess' + - 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 }}" From 4c733e04e4bb6a382764652e615b71dff14b3ef1 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Thu, 13 Aug 2020 20:13:51 +0530 Subject: [PATCH 151/298] Issue #DP-000 chore: Bulk job request api onboarding --- ansible/roles/kong-api/defaults/main.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 3384b87cb4..9029c51942 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5194,7 +5194,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -- name: programBulkJobRequestCreate + - name: programBulkJobRequestCreate request_path: "{{ program_service_prefix }}/v1/process/create" upstream_url: "{{ program_service_url }}/program/v1/process/create" strip_request_path: true @@ -5212,7 +5212,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -- name: programBulkJobRequestRead + - name: programBulkJobRequestRead request_path: "{{ program_service_prefix }}/v1/process/read" upstream_url: "{{ program_service_url }}/program/v1/process/read" strip_request_path: true @@ -5230,7 +5230,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -- name: programBulkJobRequestUpdate + - name: programBulkJobRequestUpdate request_path: "{{ program_service_prefix }}/v1/process/update" upstream_url: "{{ program_service_url }}/program/v1/process/update" strip_request_path: true @@ -5248,7 +5248,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -- name: programBulkJobRequestSearch + - name: programBulkJobRequestSearch request_path: "{{ program_service_prefix }}/v1/process/search" upstream_url: "{{ program_service_url }}/program/v1/process/search" strip_request_path: true From 55e097878fcc82ed17e57482a2f2042e93c37636 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Thu, 13 Aug 2020 21:20:29 +0530 Subject: [PATCH 152/298] Issue #DP-000 chore: Bulk job request api onboarding --- ansible/roles/kong-api/defaults/main.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 9029c51942..33bc70a30d 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5194,7 +5194,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: programBulkJobRequestCreate + - name: bulkJobProcessCreate request_path: "{{ program_service_prefix }}/v1/process/create" upstream_url: "{{ program_service_url }}/program/v1/process/create" strip_request_path: true @@ -5204,7 +5204,7 @@ kong_apis: - "{{ statsd_pulgin }}" - name: acl config.whitelist: - - 'appAccess' + - 'contentCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5212,7 +5212,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: programBulkJobRequestRead + - name: bulkJobProcessRead request_path: "{{ program_service_prefix }}/v1/process/read" upstream_url: "{{ program_service_url }}/program/v1/process/read" strip_request_path: true @@ -5222,7 +5222,7 @@ kong_apis: - "{{ statsd_pulgin }}" - name: acl config.whitelist: - - 'appAccess' + - 'contentCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5230,7 +5230,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: programBulkJobRequestUpdate + - name: bulkJobProcessUpdate request_path: "{{ program_service_prefix }}/v1/process/update" upstream_url: "{{ program_service_url }}/program/v1/process/update" strip_request_path: true @@ -5240,7 +5240,7 @@ kong_apis: - "{{ statsd_pulgin }}" - name: acl config.whitelist: - - 'appAccess' + - 'contentCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" @@ -5248,7 +5248,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: programBulkJobRequestSearch + - name: bulkJobProcessSearch request_path: "{{ program_service_prefix }}/v1/process/search" upstream_url: "{{ program_service_url }}/program/v1/process/search" strip_request_path: true @@ -5258,7 +5258,7 @@ kong_apis: - "{{ statsd_pulgin }}" - name: acl config.whitelist: - - 'appAccess' + - 'contentCreate' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" From 47cf80fd8ecaea5649f25219038806754bc72f63 Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Thu, 13 Aug 2020 21:49:38 +0530 Subject: [PATCH 153/298] Issue #DP-000 chore: Bulk job request api onboarding --- ansible/roles/kong-api/defaults/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 33bc70a30d..53fe8df126 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5258,7 +5258,7 @@ kong_apis: - "{{ statsd_pulgin }}" - name: acl config.whitelist: - - 'contentCreate' + - 'contentAdmin' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" From c47686e7a5cb117eb5f7fcdb9baa3cc7a77a51e0 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 14 Aug 2020 10:44:04 +0530 Subject: [PATCH 154/298] updating acls for program tenant list --- ansible/roles/kong-api/defaults/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 53fe8df126..9a9d840131 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5168,7 +5168,7 @@ kong_apis: - "{{ statsd_pulgin }}" - name: acl config.whitelist: - - 'programTenantList' + - 'orgAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" From 9f643c27dcd9c66253439cd9bc6a9f716f178a75 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Mon, 17 Aug 2020 11:37:42 +0530 Subject: [PATCH 155/298] Issue #SC-1847 feat: config changes to support large files (#1818) --- .../stack-sunbird/templates/content-service_application.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index b62908a039..9f3c630598 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -211,8 +211,8 @@ play.http { } play.server.http.idleTimeout = 60s -play.http.parser.maxDiskBuffer = 10MB -parsers.anyContent.maxLength = 10MB +play.http.parser.maxDiskBuffer = 100MB +parsers.anyContent.maxLength = 100MB ## Netty Provider # https://www.playframework.com/documentation/latest/SettingsNetty From 300d1d07e1cb4b4860d40e9799144b9b57222f6d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 17 Aug 2020 17:22:46 +0530 Subject: [PATCH 156/298] deployment script for vector api --- ansible/roles/stack-sunbird/defaults/main.yml | 7 ++++ ansible/roles/stack-sunbird/tasks/main.yml | 3 ++ .../stack-sunbird/tasks/vector-service.yml | 9 +++++ .../templates/sunbird_vector-service.env | 3 ++ pipelines/deploy/vector/Jenkinsfile | 36 +++++++++++++++++++ 5 files changed, 58 insertions(+) create mode 100644 ansible/roles/stack-sunbird/tasks/vector-service.yml create mode 100644 ansible/roles/stack-sunbird/templates/sunbird_vector-service.env create mode 100644 pipelines/deploy/vector/Jenkinsfile diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 4184e81a73..ee2b9b986b 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -211,6 +211,13 @@ mlworkbench_service_limit_memory: 2G mlworkbench_service_reservation_cpu: 1 mlworkbench_service_limit_cpu: 1 +# ML workbench Config +vector_service_replicas: 1 +vector_service_reservation_memory: 1G +vector_service_limit_memory: 2G +vector_service_reservation_cpu: 1 +vector_service_limit_cpu: 1 + ############################ kube vars ####################### hub_org: sunbird nginx_per_ip_connection_limit: 400 diff --git a/ansible/roles/stack-sunbird/tasks/main.yml b/ansible/roles/stack-sunbird/tasks/main.yml index 89b38d787a..baffb3790c 100644 --- a/ansible/roles/stack-sunbird/tasks/main.yml +++ b/ansible/roles/stack-sunbird/tasks/main.yml @@ -64,4 +64,7 @@ - include: mlworkbench-service.yml when: deploy_mlworkbench is defined + - include: vector-service.yml + when: vector_mlworkbench is defined + - include: restart_private_proxy.yml diff --git a/ansible/roles/stack-sunbird/tasks/vector-service.yml b/ansible/roles/stack-sunbird/tasks/vector-service.yml new file mode 100644 index 0000000000..bd23f84f0b --- /dev/null +++ b/ansible/roles/stack-sunbird/tasks/vector-service.yml @@ -0,0 +1,9 @@ +--- +- name: Remove vector service + shell: "docker service rm vector-service" + ignore_errors: yes + +- name: Deploy vector service + shell: "docker service create --with-registry-auth --replicas {{ vector_service_replicas }} -p 1729:1729 --name vector-service --hostname vector-service --reserve-memory {{ vector_service_reservation_memory }} --limit-memory {{ vector_service_limit_memory }} --limit-cpu {{ vector_service_limit_cpu }} --reserve-cpu {{ vector_service_reservation_cpu }} --network application_default --env-file /home/deployer/env/sunbird_vector-service.env {{hub_org}}/{{image_name}}:{{image_tag}}" + args: + chdir: /home/deployer/stack diff --git a/ansible/roles/stack-sunbird/templates/sunbird_vector-service.env b/ansible/roles/stack-sunbird/templates/sunbird_vector-service.env new file mode 100644 index 0000000000..71fdb8bcdd --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/sunbird_vector-service.env @@ -0,0 +1,3 @@ +kafka_host={{groups['processing-cluster-kafka']|join(',')}} +kafka_port=9092 +DS_DATA_HOME=/app diff --git a/pipelines/deploy/vector/Jenkinsfile b/pipelines/deploy/vector/Jenkinsfile new file mode 100644 index 0000000000..4376d7ce4c --- /dev/null +++ b/pipelines/deploy/vector/Jenkinsfile @@ -0,0 +1,36 @@ +@Library('deploy-conf') _ +node() { + try { + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + stage('deploy') { + values = docker_params() + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "$currentWs/ansible/deploy.yml" + ansibleExtraArgs = "--tags \"stack-sunbird\" --extra-vars \"hub_org=$hub_org image_name=$values.image_name image_tag=$values.image_tag service_name=vector-service deploy_vector=True\" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + ansible_playbook_run(values) + archiveArtifacts 'metadata.json' + currentBuild.description = "Image: ${values.image_tag}, Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + summary() + } + catch (err) { + currentBuild.result = "FAILURE" + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} From 95ad4861275910be055068e2dd071a5c64d7a28d Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 17 Aug 2020 17:58:52 +0530 Subject: [PATCH 157/298] deployment script for vector api --- ansible/roles/stack-sunbird/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/tasks/main.yml b/ansible/roles/stack-sunbird/tasks/main.yml index baffb3790c..19d5d2b85f 100644 --- a/ansible/roles/stack-sunbird/tasks/main.yml +++ b/ansible/roles/stack-sunbird/tasks/main.yml @@ -65,6 +65,6 @@ when: deploy_mlworkbench is defined - include: vector-service.yml - when: vector_mlworkbench is defined + when: deploy_vector is defined - include: restart_private_proxy.yml From f781f885224f3e8441c305ea6f3d84697ff9d5d8 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Tue, 18 Aug 2020 18:12:48 +0530 Subject: [PATCH 158/298] Issue #SC-1847 feat: added config for import api (#1821) --- ansible/roles/kong-api/defaults/main.yml | 18 ++++++++++++++++++ .../templates/content-service_application.conf | 5 +++++ 2 files changed, 23 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 9a9d840131..007a558392 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5265,3 +5265,21 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: contentImportAPI + uris: "{{ content_prefix }}/v1/import" + upstream_url: "{{ content_service_url }}/content/v3/import" + strip_uri: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" \ No newline at end of file diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 9f3c630598..f52a4f03fd 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -494,3 +494,8 @@ dial_service { } content.link_dialcode.validation=true content.link_dialcode.max_limit=10 + +# Content Import API Config +content.import.request_size_limit=300 +content.import.required_props=["name","code","mimeType","contentType","artifactUrl","framework"] +content.import.topic_name="{{ env_name }}.auto.creation.job.request" From 392fe60e5c12a95deca7ffe4f7eaa82c9ff2dc5c Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Tue, 18 Aug 2020 18:34:08 +0530 Subject: [PATCH 159/298] Issue #SC-1847 feat: updated import api onboarding script (#1822) --- ansible/roles/kong-api/defaults/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 007a558392..e57113a09b 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5267,9 +5267,9 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: contentImportAPI - uris: "{{ content_prefix }}/v1/import" + request_path: "{{ content_prefix }}/v1/import" upstream_url: "{{ content_service_url }}/content/v3/import" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors From e0fa9e2470343e8763300adc9cddfdafa9db83ea Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 19 Aug 2020 17:30:24 +0530 Subject: [PATCH 160/298] adding new var --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 673bbe7699..d6b0b9eb4b 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -18,3 +18,4 @@ sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}} sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} dock_redis_host={{groups['redis1'][0]}} content_service_url=http://content-service:9000/ +sunbird_program_db_pool={{ sunbird_program_db_pool }} From b918543b38e37800181ea210f5b848c16fcff12f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 24 Aug 2020 14:06:31 +0530 Subject: [PATCH 161/298] adding es7 ansible role and jenkinsfile --- ansible/es7.yml | 28 + ansible/roles/es7/CHANGELOG.md | 263 +++++++++ ansible/roles/es7/Gemfile | 6 + ansible/roles/es7/Gemfile.lock | 117 ++++ ansible/roles/es7/LICENSE | 13 + ansible/roles/es7/Makefile | 32 ++ ansible/roles/es7/README.md | 500 ++++++++++++++++++ ansible/roles/es7/ansible.cfg | 1 + ansible/roles/es7/defaults/main.yml | 68 +++ ansible/roles/es7/docs/multi-instance.md | 145 +++++ ansible/roles/es7/docs/ssl-tls-setup.md | 78 +++ .../files/systemd/elasticsearch_override.conf | 2 + ansible/roles/es7/filter_plugins/custom.py | 75 +++ ansible/roles/es7/handlers/main.yml | 15 + ansible/roles/es7/helpers/bumper.py | 36 ++ ansible/roles/es7/meta/main.yml | 27 + .../es7/tasks/compatibility-variables.yml | 30 ++ .../roles/es7/tasks/elasticsearch-Debian.yml | 116 ++++ .../elasticsearch-RedHat-version-lock.yml | 36 ++ .../roles/es7/tasks/elasticsearch-RedHat.yml | 62 +++ .../roles/es7/tasks/elasticsearch-config.yml | 104 ++++ .../es7/tasks/elasticsearch-optional-user.yml | 24 + .../es7/tasks/elasticsearch-parameters.yml | 41 ++ .../roles/es7/tasks/elasticsearch-plugins.yml | 81 +++ ansible/roles/es7/tasks/elasticsearch-ssl.yml | 112 ++++ .../es7/tasks/elasticsearch-template.yml | 31 ++ ansible/roles/es7/tasks/elasticsearch.yml | 9 + ansible/roles/es7/tasks/java.yml | 54 ++ ansible/roles/es7/tasks/main.yml | 108 ++++ ansible/roles/es7/tasks/snapshot-release.yml | 55 ++ .../es7/tasks/xpack/elasticsearch-xpack.yml | 11 + .../security/elasticsearch-security-file.yml | 96 ++++ .../elasticsearch-security-native.yml | 201 +++++++ .../xpack/security/elasticsearch-security.yml | 50 ++ .../elasticsearch-xpack-activation.yml | 21 + .../elasticsearch-xpack-trial-activation.yml | 18 + ansible/roles/es7/templates/elasticsearch.j2 | 60 +++ .../roles/es7/templates/elasticsearch.repo | 11 + .../roles/es7/templates/elasticsearch.yml.j2 | 84 +++ ansible/roles/es7/templates/jvm.options.j2 | 146 +++++ .../templates/security/role_mapping.yml.j2 | 1 + .../roles/es7/templates/security/roles.yml.j2 | 1 + .../es7/templates/security/users_roles.j2 | 1 + ansible/roles/es7/test/integration/debug.yml | 6 + .../files/certs/keystore-password-ca.p12 | Bin 0 -> 2527 bytes .../files/certs/keystore-password.p12 | Bin 0 -> 3451 bytes .../certs/shared-store-no-password-ca.p12 | Bin 0 -> 2527 bytes .../files/certs/shared-store-no-password.p12 | Bin 0 -> 3451 bytes .../files/certs/truststore-password-ca.p12 | Bin 0 -> 2527 bytes .../files/certs/truststore-password.p12 | Bin 0 -> 3451 bytes .../files/custom_config/elasticsearch | 7 + .../files/custom_config/jvm.options | 34 ++ .../files/custom_config/log4j2.properties | 86 +++ .../files/templates-6.x/basic.json | 11 + .../files/templates-7.x/basic.json | 9 + .../integration/helpers/serverspec/Gemfile | 3 + .../helpers/serverspec/issue_test_spec.rb | 10 + .../helpers/serverspec/oss_spec.rb | 20 + .../serverspec/oss_to_xpack_upgrade_spec.rb | 4 + .../helpers/serverspec/oss_upgrade_spec.rb | 4 + .../helpers/serverspec/shared_spec.rb | 187 +++++++ .../helpers/serverspec/spec_helper.rb | 31 ++ .../helpers/serverspec/xpack_upgrade_spec.rb | 110 ++++ .../roles/es7/test/integration/issue-test.yml | 45 ++ .../integration/issue-test/issue-test.yml | 2 + .../issue-test/serverspec/default_spec.rb | 8 + .../test/integration/oss-to-xpack-upgrade.yml | 25 + .../oss-to-xpack-upgrade.yml | 2 + .../serverspec/default_spec.rb | 9 + .../es7/test/integration/oss-upgrade.yml | 21 + .../integration/oss-upgrade/oss-upgrade.yml | 2 + .../oss-upgrade/serverspec/default_spec.rb | 9 + ansible/roles/es7/test/integration/oss.yml | 17 + .../roles/es7/test/integration/oss/oss.yml | 2 + .../oss/serverspec/default_spec.rb | 12 + .../es7/test/integration/xpack-upgrade-trial | 1 + .../test/integration/xpack-upgrade-trial.yml | 181 +++++++ .../es7/test/integration/xpack-upgrade.yml | 179 +++++++ .../xpack-upgrade/serverspec/default_spec.rb | 9 + .../xpack-upgrade/xpack-upgrade.yml | 2 + ansible/roles/es7/test/integration/xpack.yml | 10 + .../xpack/serverspec/default_spec.rb | 7 + .../es7/test/integration/xpack/xpack.yml | 2 + ansible/roles/es7/test/matrix.yml | 16 + ansible/roles/es7/vars/Debian.yml | 5 + ansible/roles/es7/vars/RedHat.yml | 4 + ansible/roles/es7/vars/main.yml | 4 + pipelines/provision/es7/Jenkinsfile | 51 ++ 88 files changed, 4117 insertions(+) create mode 100644 ansible/es7.yml create mode 100644 ansible/roles/es7/CHANGELOG.md create mode 100644 ansible/roles/es7/Gemfile create mode 100644 ansible/roles/es7/Gemfile.lock create mode 100644 ansible/roles/es7/LICENSE create mode 100644 ansible/roles/es7/Makefile create mode 100644 ansible/roles/es7/README.md create mode 100644 ansible/roles/es7/ansible.cfg create mode 100644 ansible/roles/es7/defaults/main.yml create mode 100644 ansible/roles/es7/docs/multi-instance.md create mode 100644 ansible/roles/es7/docs/ssl-tls-setup.md create mode 100644 ansible/roles/es7/files/systemd/elasticsearch_override.conf create mode 100644 ansible/roles/es7/filter_plugins/custom.py create mode 100644 ansible/roles/es7/handlers/main.yml create mode 100755 ansible/roles/es7/helpers/bumper.py create mode 100644 ansible/roles/es7/meta/main.yml create mode 100644 ansible/roles/es7/tasks/compatibility-variables.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-Debian.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-RedHat-version-lock.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-RedHat.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-config.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-optional-user.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-parameters.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-plugins.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-ssl.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch-template.yml create mode 100644 ansible/roles/es7/tasks/elasticsearch.yml create mode 100644 ansible/roles/es7/tasks/java.yml create mode 100644 ansible/roles/es7/tasks/main.yml create mode 100644 ansible/roles/es7/tasks/snapshot-release.yml create mode 100644 ansible/roles/es7/tasks/xpack/elasticsearch-xpack.yml create mode 100644 ansible/roles/es7/tasks/xpack/security/elasticsearch-security-file.yml create mode 100644 ansible/roles/es7/tasks/xpack/security/elasticsearch-security-native.yml create mode 100644 ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml create mode 100644 ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-activation.yml create mode 100644 ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-trial-activation.yml create mode 100644 ansible/roles/es7/templates/elasticsearch.j2 create mode 100644 ansible/roles/es7/templates/elasticsearch.repo create mode 100644 ansible/roles/es7/templates/elasticsearch.yml.j2 create mode 100644 ansible/roles/es7/templates/jvm.options.j2 create mode 100644 ansible/roles/es7/templates/security/role_mapping.yml.j2 create mode 100644 ansible/roles/es7/templates/security/roles.yml.j2 create mode 100644 ansible/roles/es7/templates/security/users_roles.j2 create mode 100644 ansible/roles/es7/test/integration/debug.yml create mode 100644 ansible/roles/es7/test/integration/files/certs/keystore-password-ca.p12 create mode 100644 ansible/roles/es7/test/integration/files/certs/keystore-password.p12 create mode 100644 ansible/roles/es7/test/integration/files/certs/shared-store-no-password-ca.p12 create mode 100644 ansible/roles/es7/test/integration/files/certs/shared-store-no-password.p12 create mode 100644 ansible/roles/es7/test/integration/files/certs/truststore-password-ca.p12 create mode 100644 ansible/roles/es7/test/integration/files/certs/truststore-password.p12 create mode 100644 ansible/roles/es7/test/integration/files/custom_config/elasticsearch create mode 100644 ansible/roles/es7/test/integration/files/custom_config/jvm.options create mode 100644 ansible/roles/es7/test/integration/files/custom_config/log4j2.properties create mode 100644 ansible/roles/es7/test/integration/files/templates-6.x/basic.json create mode 100644 ansible/roles/es7/test/integration/files/templates-7.x/basic.json create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/Gemfile create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/issue_test_spec.rb create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/oss_spec.rb create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/oss_to_xpack_upgrade_spec.rb create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/oss_upgrade_spec.rb create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/shared_spec.rb create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/spec_helper.rb create mode 100644 ansible/roles/es7/test/integration/helpers/serverspec/xpack_upgrade_spec.rb create mode 100644 ansible/roles/es7/test/integration/issue-test.yml create mode 100644 ansible/roles/es7/test/integration/issue-test/issue-test.yml create mode 100644 ansible/roles/es7/test/integration/issue-test/serverspec/default_spec.rb create mode 100644 ansible/roles/es7/test/integration/oss-to-xpack-upgrade.yml create mode 100644 ansible/roles/es7/test/integration/oss-to-xpack-upgrade/oss-to-xpack-upgrade.yml create mode 100644 ansible/roles/es7/test/integration/oss-to-xpack-upgrade/serverspec/default_spec.rb create mode 100644 ansible/roles/es7/test/integration/oss-upgrade.yml create mode 100644 ansible/roles/es7/test/integration/oss-upgrade/oss-upgrade.yml create mode 100644 ansible/roles/es7/test/integration/oss-upgrade/serverspec/default_spec.rb create mode 100644 ansible/roles/es7/test/integration/oss.yml create mode 100644 ansible/roles/es7/test/integration/oss/oss.yml create mode 100644 ansible/roles/es7/test/integration/oss/serverspec/default_spec.rb create mode 120000 ansible/roles/es7/test/integration/xpack-upgrade-trial create mode 100644 ansible/roles/es7/test/integration/xpack-upgrade-trial.yml create mode 100644 ansible/roles/es7/test/integration/xpack-upgrade.yml create mode 100644 ansible/roles/es7/test/integration/xpack-upgrade/serverspec/default_spec.rb create mode 100644 ansible/roles/es7/test/integration/xpack-upgrade/xpack-upgrade.yml create mode 100644 ansible/roles/es7/test/integration/xpack.yml create mode 100644 ansible/roles/es7/test/integration/xpack/serverspec/default_spec.rb create mode 100644 ansible/roles/es7/test/integration/xpack/xpack.yml create mode 100644 ansible/roles/es7/test/matrix.yml create mode 100644 ansible/roles/es7/vars/Debian.yml create mode 100644 ansible/roles/es7/vars/RedHat.yml create mode 100644 ansible/roles/es7/vars/main.yml create mode 100644 pipelines/provision/es7/Jenkinsfile diff --git a/ansible/es7.yml b/ansible/es7.yml new file mode 100644 index 0000000000..692f929ac2 --- /dev/null +++ b/ansible/es7.yml @@ -0,0 +1,28 @@ +- hosts: es7 + become: yes + vars_files: + - ['{{inventory_dir}}/secrets.yml'] + vars: + es_plugins: + - plugin: repository-azure + tasks: + - name: Registering node name + set_fact: + es_instance_name: "{% for servername in play_hosts %}{% if inventory_hostname==servername %}es-{{ loop.index }}{% endif %}{% endfor %}" + roles: + - openjdk + - { role: es7, + es_config: { + cluster.name: "{{ app_es_etc_cluster_name }}", + http.port: 9200, + transport.port: 9300, + node.data: "{{ es_etc_node_data | default('true') }}", + node.master: "{{ es_etc_node_master | default('true') }}", + bootstrap.memory_lock: true, + }, + es_etc_cluster_name: "{{ app_es_etc_cluster_name }}", + es_heap_size: 4g + } + - curl_es_command + tags: + - es diff --git a/ansible/roles/es7/CHANGELOG.md b/ansible/roles/es7/CHANGELOG.md new file mode 100644 index 0000000000..41f7a965b3 --- /dev/null +++ b/ansible/roles/es7/CHANGELOG.md @@ -0,0 +1,263 @@ +# Changelog + +## 7.5.0 - 2019/12/09 + +* 7.5.0 as default version +* 6.8.5 as 6.x tested version + +### Breaking changes + +#### Removing the MAX_THREAD settings + +Ansible-elasticsearch 7.5.0 is removing the option to customize the maximum number of threads the process can start in [#637](https://github.com/elastic/ansible-elasticsearch/pull/637/files#diff-04c6e90faac2675aa89e2176d2eec7d8L408). +We discovered that this option wasn't working anymore since multi-instance support removal in ansible-elasticsearch 7.1.1. +This option will be added back in a following release if it's still relevant regarding latest Elasticsearch evolutions. + +#### Changes about configuration files + +Ansible-elasticsearch 7.5.0 is updating the configuration files provided by this role in [#637](https://github.com/elastic/ansible-elasticsearch/pull/637) which contained some otions deprecated in 6.x and 7.x: +- `/etc/default/elasticsearch`|`/etc/sysconfig/elasticsearch`: the new template reflect the configuration file provided by Elasticsearch >= 6.x, the parameter we removed were already not used in 6.x and 7.x +- `/etc/elasticsearch/jvm.options`: the new template reflect the configuration files provided by Elasticsearch >= 6.x +- `/etc/elasticsearch/log4j2.properties`: + - We removed `log4j2.properties.j2` template from this Ansible role as it was a static file not bringing any customization specific to some ansible variable. + - Deployment of this Ansible role on new servers will get the default `log4j2.properties` provided by Elastisearch without any override. + - **WARNING**: For upgrade scenarios where this file was already managed by previous versions of ansible-elasticsearch, this file will become unmanaged and won't be updated by default. If you wish to update it to 7.5 version, you can retrieve it [here](https://github.com/elastic/elasticsearch/blob/7.5/distribution/src/config/log4j2.properties) and use this file with `es_config_log4j2` Ansible variable (see below). + +##### How to override configuration files provided by ansible-elasticsearch? + +You can now override the configuration files with your own versions by using the following Ansible variables: +- `es_config_default: "elasticsearch.j2"`: replace `elasticsearch.j2` by your own template to use a custom `/etc/default/elasticsearch`|`/etc/sysconfig/elasticsearch` configuration file +- `es_config_jvm: "jvm.options.j2"`: replace `jvm.options.j2` by your own template to use a custom `/etc/elasticsearch/jvm.options` configuration file +- `es_config_log4j2: ""`: set this variable to the path of your own template to use a custom `/etc/elasticsearch/log4j2.properties` configuration file + +### SSL/TLS Support + +Ansible-elasticsearch is now supporting SSL/TLS encryption. Please refer to [X-Pack Security SSL/TLS](https://github.com/elastic/ansible-elasticsearch/blob/master/docs/ssl-tls-setup.md) to configure it. + +| PR | Author | Title | +| ---------------------------------------------------------------- | ---------------------------------------------- | -------------------------------------------- | +|[#625](https://github.com/elastic/ansible-elasticsearch/pull/625) | [@jmlrt](https://github.com/jmlrt) | Add bumper script | +|[#575](https://github.com/elastic/ansible-elasticsearch/pull/575) | [@flyinggecko](https://github.com/flyinggecko) | Docs: Fix name of elasticsearch ansible role | +|[#629](https://github.com/elastic/ansible-elasticsearch/pull/629) | [@patsevanton](https://github.com/patsevanton) | Add cluster.initial_master_nodes | +|[#620](https://github.com/elastic/ansible-elasticsearch/pull/620) | [@pemontto](https://github.com/pemontto) | Add SSL/TLS support | +|[#630](https://github.com/elastic/ansible-elasticsearch/pull/630) | [@jmlrt](https://github.com/jmlrt) | Indent yaml for config file | +|[#636](https://github.com/elastic/ansible-elasticsearch/pull/636) | [@jmlrt](https://github.com/jmlrt) | Bump elasticsearch to 6.8.5 and 7.4.2 | +|[#637](https://github.com/elastic/ansible-elasticsearch/pull/637) | [@jmlrt](https://github.com/jmlrt) | Use default config files | + + +## 7.4.1 - 2019/10/23 + +* 7.4.1 as default version +* 6.8.4 as 6.x tested version + +| PR | Author | Title | +| ---------------------------------------------------------------- | ---------------------------------- | -------------------------------------------------- | +|[#617](https://github.com/elastic/ansible-elasticsearch/pull/617) | [@jmlrt](https://github.com/jmlrt) | Use systemd ansible module for daemon-reload | +|[#618](https://github.com/elastic/ansible-elasticsearch/pull/618) | [@jmlrt](https://github.com/jmlrt) | Fix probot newlines | +|[#619](https://github.com/elastic/ansible-elasticsearch/pull/619) | [@jmlrt](https://github.com/jmlrt) | Fix python AttributeError + format code with black | + + +## 7.4.0 - 2019/10/01 + +* 7.4.0 as default version +* Remove compatibility with versions < 6.3 + +| PR | Author | Title | +| ------------------------------------------------------- | ---------------------------------------------------------- | --------------------------------------------------------- | +|[#575](https://github.com/elastic/ansible-elasticsearch/pull/575) | [@flyinggecko](https://github.com/flyinggecko) | Fix name of Elasticsearch Ansible role | +|[#578](https://github.com/elastic/ansible-elasticsearch/pull/578) | [@jmlrt](https://github.com/jmlrt) | Fix `dict object has no attribute dict_keys` issue with Python3 | +|[#588](https://github.com/elastic/ansible-elasticsearch/pull/588) | [@broferek](https://github.com/broferek) | Move `userid` and `groupid` in a different place in the role | +|[#591](https://github.com/elastic/ansible-elasticsearch/pull/591) | [@Crazybus](https://github.com/Crazybus) | Add back in `force_basic_auth` for all http requests | +|[#582](https://github.com/elastic/ansible-elasticsearch/pull/582) | [@ktibi](https://github.com/ktibi) | Allow disable Elastic official repository setup | +|[#593](https://github.com/elastic/ansible-elasticsearch/pull/593) | [@jmlrt](https://github.com/jmlrt) | Bunch of small fixes | +|[#595](https://github.com/elastic/ansible-elasticsearch/pull/595) | [@broferek](https://github.com/broferek) | Set `limitMEMLOCK` for OS using Systemd| +|[#600](https://github.com/elastic/ansible-elasticsearch/pull/600) | [@titan-architrave](https://github.com/titan-architrave) | Always gather the `es_major_version` variables| +|[#605](https://github.com/elastic/ansible-elasticsearch/pull/605) | [@jmlrt](https://github.com/jmlrt) | Add doc for migration with data move| +|[#601](https://github.com/elastic/ansible-elasticsearch/pull/601) | [@LukeRoz](https://github.com/LukeRoz) | Removing package version hold when `es_version_hold: false`| +|[#612](https://github.com/elastic/ansible-elasticsearch/pull/612) | [@jmlrt](https://github.com/jmlrt) | Add Probot config to manage stale issues/pr| +|[#614](https://github.com/elastic/ansible-elasticsearch/pull/614) | [@jmlrt](https://github.com/jmlrt) | Describe how to select a different elasticsearch version| +|[#609](https://github.com/elastic/ansible-elasticsearch/pull/609) | [@jmlrt](https://github.com/jmlrt) | No more 6.3 compatibility + Use default files permissions from Elasticsearch package| +|[#510](https://github.com/elastic/ansible-elasticsearch/pull/510) | [@verboEse](https://github.com/verboEse) | Don't fetch APT key if existent| + + +## 7.1.1 - 2019/06/04 + +### Breaking changes + +#### End of multi-instance support + +* Starting with ansible-elasticsearch:7.1.1, installing more than one instance of Elasticsearch **on the same host** is no longer supported. +* Configuration, datas, logs and PID directories are now using standard paths like in the official Elasticsearch packages. + +* If you use only one instance but want to upgrade from an older ansible-elasticsearch version, follow [upgrade procedure](./docs/multi-instance.md#upgrade-procedure) +* If you install more than one instance of Elasticsearch on the same host (with different ports, directory and config files), **do not update to ansible-elasticsearch >= 7.1.1**, please follow this [workaround](./docs/multi-instance.md#workaround) instead. +* For multi-instances use cases, we are now recommending Docker containers using our official images (https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html). + +#### Moved some security features to basic + +You can now using basic authentication by overriding `es_api_basic_auth_username` and `es_api_basic_auth_password` variables without providing a license file. + +### Features + +* 7.1.1 as default Elasticsearch version +* [#539](https://github.com/elastic/ansible-elasticsearch/pull/539) and [#542](https://github.com/elastic/ansible-elasticsearch/pull/542) - @grzegorznowak - Make ansible role compatible with ansible [check mode](https://docs.ansible.com/ansible/latest/user_guide/playbooks_checkmode.html) +* [#558](https://github.com/elastic/ansible-elasticsearch/pull/558) - @jmlrt - Add support for Elasticsearch 7.x, remove 5.x support and update tests +* [#560](https://github.com/elastic/ansible-elasticsearch/pull/560) - @jmlrt - Use default xpack features and remove system_key deprecated feature +* [#562](https://github.com/elastic/ansible-elasticsearch/pull/562) - @hamishforbes - Allow to customize instance suffix +* [#566](https://github.com/elastic/ansible-elasticsearch/pull/566) - @jmlrt - Remove multi-instances support +* [#567](https://github.com/elastic/ansible-elasticsearch/pull/567) - @jmlrt - Remove file scripts deprecated feature +* [#568](https://github.com/elastic/ansible-elasticsearch/pull/568) - @jmlrt - Skip Java install for Elasticsearch 7.x (java is now embeded) + +### Fixes + +* [#543](https://github.com/elastic/ansible-elasticsearch/pull/543) - @victorgs - Fix typo in Makefile +* [#546](https://github.com/elastic/ansible-elasticsearch/pull/546) - @thiagonache - Fix README example +* [#550](https://github.com/elastic/ansible-elasticsearch/pull/550) - @pemontto - Fix template conditional +* [#556](https://github.com/elastic/ansible-elasticsearch/pull/556) - @jmlrt - Fix debian-8 test +* [#557](https://github.com/elastic/ansible-elasticsearch/pull/557) - @jmlrt - Bump gem dependencies to fix [CVE-2018-1000544](https://nvd.nist.gov/vuln/detail/CVE-2018-1000544) and [CVE-2018-1000201](https://nvd.nist.gov/vuln/detail/CVE-2018-1000201) +* [#564](https://github.com/elastic/ansible-elasticsearch/pull/564) - @jmlrt - Bump all gem dependencies to fix kitchen tests + + +## 6.6.0 - 2019/01/29 + +### Features + +* 6.6.0 as default Elasticsearch version +* [#521](https://github.com/elastic/ansible-elasticsearch/pull/521) - @Crazybus - Allow switching between oss and standard packages +* [#528](https://github.com/elastic/ansible-elasticsearch/pull/528) - @Fra-nk - Use systemd's RequiresMountsFor +* [#530](https://github.com/elastic/ansible-elasticsearch/pull/530) - @lde - Use dpkg_selections to lock Elasticsearch version + +### Fixes + +* [#513](https://github.com/elastic/ansible-elasticsearch/pull/513) - @kakoni - Fix typo in elasticsearch-parameters.yml +* [#522](https://github.com/elastic/ansible-elasticsearch/pull/522) - @SlothOfAnarchy - Fix package download URL +* [#526](https://github.com/elastic/ansible-elasticsearch/pull/526) - @Fra-nk - Allow not installing Elasticsearch deb repository key +* [#527](https://github.com/elastic/ansible-elasticsearch/pull/527) - @katsukamaru - Execute java version check in check mode + + +## 6.5.1.1 - 2018/11/27 + +### Fixes + +* [#516](https://github.com/elastic/ansible-elasticsearch/pull/516) - @Crazybus - Only attempt to copy the old users file if it actually exists + + +## 6.5.1 - 2018/11/26 + +### Features + +* 6.5.1 as default Elasticsearch version + +### Fixes + +* [#487](https://github.com/elastic/ansible-elasticsearch/pull/487) - @lazouz - Disable check mode to make install plugins idempotent +* [#501](https://github.com/elastic/ansible-elasticsearch/pull/501) - @kaxil - Make the order of configs consistent for comparing +* [#497](https://github.com/elastic/ansible-elasticsearch/pull/497) - @Crazybus - Document es_use_repository and es_custom_package_url +* [#504](https://github.com/elastic/ansible-elasticsearch/pull/504) - @victorgs - Using tests as filters is deprecated +* [#493](https://github.com/elastic/ansible-elasticsearch/pull/493) - @Crazybus - Only use the first found java version if there are multiple installed + + +## 6.4.0 - 2018/08/24 + +### Features + +* 6.4.0 as default Elasticsearch version + +### Fixes + +* [#484](https://github.com/elastic/ansible-elasticsearch/pull/484) - @kimoto - Fix downgrading Elasticsearch on RedHat hosts +* [#476](https://github.com/elastic/ansible-elasticsearch/pull/476) - @Crazybus - Fix version locking for the elasticsearch-oss package + + +## 6.3.1 - 2018/07/05 + +### Features + +* 6.3.1 as default Elasticsearch version + + +## 6.3.0.1 - 2018/06/28 + +### Fixes + +* [#460](https://github.com/elastic/ansible-elasticsearch/pull/460) - @toadjaune - Make sure ansible doesn't fail if the default systemd service file doesn't exist +* [#461](https://github.com/elastic/ansible-elasticsearch/pull/461) - @bilsch - Add missing become root in tasks that require root access + + +## 6.3.0 - 2018/06/18 + +### Breaking changes + +Elasticsearch 6.3 includes several big changes that are reflected in this role. +When upgrading from module versions prior to 6.3, there are a number of upgrade considerations to take into account: + +* This role defaults to the upstream package repositories, which now include X-Pack bundled by default. To preserve previous behavior which does _not_ include X-Pack be sure to explicitly set `es_enable_xpack: false` which will install the `elasticsearch-oss` package. +* Great care has been taken in making sure that all upgrade paths work, however as always please take extra caution when upgrading and test in a non-production environment. New automated tests have been added to make sure that the following upgrade paths work: + * oss to oss + * oss to xpack + * xpack to xpack +* X-Pack configuration files which used to be in `${ES_PATH_CONF}/x-pack` are now in `${ES_PATH_CONF}/`. If you have any configuration files in this directory not managed by ansible you will need to move them manually. + +#### Features + +* Integration testing has been refactored in [#457](https://github.com/elastic/ansible-elasticsearch/pull/457). This removed a lot of duplicate tests and added new tests to make sure all upgrade paths work. +* It is now possible to test Elasticsearch snapshot builds by setting `es_use_snapshot_release` to `true` + +#### Fixes + +* Installing `es_plugins` from custom urls is now idempotent. Previously the plugin name was being compared to the url which meant it would be reinstalled every time ansible was run because they didn't match + +#### Pull requests + +* [#452](https://github.com/elastic/ansible-elasticsearch/pull/452) - @Crazybus - Add initial 6.3 support +* [#454](https://github.com/elastic/ansible-elasticsearch/pull/454) - @Crazybus - Move jenkins matrix file into the repo so test suites are controlled via the pull request workflow +* [#455](https://github.com/elastic/ansible-elasticsearch/pull/455) - @Crazybus - Add automated test for upgrading from oss to oss +* [#457](https://github.com/elastic/ansible-elasticsearch/pull/457) - @Crazybus - Refactor integration tests to remove duplication and add extra suites to make sure all upgrade paths are covered + + +## 6.2.4.1 - 2018/06/14 + +Patch release requested by @average-joe in #453 + +#### Pull requests + +* [#445](https://github.com/elastic/ansible-elasticsearch/pull/445) - @gekkeharry13 - Added configuration options for configuring x-pack notifications via email with some other nice fixes. +* [#450](https://github.com/elastic/ansible-elasticsearch/pull/450) - @Crazybus - improving some flakey tests which were randomly failing. +* [#447](https://github.com/elastic/ansible-elasticsearch/pull/447) - @chaintng - Fix to make sure sudo is used when running `update-alternatives` for java. +* [#423](https://github.com/elastic/ansible-elasticsearch/pull/423) - @eRadical - Fixing the until condition being used when installing rpms from a custom repository. + + +## 6.2.4 - 2018/04/24 + +* `6.2.4` and `5.6.9` as the default versions. + + +## 6.2.3 - 2018/04/21 + +* Thanks to @cl0udf0x for adding proper names to all tasks which were unnamed [#417](https://github.com/elastic/ansible-elasticsearch/pull/417) +* Thanks @cyrilleverrier for having a keen eye and spotting this typo. [#432](https://github.com/elastic/ansible-elasticsearch/pull/432) + + +## 6.2.2 - 2018/02/22 + +* `6.2.2` and `5.6.8` as the default versions +* Thanks to @pemontto for fixing up all of the ansible conditional logic https://github.com/elastic/ansible-elasticsearch/pull/429 +* Thanks @cyrilleverrier for https://github.com/elastic/ansible-elasticsearch/pull/427 which makes sure x-pack settings are not in the config file when x-pack isn't enabled + + +## 6.1.3 - 2018/02/01 + +* `6.x` is now the default `es_major_version` with `6.1.3` as the default `es_version` +* Special thanks to @shribigb, @toddlers and @remil1000 for their efforts in getting `6.x` support working! +* `.kitchen.yml` has been updated to allow testing both `6.x` and `5.x` versions +* A new [Jenkins job](https://devops-ci.elastic.co/job/elastic+ansible-elasticsearch+pull-request/) has been added for pull requests to automatically test all combinations of `6.x` and `5.x` on ubuntu-1404, ubuntu-1604, debian-8 and centos-7 with the various test suites. + + +## 5.5.1 - 2017/08/20 + +* Fixes with respect to issues on restart. +* 5.5.1 update with supporting package scripts. +* Documentation clarification. +* Fixes for loading of templates +* Support for ML +* Ability to install x-pack from remote. diff --git a/ansible/roles/es7/Gemfile b/ansible/roles/es7/Gemfile new file mode 100644 index 0000000000..bf42881ae9 --- /dev/null +++ b/ansible/roles/es7/Gemfile @@ -0,0 +1,6 @@ +source 'https://rubygems.org' + +gem 'test-kitchen' +gem 'kitchen-docker' +gem 'kitchen-ansible' +gem 'net-ssh' diff --git a/ansible/roles/es7/Gemfile.lock b/ansible/roles/es7/Gemfile.lock new file mode 100644 index 0000000000..b7d8dcc6c6 --- /dev/null +++ b/ansible/roles/es7/Gemfile.lock @@ -0,0 +1,117 @@ +GEM + remote: https://rubygems.org/ + specs: + bcrypt_pbkdf (1.0.1) + builder (3.2.3) + ed25519 (1.2.4) + equatable (0.5.0) + erubis (2.7.0) + ffi (1.10.0) + gssapi (1.3.0) + ffi (>= 1.0.1) + gyoku (1.3.1) + builder (>= 2.1.2) + httpclient (2.8.3) + kitchen-ansible (0.50.0) + net-ssh (>= 3) + test-kitchen (>= 1.4) + kitchen-docker (2.9.0) + test-kitchen (>= 1.0.0) + license-acceptance (1.0.11) + pastel (~> 0.7) + tomlrb (~> 1.2) + tty-box (~> 0.3) + tty-prompt (~> 0.18) + little-plugger (1.1.4) + logging (2.2.2) + little-plugger (~> 1.1) + multi_json (~> 1.10) + mixlib-install (3.11.18) + mixlib-shellout + mixlib-versioning + thor + mixlib-shellout (2.4.4) + mixlib-versioning (1.2.7) + multi_json (1.13.1) + necromancer (0.4.0) + net-scp (2.0.0) + net-ssh (>= 2.6.5, < 6.0.0) + net-ssh (5.2.0) + net-ssh-gateway (2.0.0) + net-ssh (>= 4.0.0) + nori (2.6.0) + pastel (0.7.2) + equatable (~> 0.5.0) + tty-color (~> 0.4.0) + rubyntlm (0.6.2) + rubyzip (1.2.2) + strings (0.1.5) + strings-ansi (~> 0.1) + unicode-display_width (~> 1.5) + unicode_utils (~> 1.4) + strings-ansi (0.1.0) + test-kitchen (2.2.5) + bcrypt_pbkdf (~> 1.0) + ed25519 (~> 1.2) + license-acceptance (~> 1.0, >= 1.0.11) + mixlib-install (~> 3.6) + mixlib-shellout (>= 1.2, < 3.0) + net-scp (>= 1.1, < 3.0) + net-ssh (>= 2.9, < 6.0) + net-ssh-gateway (>= 1.2, < 3.0) + thor (~> 0.19) + winrm (~> 2.0) + winrm-elevated (~> 1.0) + winrm-fs (~> 1.1) + thor (0.20.3) + timers (4.3.0) + tomlrb (1.2.8) + tty-box (0.3.0) + pastel (~> 0.7.2) + strings (~> 0.1.4) + tty-cursor (~> 0.6.0) + tty-color (0.4.3) + tty-cursor (0.6.1) + tty-prompt (0.18.1) + necromancer (~> 0.4.0) + pastel (~> 0.7.0) + timers (~> 4.0) + tty-cursor (~> 0.6.0) + tty-reader (~> 0.5.0) + tty-reader (0.5.0) + tty-cursor (~> 0.6.0) + tty-screen (~> 0.6.4) + wisper (~> 2.0.0) + tty-screen (0.6.5) + unicode-display_width (1.6.0) + unicode_utils (1.4.0) + winrm (2.3.2) + builder (>= 2.1.2) + erubis (~> 2.7) + gssapi (~> 1.2) + gyoku (~> 1.0) + httpclient (~> 2.2, >= 2.2.0.2) + logging (>= 1.6.1, < 3.0) + nori (~> 2.0) + rubyntlm (~> 0.6.0, >= 0.6.1) + winrm-elevated (1.1.1) + winrm (~> 2.0) + winrm-fs (~> 1.0) + winrm-fs (1.3.2) + erubis (~> 2.7) + logging (>= 1.6.1, < 3.0) + rubyzip (~> 1.1) + winrm (~> 2.0) + wisper (2.0.0) + +PLATFORMS + ruby + +DEPENDENCIES + kitchen-ansible + kitchen-docker + net-ssh + test-kitchen + +BUNDLED WITH + 1.17.0 diff --git a/ansible/roles/es7/LICENSE b/ansible/roles/es7/LICENSE new file mode 100644 index 0000000000..0455cacdf6 --- /dev/null +++ b/ansible/roles/es7/LICENSE @@ -0,0 +1,13 @@ +Copyright (c) 2012-2016 Elasticsearch + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/ansible/roles/es7/Makefile b/ansible/roles/es7/Makefile new file mode 100644 index 0000000000..92d598fb20 --- /dev/null +++ b/ansible/roles/es7/Makefile @@ -0,0 +1,32 @@ +default: build + +SHELL:=/bin/bash -eux +VERSION := 7.x +PATTERN := xpack-ubuntu-1604 + +.PHONY: converge verify test login destroy list + +setup: + bundle install + docker ps + +converge: + bundle exec kitchen converge $(PATTERN) + +verify: + bundle exec kitchen verify $(PATTERN) + +test: + bundle exec kitchen test $(PATTERN) --destroy=always + +login: + bundle exec kitchen login $(PATTERN) + +destroy: + bundle exec kitchen destroy $(PATTERN) + +destroy-all: + bundle exec kitchen destroy + +list: + bundle exec kitchen list diff --git a/ansible/roles/es7/README.md b/ansible/roles/es7/README.md new file mode 100644 index 0000000000..1defec8f02 --- /dev/null +++ b/ansible/roles/es7/README.md @@ -0,0 +1,500 @@ +# ansible-elasticsearch +[![Build Status](https://img.shields.io/jenkins/s/https/devops-ci.elastic.co/job/elastic+ansible-elasticsearch+master.svg)](https://devops-ci.elastic.co/job/elastic+ansible-elasticsearch+master/) +[![Ansible Galaxy](https://img.shields.io/badge/ansible--galaxy-elastic.elasticsearch-blue.svg)](https://galaxy.ansible.com/elastic/elasticsearch/) + +**THIS ROLE IS FOR 7.x & 6.x** + +Ansible role for 7.x/6.x Elasticsearch. Currently this works on Debian and RedHat based linux systems. Tested platforms are: + +* Ubuntu 14.04 +* Ubuntu 16.04 +* Ubuntu 18.04 +* Debian 8 +* Debian 9 +* CentOS 7 + +The latest Elasticsearch versions of 7.x & 6.x are actively tested. + +## BREAKING CHANGES + +### Notice about multi-instance support + +* If you use only one instance but want to upgrade from an older ansible-elasticsearch version, follow [upgrade procedure](./docs/multi-instance.md#upgrade-procedure) +* If you install more than one instance of Elasticsearch on the same host (with different ports, directory and config files), **do not update to ansible-elasticsearch >= 7.1.1**, please follow this [workaround](./docs/multi-instance.md#workaround) instead. +* For multi-instances use cases, we are now recommending Docker containers using our official images (https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html). + +### Removing the MAX_THREAD settings + +Ansible-elasticsearch 7.5.0 is removing the option to customize the maximum number of threads the process can start in [#637](https://github.com/elastic/ansible-elasticsearch/pull/637/files#diff-04c6e90faac2675aa89e2176d2eec7d8L408). +We discovered that this option wasn't working anymore since multi-instance support removal in ansible-elasticsearch 7.1.1. +This option will be added back in a following release if it's still relevant regarding latest Elasticsearch evolutions. + +### Changes about configuration files + +Ansible-elasticsearch 7.5.0 is updating the configuration files provided by this role in [#637](https://github.com/elastic/ansible-elasticsearch/pull/637) which contained some otions deprecated in 6.x and 7.x: +- `/etc/default/elasticsearch`|`/etc/sysconfig/elasticsearch`: the new template reflect the configuration file provided by Elasticsearch >= 6.x, the parameter we removed were already not used in 6.x and 7.x +- `/etc/elasticsearch/jvm.options`: the new template reflect the configuration files provided by Elasticsearch >= 6.x +- `/etc/elasticsearch/log4j2.properties`: + - We removed `log4j2.properties.j2` template from this Ansible role as it was a static file not bringing any customization specific to some ansible variable. + - Deployment of this Ansible role on new servers will get the default `log4j2.properties` provided by Elastisearch without any override. + - **WARNING**: For upgrade scenarios where this file was already managed by previous versions of ansible-elasticsearch, this file will become unmanaged and won't be updated by default. If you wish to update it to 7.5 version, you can retrieve it [here](https://github.com/elastic/elasticsearch/blob/7.5/distribution/src/config/log4j2.properties) and use this file with `es_config_log4j2` Ansible variable (see below). + +#### How to override configuration files provided by ansible-elasticsearch? + +You can now override the configuration files with your own versions by using the following Ansible variables: +- `es_config_default: "elasticsearch.j2"`: replace `elasticsearch.j2` by your own template to use a custom `/etc/default/elasticsearch`|`/etc/sysconfig/elasticsearch` configuration file +- `es_config_jvm: "jvm.options.j2"`: replace `jvm.options.j2` by your own template to use a custom `/etc/elasticsearch/jvm.options` configuration file +- `es_config_log4j2: ""`: set this variable to the path of your own template to use a custom `/etc/elasticsearch/log4j2.properties` configuration file + +## Dependency + +This role uses the json_query filter which [requires jmespath](https://github.com/ansible/ansible/issues/24319) on the local machine. + +## Usage + +Create your Ansible playbook with your own tasks, and include the role elasticsearch. You will have to have this repository accessible within the context of playbook. + +```sh +ansible-galaxy install elastic.elasticsearch,7.5.0 +``` + +Then create your playbook yaml adding the role elasticsearch. +The application of the elasticsearch role results in the installation of a node on a host. + +The simplest configuration therefore consists of: + +```yaml +- name: Simple Example + hosts: localhost + roles: + - role: elastic.elasticsearch + vars: + es_version: 7.5.0 +``` + +The above installs Elasticsearch 7.5.0 in a single node 'node1' on the hosts 'localhost'. + +**Note**: +Elasticsearch default version is described in [`es_version`](defaults/main.yml#L2). You can override this variable in your playbook to install another version. +While we are testing this role only with one 7.x and one 6.x version (respectively [7.5.0](defaults/main.yml#L2) and [6.8.5](.kitchen.yml#L22) at the time of writing), this role should work with others version also in most cases. + +This role also uses [Ansible tags](http://docs.ansible.com/ansible/playbooks_tags.html). Run your playbook with the `--list-tasks` flag for more information. + +## Testing + +This playbook uses [Kitchen](https://kitchen.ci/) for CI and local testing. + +### Requirements + +* Ruby +* Bundler +* Docker +* Make + +### Running the tests + +* Ensure you have checked out this repository to `elaticsearch`, not `ansible-elasticsearch`. +* If you don't have a Gold or Platinum license to test with you can run the trial versions of the `xpack-upgrade` and `issue-test` suites by appending `-trial` to the `PATTERN` variable. +* You may need to explicity specify `VERSION=7.x` if some suites are failing. + +Install the ruby dependencies with bundler + +```sh +make setup +``` + +If you want to test X-Pack features with a license you will first need to export the `ES_XPACK_LICENSE_FILE` variable. +```sh +export ES_XPACK_LICENSE_FILE="$(pwd)/license.json" +``` + +To converge an Ubuntu 16.04 host running X-Pack +```sh +$ make converge +``` + +To run the tests +```sh +$ make verify +``` + +To list all of the different test suits +```sh +$ make list +``` + +The default test suite is Ubuntu 16.04 with X-Pack. If you want to test another suite you can override this with the `PATTERN` variable +```sh +$ make converge PATTERN=oss-centos-7 +``` + +The `PATTERN` is a kitchen pattern which can match multiple suites. To run all tests for CentOS +```sh +$ make converge PATTERN=centos-7 +``` + +The default version is 7.x. If you want to test 6.x you can override it with the `VERSION` variable, for example: +```sh +$ make converge VERSION=6.x PATTERN=oss-centos-7 +``` + +When you are finished testing you can clean up everything with +```sh +$ make destroy-all +``` + +### Basic Elasticsearch Configuration + +All Elasticsearch configuration parameters are supported. This is achieved using a configuration map parameter 'es_config' which is serialized into the elasticsearch.yml file. +The use of a map ensures the Ansible playbook does not need to be updated to reflect new/deprecated/plugin configuration parameters. + +In addition to the es_config map, several other parameters are supported for additional functions e.g. script installation. These can be found in the role's defaults/main.yml file. + +The following illustrates applying configuration parameters to an Elasticsearch instance. + +```yaml +- name: Elasticsearch with custom configuration + hosts: localhost + roles: + - role: elastic.elasticsearch + vars: + es_data_dirs: + - "/opt/elasticsearch/data" + es_log_dir: "/opt/elasticsearch/logs" + es_config: + node.name: "node1" + cluster.name: "custom-cluster" + discovery.seed_hosts: "localhost:9301" + http.port: 9201 + transport.port: 9301 + node.data: false + node.master: true + bootstrap.memory_lock: true + es_heap_size: 1g + es_api_port: 9201 +``` + +Whilst the role installs Elasticsearch with the default configuration parameters, the following should be configured to ensure a cluster successfully forms: + +* ```es_config['http.port']``` - the http port for the node +* ```es_config['transport.port']``` - the transport port for the node +* ```es_config['discovery.seed_hosts']``` - the unicast discovery list, in the comma separated format ```":,:"``` (typically the clusters dedicated masters) +* ```es_config['cluster.initial_master_nodes']``` - for 7.x and above the list of master-eligible nodes to boostrap the cluster, in the comma separated format ```":,:"``` (typically the node names of the clusters dedicated masters) +* ```es_config['network.host']``` - sets both network.bind_host and network.publish_host to the same host value. The network.bind_host setting allows to control the host different network components will bind on. + +The `network.publish_host` setting allows to control the host the node will publish itself within the cluster so other nodes will be able to connect to it. + +See https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-network.html for further details on default binding behaviour and available options. +The role makes no attempt to enforce the setting of these are requires users to specify them appropriately. It is recommended master nodes are listed and thus deployed first where possible. + +A more complex example: + +```yaml +- name: Elasticsearch with custom configuration + hosts: localhost + roles: + - role: elastic.elasticsearch + vars: + es_data_dirs: + - "/opt/elasticsearch/data" + es_log_dir: "/opt/elasticsearch/logs" + es_config: + node.name: "node1" + cluster.name: "custom-cluster" + discovery.seed_hosts: "localhost:9301" + http.port: 9201 + transport.port: 9301 + node.data: false + node.master: true + bootstrap.memory_lock: true + es_heap_size: 1g + es_start_service: false + es_api_port: 9201 + es_plugins: + - plugin: ingest-attachment + proxy_host: proxy.example.com + proxy_port: 8080 +``` + +#### Important Note + +**The role uses es_api_host and es_api_port to communicate with the node for actions only achievable via http e.g. to install templates and to check the NODE IS ACTIVE. These default to "localhost" and 9200 respectively. +If the node is deployed to bind on either a different host or port, these must be changed.** + +### Multi Node Server Installations + +The application of the elasticsearch role results in the installation of a node on a host. Specifying the role multiple times for a host therefore results in the installation of multiple nodes for the host. + +An example of a three server deployment is shown below. The first server holds the master and is thus declared first. Whilst not mandatory, this is recommended in any multi node cluster configuration. The two others servers hosts data nodes. + +**Note that we do not support anymore installation of more than one node in the same host** + +```yaml +- hosts: master_node + roles: + - role: elastic.elasticsearch + vars: + es_heap_size: "1g" + es_config: + cluster.name: "test-cluster" + cluster.initial_master_nodes: "elastic02:9300" + discovery.seed_hosts: "elastic02:9300" + http.port: 9200 + node.data: false + node.master: true + bootstrap.memory_lock: false + es_plugins: + - plugin: ingest-attachment + +- hosts: data_node_1 + roles: + - role: elastic.elasticsearch + vars: + es_data_dirs: + - "/opt/elasticsearch" + es_config: + cluster.name: "test-cluster" + cluster.initial_master_nodes: "elastic02:9300" + discovery.seed_hosts: "elastic02:9300" + http.port: 9200 + node.data: true + node.master: false + bootstrap.memory_lock: false + es_plugins: + - plugin: ingest-attachment + +- hosts: data_node_2 + roles: + - role: elastic.elasticsearch + vars: + es_config: + cluster.name: "test-cluster" + discovery.seed_hosts: "elastic02:9300" + http.port: 9200 + node.data: true + node.master: false + bootstrap.memory_lock: false + es_plugins: + - plugin: ingest-attachment +``` + +Parameters can additionally be assigned to hosts using the inventory file if desired. + +Make sure your hosts are defined in your ```inventory``` file with the appropriate ```ansible_ssh_host```, ```ansible_ssh_user``` and ```ansible_ssh_private_key_file``` values. + +Then run it: + +```sh +ansible-playbook -i hosts ./your-playbook.yml +``` + +### Installing X-Pack Features + +X-Pack features, such as Security, are supported. + +The parameter `es_xpack_features` allows to list xpack features to install (example: `["alerting","monitoring","graph","security","ml"]`). +When the list is empty, it installs all features available with the current licence. + +* ```es_role_mapping``` Role mappings file declared as yml as described [here](https://www.elastic.co/guide/en/x-pack/current/mapping-roles.html) + + +```yaml +es_role_mapping: + power_user: + - "cn=admins,dc=example,dc=com" + user: + - "cn=users,dc=example,dc=com" + - "cn=admins,dc=example,dc=com" +``` + +* ```es_users``` - Users can be declared here as yml. Two sub keys 'native' and 'file' determine the realm under which realm the user is created. Beneath each of these keys users should be declared as yml entries. e.g. + +```yaml +es_users: + native: + kibana4_server: + password: changeMe + roles: + - kibana4_server + file: + es_admin: + password: changeMe + roles: + - admin + testUser: + password: changeMeAlso! + roles: + - power_user + - user +``` + + +* ```es_roles``` - Elasticsearch roles can be declared here as yml. Two sub keys 'native' and 'file' determine how the role is created i.e. either through a file or http(native) call. Beneath each key list the roles with appropriate permissions, using the file based format described [here] (https://www.elastic.co/guide/en/x-pack/current/file-realm.html) e.g. + +```yaml +es_roles: + file: + admin: + cluster: + - all + indices: + - names: '*' + privileges: + - all + power_user: + cluster: + - monitor + indices: + - names: '*' + privileges: + - all + user: + indices: + - names: '*' + privileges: + - read + kibana4_server: + cluster: + - monitor + indices: + - names: '.kibana' + privileges: + - all + native: + logstash: + cluster: + - manage_index_templates + indices: + - names: 'logstash-*' + privileges: + - write + - delete + - create_index +``` + +* ```es_xpack_license``` - X-Pack license. The license is a json blob. Set the variable directly (possibly protected by Ansible vault) or from a file in the Ansible project on the control machine via a lookup: + +```yaml +es_xpack_license: "{{ lookup('file', playbook_dir + '/files/' + es_cluster_name + '/license.json') }}" +``` + +If you don't have a license you can enable the 30-day trial by setting `es_xpack_trial` to `true`. + +X-Pack configuration parameters can be added to the elasticsearch.yml file using the normal `es_config` parameter. + +For a full example see [here](https://github.com/elastic/ansible-elasticsearch/blob/master/test/integration/xpack-upgrade.yml) + +#### Important Note for Native Realm Configuration + +In order for native users and roles to be configured, the role calls the Elasticsearch API. Given security is installed this requires definition of two parameters: + +* ```es_api_basic_auth_username``` - admin username +* ```es_api_basic_auth_password``` - admin password + +These can either be set to a user declared in the file based realm, with admin permissions, or the default "elastic" superuser (default password is changeme). + +#### X-Pack Security SSL/TLS + +* To configure your cluster with SSL/TLS for HTTP and/or transport communications follow the [SSL/TLS setup procedure](./docs/ssl-tls-setup.md) + + +### Additional Configuration + +In addition to es_config, the following parameters allow the customization of the Java and Elasticsearch versions as well as the role behaviour. Options include: + +* ```es_enable_xpack``` Default `true`. Setting this to `false` will install the oss release of elasticsearch +* `es_xpack_trial` Default `false`. Setting this to `true` will start the 30-day trail once the cluster starts. +* ```es_version``` (e.g. "7.5.0"). +* ```es_api_host``` The host name used for actions requiring HTTP e.g. installing templates. Defaults to "localhost". +* ```es_api_port``` The port used for actions requiring HTTP e.g. installing templates. Defaults to 9200. **CHANGE IF THE HTTP PORT IS NOT 9200** +* ```es_api_basic_auth_username``` The Elasticsearch username for making admin changing actions. Used if Security is enabled. Ensure this user is admin. +* ```es_api_basic_auth_password``` The password associated with the user declared in `es_api_basic_auth_username` +* `es_delete_unmanaged_file` Default `true`. Set to false to keep file realm users that have been added outside of ansible. +* `es_delete_unmanaged_native` Default `true`. Set to false to keep native realm users that have been added outside of ansible. +* ```es_start_service``` (true (default) or false) +* ```es_plugins_reinstall``` (true or false (default) ) +* ```es_plugins``` an array of plugin definitions e.g.: + + ```yaml + es_plugins: + - plugin: ingest-attachment + ``` + +* ```es_path_repo``` Sets the whitelist for allowing local back-up repositories +* ```es_action_auto_create_index``` Sets the value for auto index creation, use the syntax below for specifying indexes (else true/false): + es_action_auto_create_index: '[".watches", ".triggered_watches", ".watcher-history-*"]' +* ```es_allow_downgrades``` For development purposes only. (true or false (default) ) +* ```es_java_install``` If set to true, Java will be installed. (false (default for 7.x) or true (default for 6.x)) +* ```update_java``` Updates Java to the latest version. (true or false (default)) +* ```es_max_map_count``` maximum number of VMA (Virtual Memory Areas) a process can own. Defaults to 262144. +* ```es_max_open_files``` the maximum file descriptor number that can be opened by this process. Defaults to 65536. +* ```es_debian_startup_timeout``` how long Debian-family SysV init scripts wait for the service to start, in seconds. Defaults to 10 seconds. +* ```es_use_repository``` Setting this to `false` will stop Ansible from using the official Elastic package from any repository configured on the system. +* ```es_add_repository``` Setting this to `false` will stop Ansible to add the official Elastic package repositories (if es_use_repository is true) if you want to use a repo already present. +* ```es_custom_package_url``` the URL to the rpm or deb package for Ansible to install. When using this you will also need to set `es_use_repository: false` and make sure that the `es_version` matches the version being installed from your custom URL. E.g. `es_custom_package_url: https://downloads.example.com/elasticsearch.rpm` + +Earlier examples illustrate the installation of plugins using `es_plugins`. For officially supported plugins no version or source delimiter is required. The plugin script will determine the appropriate plugin version based on the target Elasticsearch version. For community based plugins include the full url. This approach should NOT be used for the X-Pack plugin. See X-Pack below for details here. + +If installing Monitoring or Alerting, ensure the license plugin is also specified. Security configuration currently has limited support, but more support is planned for later versions. + +To configure X-pack to send mail, the following configuration can be added to the role. When require_auth is true, you will also need to provide the user and password. If not these can be removed: + +```yaml + es_mail_config: + account: + profile: standard + from: + require_auth: + host: + port: + user: --optional + pass: --optional +``` + +* ```es_user``` - defaults to elasticsearch. +* ```es_group``` - defaults to elasticsearch. +* ```es_user_id``` - default is undefined. +* ```es_group_id``` - default is undefined. + +Both ```es_user_id``` and ```es_group_id``` must be set for the user and group ids to be set. + +* ```es_restart_on_change``` - defaults to true. If false, changes will not result in Elasticsearch being restarted. +* ```es_plugins_reinstall``` - defaults to false. If true, all currently installed plugins will be removed from a node. Listed plugins will then be re-installed. + +This role ships with sample templates located in the [files/templates/](files/templates) directory. `es_templates_fileglob` variable (defaults to `/files/templates/`) is used with the Ansible [with_fileglob](http://docs.ansible.com/ansible/playbooks_loops.html#id4) loop. When setting the globs, be sure to use an absolute path. + +### Proxy + +To define proxy globally, set the following variables: + +* ```es_proxy_host``` - global proxy host +* ```es_proxy_port``` - global proxy port + +To define proxy only for a particular plugin during its installation: + +```yaml + es_plugins: + - plugin: ingest-attachment + proxy_host: proxy.example.com + proxy_port: 8080 +``` + +> For plugins installation, proxy_host and proxy_port are used first if they are defined and fallback to the global proxy settings if not. The same values are currently used for both the http and https proxy settings. + +## Notes + +* The role assumes the user/group exists on the server. The elasticsearch packages create the default elasticsearch user. If this needs to be changed, ensure the user exists. +* The playbook relies on the inventory_name of each host to ensure its directories are unique +* KitchenCI has been used for testing. This is used to confirm images reach the correct state after a play is first applied. We currently test the latest version of 7.x and 6.x on all supported platforms. +* The role aims to be idempotent. Running the role multiple times, with no changes, should result in no state change on the server. If the configuration is changed, these will be applied and Elasticsearch restarted where required. +* In order to run x-pack tests a license file with security enabled is required. Set the environment variable `ES_XPACK_LICENSE_FILE` to the full path of the license file prior to running tests. A trial license is appropriate and can be used by setting `es_xpack_trial` to `true` + +## IMPORTANT NOTES RE PLUGIN MANAGEMENT + +* If the ES version is changed, all plugins will be removed. Those listed in the playbook will be re-installed. This is behaviour is required in ES 6.x. +* If no plugins are listed in the playbook for a node, all currently installed plugins will be removed. +* The role supports automatic detection of differences between installed and listed plugins - installing those listed but not installed, and removing those installed but not listed. Should users wish to re-install plugins they should set es_plugins_reinstall to true. This will cause all currently installed plugins to be removed and those listed to be installed. + +## Questions on Usage + +We welcome questions on how to use the role. However, in order to keep the GitHub issues list focused on "issues" we ask the community to raise questions at https://discuss.elastic.co/c/elasticsearch. This is monitored by the maintainers. diff --git a/ansible/roles/es7/ansible.cfg b/ansible/roles/es7/ansible.cfg new file mode 100644 index 0000000000..0440d4894b --- /dev/null +++ b/ansible/roles/es7/ansible.cfg @@ -0,0 +1 @@ +[defaults] diff --git a/ansible/roles/es7/defaults/main.yml b/ansible/roles/es7/defaults/main.yml new file mode 100644 index 0000000000..8647d2f7ad --- /dev/null +++ b/ansible/roles/es7/defaults/main.yml @@ -0,0 +1,68 @@ +--- +es_version: "7.5.0" +es_use_snapshot_release: false +es_enable_xpack: true +es_package_name: "elasticsearch" +es_version_lock: false +es_use_repository: true +es_add_repository: true +es_templates_fileglob: "files/templates-{{ es_major_version }}/*.json" +es_repo_base: "https://artifacts.elastic.co" +es_apt_key: "{{ es_repo_base }}/GPG-KEY-elasticsearch" +es_apt_url: "deb {{ es_repo_base }}/packages/{{ es_repo_name }}/apt stable main" +es_apt_url_old: "deb http://packages.elastic.co/elasticsearch/{{ es_repo_name }}/debian stable main" +es_start_service: true +es_java_install: "{{ false if (es_version is version_compare('7.0.0', '>=')) else true }}" +update_java: false +es_restart_on_change: true +es_plugins_reinstall: false +es_templates: false +es_user: elasticsearch +es_group: elasticsearch +es_config: {} +es_config_default: "elasticsearch.j2" +es_config_log4j2: "" +es_config_jvm: "jvm.options.j2" +#Need to provide default directories +es_conf_dir: "/etc/elasticsearch" +es_pid_dir: "/var/run/elasticsearch" +es_data_dirs: + - "/var/lib/elasticsearch" +es_log_dir: "/var/log/elasticsearch" +es_action_auto_create_index: true +es_max_open_files: 65536 +es_max_map_count: 262144 +es_allow_downgrades: false +es_xpack_features: [] +es_xpack_trial: false +#These are used for internal operations performed by ansible. +#They do not affect the current configuration +es_api_scheme: "http" +es_api_host: "localhost" +es_api_port: 9200 +es_api_uri: "{{ es_api_scheme }}://{{ es_api_host }}:{{ es_api_port }}" +es_security_api: "{{ '_security' if es_version is version_compare('7.0.0', '>=') else '_xpack/security' }}" +es_license_api: "{{ '_license' if es_version is version_compare('7.0.0', '>=') else '_xpack/license' }}" +es_api_sleep: 15 +es_debian_startup_timeout: 10 + +# JVM custom parameters +es_jvm_custom_parameters: '' + +# SSL/TLS parameters +es_enable_auto_ssl_configuration: true +es_enable_http_ssl: false +es_enable_transport_ssl: false +es_ssl_keystore: "" +es_ssl_keystore_password: "" +es_ssl_truststore: "" +es_ssl_truststore_password: "" +es_ssl_key: "" +es_ssl_key_password: "" +es_ssl_certificate: "" +es_ssl_certificate_authority: "" +es_ssl_certificate_path: "{{ es_conf_dir }}/certs" +es_ssl_verification_mode: "certificate" +es_validate_certs: "yes" +es_delete_unmanaged_file: true +es_delete_unmanaged_native: true diff --git a/ansible/roles/es7/docs/multi-instance.md b/ansible/roles/es7/docs/multi-instance.md new file mode 100644 index 0000000000..57b62388ef --- /dev/null +++ b/ansible/roles/es7/docs/multi-instance.md @@ -0,0 +1,145 @@ +# Multi-instance Support + +Starting with ansible-elasticsearch:7.1.1, installing more than one instance of Elasticsearch **on the same host** is no longer supported. + +See [554#issuecomment-496804929](https://github.com/elastic/ansible-elasticsearch/issues/554#issuecomment-496804929) for more details about why we removed it. + +## Upgrade procedure + +If you have single-instances hosts and want to upgrade from previous versions of the role: + +### Procedure with data move + +This procedure will allow you to move your data to the new standard paths (see [#581](https://github.com/elastic/ansible-elasticsearch/issues/581)): + +1. Stop Elasticsearch before the migration + +2. Migrate your data to the new standard paths: +``` +# mv /etc/elasticsearch/${ES_INSTANCE_NAME}/* /etc/elasticsearch/ && rm -fr /etc/elasticsearch/${ES_INSTANCE_NAME}/ +mv: overwrite '/etc/elasticsearch/elasticsearch.keystore'? y +# mv /var/lib/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/* /var/lib/elasticsearch/ && rm -fr /var/lib/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/ +# ls /var/lib/elasticsearch/ +nodes +# mv /var/log/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/* /var/log/elasticsearch/ && rm -fr /var/log/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/ +# rm -fr /var/run/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/ +``` + +3. Update playbook (remove `es_conf_dir`, `es_data_dirs`, `es_log_dir`, `es_pid_dir` and `es_instance_name` variables) + +4. Update ansible-role to new version ([7.1.1](https://github.com/elastic/ansible-elasticsearch/releases/tag/7.1.1) at the time of writing) and deploy ansible-role + +5. After ansible-role new deployment, you can do some cleanup of old Init file and Default file: + +Example: +``` +$ systemctl stop elasticsearch +$ mv /etc/elasticsearch/${ES_INSTANCE_NAME}/* /etc/elasticsearch/ && rm -fr /etc/elasticsearch/${ES_INSTANCE_NAME}/ +mv: overwrite '/etc/elasticsearch/elasticsearch.keystore'? y +$ mv /var/lib/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/* /var/lib/elasticsearch/ && rm -fr /var/lib/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/ +$ ls /var/lib/elasticsearch/ +nodes +$ mv /var/log/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/* /var/log/elasticsearch/ && rm -fr /var/log/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/ +$ rm -fr /var/run/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}/ +$ ansible-galaxy install --force elastic.elasticsearch,7.1.1 +- changing role elastic.elasticsearch from 6.6.0 to 7.1.1 +- downloading role 'elasticsearch', owned by elastic +- downloading role from https://github.com/elastic/ansible-elasticsearch/archive/7.1.1.tar.gz +- extracting elastic.elasticsearch to /home/jmlrt/.ansible/roles/elastic.elasticsearch +- elastic.elasticsearch (7.1.1) was installed successfully +$ ansible-playbook playbook.yml + +... + +TASK [elastic.elasticsearch : Create Directories] +ok: [localhost] => (item=/var/run/elasticsearch) +ok: [localhost] => (item=/var/log/elasticsearch) +changed: [localhost] => (item=/etc/elasticsearch) +ok: [localhost] => (item=/var/lib/elasticsearch) + +TASK [elastic.elasticsearch : Copy Configuration File] +changed: [localhost] + +TASK [elastic.elasticsearch : Copy Default File] +changed: [localhost] + +TASK [elastic.elasticsearch : Copy jvm.options File] +changed: [localhost] + +... + +RUNNING HANDLER [elastic.elasticsearch : restart elasticsearch] +changed: [localhost] + +... + +PLAY RECAP +localhost : ok=26 changed=6 unreachable=0 failed=0 skipped=116 rescued=0 ignored=0 +$ find /etc -name '${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME}*' +/etc/default/node1_elasticsearch +/etc/systemd/system/multi-user.target.wants/node1_elasticsearch.service +``` + +### Procedure without data move + +This procedure will allow you to keep your data to the old paths: + +1. Override these variables to match previous values: +```yaml +es_conf_dir: /etc/elasticsearch/${ES_INSTANCE_NAME} +es_data_dirs: + - /var/lib/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME} +es_log_dir: /var/log/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME} +es_pid_dir: /var/run/elasticsearch/${INVENTORY_HOSTNAME}-${ES_INSTANCE_NAME} +``` + +2. Deploy ansible-role. **Even if these variables are overrided, Elasticsearch config file and default option file will change, which imply an Elasticsearch restart.** + +3. After ansible-role new deployment, you can do some cleanup of old Init file and Default file. + +Example: +```bash +$ ansible-playbook -e '{"es_conf_dir":"/etc/elasticsearch/node1","es_data_dirs":["/var/lib/elasticsearch/localhost-node1"],"es_log_dir":"/var/log/elasticsearch/localhost-node1","es_pid_dir":"/var/run/elasticsearch/localhost-node1"}' playbook.yml +... +TASK [elasticsearch : Create Directories] ********************************************************************************************************************************************************************************************************************** +ok: [localhost] => (item=/var/run/elasticsearch/localhost-node1) +ok: [localhost] => (item=/var/log/elasticsearch/localhost-node1) +ok: [localhost] => (item=/etc/elasticsearch/node1) +ok: [localhost] => (item=/var/lib/elasticsearch/localhost-node1) + +TASK [elasticsearch : Copy Configuration File] ***************************************************************************************************************************************************************************************************************** +changed: [localhost] + +TASK [elasticsearch : Copy Default File] *********************************************************************************************************************************************************************************************************************** +changed: [localhost] +... +PLAY RECAP ***************************************************************************************************************************************************************************************************************************************************** +localhost : ok=32 changed=3 unreachable=0 failed=0 + +$ find /etc -name 'node1_elasticsearch*' +/etc/default/node1_elasticsearch +/etc/systemd/system/multi-user.target.wants/node1_elasticsearch.service +$ rm /etc/default/node1_elasticsearch /etc/systemd/system/multi-user.target.wants/node1_elasticsearch.service +``` + +## Workaround + +If you use more than one instance of Elasticsearch on the same host (with different ports, directory and config files), you are still be able to install Elasticsearch 6.x and 7.x in multi-instance mode by using ansible-elasticsearch commit [25bd09f](https://github.com/elastic/ansible-elasticsearch/commit/25bd09f6835b476b6a078676a7d614489a6739c5) (last commit before multi-instance removal) and overriding `es_version` variable: + +```sh +$ cat << EOF >> requirements.yml # require git +- src: https://github.com/elastic/ansible-elasticsearch + version: 25bd09f + name: elasticsearch +EOF +$ ansible-galaxy install -r requirements.yml +$ cat << EOF >> playbook.yml +- hosts: localhost + roles: + - role: elasticsearch + vars: + es_instance_name: "node1" + es_version: 7.1.1 # or 6.8.0 for example +EOF +$ ansible-playbook playbook.yml +``` diff --git a/ansible/roles/es7/docs/ssl-tls-setup.md b/ansible/roles/es7/docs/ssl-tls-setup.md new file mode 100644 index 0000000000..a887e653a3 --- /dev/null +++ b/ansible/roles/es7/docs/ssl-tls-setup.md @@ -0,0 +1,78 @@ +# X-Pack Security SSL/TLS + +The role allows configuring HTTP and transport layer SSL/TLS for the cluster. You will need to generate and provide your own PKCS12 or PEM encoded certificates as described in [Encrypting communications in Elasticsearch](https://www.elastic.co/guide/en/elasticsearch/reference/7.4/configuring-tls.html#configuring-tls). + +If you don't want this role to add autogenerated SSL configuration to elasticsearch.yml set `es_enable_auto_ssl_configuration` to `false` (default: `true`). + +The following should be configured to ensure a security-enabled cluster successfully forms: + +* `es_enable_http_ssl` Default `false`. Setting this to `true` will enable HTTP client SSL/TLS +* `es_enable_transport_ssl` - Default `false`. Setting this to `true` will enable transport layer SSL/TLS + +When using a [PKCS12](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-settings.html#security-http-pkcs12-files) keystore and truststore: + +* `es_ssl_keystore` path to your PKCS12 keystore (can be the same as `es_ssl_truststore`) +* `es_ssl_keystore_password` set this if your keystore is protected with a password +* `es_ssl_truststore` path to your PKCS12 keystore (can be the same as `es_ssl_keystore`) +* `es_ssl_truststore_password` set this if your truststore is protected with a password + +When using [PEM encoded](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-settings.html#_pem_encoded_files_3) certificates: + +* `es_ssl_key` path to your SSL key +* `es_ssl_key_password` set this if your SSL key is protected with a password +* `es_ssl_certificate` the path to your SSL certificate + +## Generating an SSL keystore + +With a password: + +```shell +$ bin/elasticsearch-certutil ca --out ./my-ca.p12 --pass "ca_password" +$ bin/elasticsearch-certutil cert --ca ./my-ca.p12 --ca-pass "ca_password" --out ./my-keystore.p12 --pass "keystore_password" +``` + +Without a password: + +```shell +$ bin/elasticsearch-certutil ca --out ./my-ca.p12 --pass "" +$ bin/elasticsearch-certutil cert --ca ./my-ca.p12 --out ./my-keystore.p12 --pass "" +``` + +## Additional optional SSL/TLS configuration + +* `es_enable_auto_ssl_configuration` Default `true`. Whether this role should add automatically generated SSL config to elasticsearch.yml. +* `es_ssl_certificate_path` Default `{{ es_conf_dir }}/certs`. The location where certificates should be stored on the ES node. +* `es_ssl_verification_mode` Default `certificate`. See [SSL verification_mode](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-settings.html#ssl-tls-settings) for options. +* `es_ssl_certificate_authority` PEM encoded certificate file that should be trusted. +* `es_validate_certs` Default `yes`. Determines if ansible should validate SSL certificates when performing actions over HTTPS. e.g. installing templates and managing native users. + +## Example SSL/TLS configuration + +```yaml +- name: Elasticsearch with SSL/TLS enabled + hosts: localhost + roles: + - role: elastic.elasticsearch + vars: + es_config: + node.name: "node1" + cluster.name: "custom-cluster" + discovery.seed_hosts: "localhost:9301" + http.port: 9201 + transport.port: 9301 + node.data: false + node.master: true + bootstrap.memory_lock: true + xpack.security.authc.realms.file.file1.order: 0 + xpack.security.authc.realms.native.native1.order: 1 + es_heap_size: 1g + es_api_basic_auth_username: elastic + es_api_basic_auth_password: changeme + es_enable_http_ssl: true + es_enable_transport_ssl: true + es_ssl_keystore: "files/certs/my-keystore.p12" + es_ssl_truststore: "files/certs/my-truststore.p12" + es_ssl_keystore_password: "keystore_password" + es_ssl_truststore_password: "truststore_password" + es_validate_certs: no +``` diff --git a/ansible/roles/es7/files/systemd/elasticsearch_override.conf b/ansible/roles/es7/files/systemd/elasticsearch_override.conf new file mode 100644 index 0000000000..bf0220364c --- /dev/null +++ b/ansible/roles/es7/files/systemd/elasticsearch_override.conf @@ -0,0 +1,2 @@ +[Service] +LimitMEMLOCK=infinity diff --git a/ansible/roles/es7/filter_plugins/custom.py b/ansible/roles/es7/filter_plugins/custom.py new file mode 100644 index 0000000000..443627b050 --- /dev/null +++ b/ansible/roles/es7/filter_plugins/custom.py @@ -0,0 +1,75 @@ +__author__ = "dale mcdiarmid" + +import re +import os.path +from six import string_types + + +def modify_list(values=[], pattern="", replacement="", ignorecase=False): + """ Perform a `re.sub` on every item in the list""" + if ignorecase: + flags = re.I + else: + flags = 0 + _re = re.compile(pattern, flags=flags) + return [_re.sub(replacement, value) for value in values] + + +def append_to_list(values=[], suffix=""): + if isinstance(values, string_types): + values = values.split(",") + return [str(value + suffix) for value in values] + + +def array_to_str(values=[], separator=","): + return separator.join(values) + + +def extract_role_users(users={}, exclude_users=[]): + role_users = [] + for user, details in users.items(): + if user not in exclude_users and "roles" in details: + for role in details["roles"]: + role_users.append(role + ":" + user) + return role_users + + +def filename(filename=""): + return os.path.splitext(os.path.basename(filename))[0] + + +def remove_reserved(user_roles={}): + not_reserved = [] + for user_role, details in user_roles.items(): + if ( + not "metadata" in details + or not "_reserved" in details["metadata"] + or not details["metadata"]["_reserved"] + ): + not_reserved.append(user_role) + return not_reserved + + +def filter_reserved(users_role={}): + reserved = [] + for user_role, details in users_role.items(): + if ( + "metadata" in details + and "_reserved" in details["metadata"] + and details["metadata"]["_reserved"] + ): + reserved.append(user_role) + return reserved + + +class FilterModule(object): + def filters(self): + return { + "modify_list": modify_list, + "append_to_list": append_to_list, + "filter_reserved": filter_reserved, + "array_to_str": array_to_str, + "extract_role_users": extract_role_users, + "remove_reserved": remove_reserved, + "filename": filename, + } diff --git a/ansible/roles/es7/handlers/main.yml b/ansible/roles/es7/handlers/main.yml new file mode 100644 index 0000000000..e2fb1765df --- /dev/null +++ b/ansible/roles/es7/handlers/main.yml @@ -0,0 +1,15 @@ + +- name: reload systemd configuration + become: yes + systemd: + daemon_reload: true + +# Restart service and ensure it is enabled + +- name: restart elasticsearch + become: yes + service: name=elasticsearch state=restarted enabled=yes + when: + - es_restart_on_change + - es_start_service + register: es_restarted diff --git a/ansible/roles/es7/helpers/bumper.py b/ansible/roles/es7/helpers/bumper.py new file mode 100755 index 0000000000..2c292f2bed --- /dev/null +++ b/ansible/roles/es7/helpers/bumper.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python3 +import fileinput +import os + +""" +This script is used to bump elasticsearch versions before a new release + +Usage: +- Change the values of `old_versions` and `new_versions`` +- Run the script: `./bumper.py` +- That's all +""" + +os.chdir(os.path.join(os.path.dirname(__file__), '..')) + +old_versions = { + 6: '6.8.4', + 7: '7.4.2', +} + +new_versions = { + 6: '6.8.5', + 7: '7.5.0', +} + +files = [ + 'README.md', + 'defaults/main.yml', + '.kitchen.yml', +] + +for major, version in old_versions.items(): + for file in files: + print(file) + for line in fileinput.input([file], inplace=True): + print(line.replace(version, new_versions[major]), end='') diff --git a/ansible/roles/es7/meta/main.yml b/ansible/roles/es7/meta/main.yml new file mode 100644 index 0000000000..3ca10f64e8 --- /dev/null +++ b/ansible/roles/es7/meta/main.yml @@ -0,0 +1,27 @@ +--- + +allow_duplicates: yes + +galaxy_info: + author: Robin Clarke, Jakob Reiter, Dale McDiarmid + description: Elasticsearch for Linux + company: "Elastic.co" + license: "license (Apache)" + min_ansible_version: 2.4.2 + platforms: + - name: EL + versions: + - 6 + - 7 + - name: Debian + versions: + - all + - name: Ubuntu + versions: + - all + - galaxy_tags: + - elastic + - elasticsearch + - elk + - logging +dependencies: [] diff --git a/ansible/roles/es7/tasks/compatibility-variables.yml b/ansible/roles/es7/tasks/compatibility-variables.yml new file mode 100644 index 0000000000..f624d145e6 --- /dev/null +++ b/ansible/roles/es7/tasks/compatibility-variables.yml @@ -0,0 +1,30 @@ +--- + +# It is possible to set these are defaults with messy jinja templating one liners however: +# 1. That is really hard to read and debug +# 2. When running multiple plays with the same role the defaults are not re-evaluated. An example of this +# can be seen in our the https://github.com/elastic/ansible-elasticsearch/blob/master/test/integration/xpack.yml +# integration test and in the Multi Node server documentation examples https://github.com/elastic/ansible-elasticsearch/blob/master/test/integration/xpack.yml + +- name: Set the defaults here otherwise they can't be overriden in the same play if the role is called twice + set_fact: + es_repo_name: "{{ es_major_version }}" + es_package_name: "elasticsearch" + es_other_package_name: "elasticsearch-oss" + es_other_repo_name: "{{ 'oss-' + es_major_version }}" + es_other_apt_url: "deb {{ es_repo_base }}/packages/{{ 'oss-' + es_major_version }}/apt stable main" + +- name: Use the oss repo and package if xpack is not being used + set_fact: + es_repo_name: "{{ 'oss-' + es_major_version }}" + es_other_repo_name: "{{ es_major_version }}" + es_other_apt_url: "deb {{ es_repo_base }}/packages/{{ es_major_version }}/apt stable main" + es_package_name: "elasticsearch-oss" + es_other_package_name: "elasticsearch" + when: + - not es_enable_xpack + +- name: Set the URL scheme to https if SSL/TLS is enabled + set_fact: + es_api_scheme: "https" + when: es_enable_http_ssl | bool diff --git a/ansible/roles/es7/tasks/elasticsearch-Debian.yml b/ansible/roles/es7/tasks/elasticsearch-Debian.yml new file mode 100644 index 0000000000..50e1ae7e15 --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-Debian.yml @@ -0,0 +1,116 @@ +--- + +- name: set fact force_install to no + set_fact: force_install=no + +- name: set fact force_install to yes + set_fact: force_install=yes + when: es_allow_downgrades + +- name: Gracefully stop and remove elasticsearch package if switching between OSS and standard + become: yes + block: + - name: Check if the elasticsearch package is installed + shell: "dpkg-query -W -f'${Status}' {{ es_other_package_name }}" + register: elasticsearch_package + failed_when: False + changed_when: False + check_mode: no + + - name: unhold elasticsearch package when switching to a different package type + become: yes + dpkg_selections: + name: "{{ es_other_package_name }}" + selection: "install" + when: elasticsearch_package.stdout == 'install ok installed' + + - name: stop elasticsearch + service: + name: 'elasticsearch' + state: stopped + when: elasticsearch_package.stdout == 'install ok installed' + + - name: Debian - Remove elasticsearch package if we are switching to a different package type + apt: + name: '{{ es_other_package_name }}' + state: absent + when: elasticsearch_package.stdout == 'install ok installed' + + +- name: Install Elasticsearch repository + when: es_use_repository + become: yes + block: + - name: Debian - Install apt-transport-https to support https APT downloads + apt: + name: apt-transport-https + state: present + + - name: Debian - Add Elasticsearch repository key + apt_key: + url: '{{ es_apt_key }}' + id: '{{ es_apt_key_id }}' + state: present + when: es_add_repository and es_apt_key | string + + - name: Debian - Add elasticsearch repository + apt_repository: + repo: '{{ item.repo }}' + state: '{{ item.state }}' + when: es_add_repository + with_items: + - { repo: "{{ es_apt_url_old }}", state: "absent" } + - { repo: "{{ es_apt_url }}", state: "present" } + - { repo: "{{ es_other_apt_url }}", state: "absent" } + +- name: Include optional user and group creation. + when: (es_user_id is defined) and (es_group_id is defined) + include: elasticsearch-optional-user.yml + +- name: Debian - Get installed elasticsearch version + command: dpkg-query --showformat='${Version}' --show {{ es_package_name }} + register: installed_es_version + failed_when: False + changed_when: False + check_mode: no + +- name: Debian - unhold elasticsearch version + become: yes + dpkg_selections: + name: "{{ es_package_name }}" + selection: "install" + when: not es_version_lock or (installed_es_version.stdout and installed_es_version.stdout != es_version) + +- name: Debian - Ensure elasticsearch is installed + become: yes + apt: + name: '{{ es_package_name }}{% if es_version is defined and es_version != "" %}={{ es_version }}{% endif %}' + state: present + force: '{{ force_install }}' + allow_unauthenticated: "{{ 'no' if es_apt_key else 'yes' }}" + cache_valid_time: 86400 + when: es_use_repository + register: debian_elasticsearch_install_from_repo + notify: restart elasticsearch + environment: + ES_PATH_CONF: "{{ es_conf_dir }}" + +- name: Debian - hold elasticsearch version + become: yes + dpkg_selections: + name: "{{ es_package_name }}" + selection: "hold" + when: es_version_lock + +- name: Debian - Download elasticsearch from url + get_url: url={% if es_custom_package_url is defined %}{{ es_custom_package_url }}{% else %}{{ es_package_url }}-{{ es_version }}.deb{% endif %} dest=/tmp/elasticsearch-{{ es_version }}.deb validate_certs=no + when: not es_use_repository + +- name: Debian - Ensure elasticsearch is installed from downloaded package + become: yes + apt: deb=/tmp/elasticsearch-{{ es_version }}.deb + when: not es_use_repository + register: elasticsearch_install_from_package + notify: restart elasticsearch + environment: + ES_PATH_CONF: "{{ es_conf_dir }}" diff --git a/ansible/roles/es7/tasks/elasticsearch-RedHat-version-lock.yml b/ansible/roles/es7/tasks/elasticsearch-RedHat-version-lock.yml new file mode 100644 index 0000000000..e0f15696c8 --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-RedHat-version-lock.yml @@ -0,0 +1,36 @@ +--- +- name: RedHat - install yum-version-lock + become: yes + yum: name=yum-plugin-versionlock state=present update_cache=yes + +- name: RedHat - check if requested elasticsearch version lock exists + become: yes + shell: yum versionlock list | grep -c {{es_package_name}}-{{es_version}} + register: es_requested_version_locked + args: + warn: false + failed_when: False + changed_when: False + +- name: RedHat - lock elasticsearch version + become: yes + shell: yum versionlock delete 0:elasticsearch* ; yum versionlock add {{ es_package_name }}-{{ es_version }} + args: + warn: false + when: es_version_lock and es_requested_version_locked.stdout|int == 0 + +- name: RedHat - check if any elasticsearch version lock exists + become: yes + shell: yum versionlock list | grep -c elasticsearch + register: es_version_locked + args: + warn: false + failed_when: False + changed_when: False + +- name: RedHat - unlock elasticsearch version + become: yes + shell: yum versionlock delete 0:elasticsearch* + args: + warn: false + when: not es_version_lock and es_version_locked.stdout|int > 0 diff --git a/ansible/roles/es7/tasks/elasticsearch-RedHat.yml b/ansible/roles/es7/tasks/elasticsearch-RedHat.yml new file mode 100644 index 0000000000..a7b974d39b --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-RedHat.yml @@ -0,0 +1,62 @@ +--- +- name: set fact allow_downgrade to no + set_fact: allow_downgrade=no + +- name: set fact allow_downgrade to yes + set_fact: allow_downgrade=yes + when: es_allow_downgrades + +- name: Ensure libselinux-python on CentOS 6.x + become: yes + yum: name=libselinux-python state=present update_cache=yes + when: ( ansible_distribution == "CentOS" ) and ( ansible_distribution_major_version == "6" ) + +- name: RedHat - add Elasticsearch repo + become: yes + template: + src: 'elasticsearch.repo' + dest: '/etc/yum.repos.d/elasticsearch-{{ es_repo_name }}.repo' + when: es_use_repository and es_add_repository + +- name: RedHat - remove unused Elasticsearch repo + become: yes + file: + path: '/etc/yum.repos.d/elasticsearch-{{ es_other_repo_name }}.repo' + state: absent + when: es_use_repository + +- name: RedHat - include versionlock + include: elasticsearch-RedHat-version-lock.yml + +- name: RedHat - Remove the other elasticsearch package if switching between OSS and standard + become: yes + yum: + name: '{{ es_other_package_name }}' + state: 'absent' + +- name: Include optional user and group creation. + when: (es_user_id is defined) and (es_group_id is defined) + include: elasticsearch-optional-user.yml + +- name: RedHat - Install Elasticsearch + become: yes + yum: + name: '{{ es_package_name }}{% if es_version is defined and es_version != "" %}-{{ es_version }}{% endif %}' + state: present + update_cache: yes + allow_downgrade: '{{ allow_downgrade }}' + when: es_use_repository + register: redhat_elasticsearch_install_from_repo + notify: restart elasticsearch + until: redhat_elasticsearch_install_from_repo.rc == 0 + retries: 5 + delay: 10 + environment: + ES_PATH_CONF: "{{ es_conf_dir }}" + +- name: RedHat - Install Elasticsearch from url + become: yes + yum: name={% if es_custom_package_url is defined %}{{ es_custom_package_url }}{% else %}{{ es_package_url }}-{{ es_version }}.noarch.rpm{% endif %} state=present + when: not es_use_repository + register: elasticsearch_install_from_package + notify: restart elasticsearch diff --git a/ansible/roles/es7/tasks/elasticsearch-config.yml b/ansible/roles/es7/tasks/elasticsearch-config.yml new file mode 100644 index 0000000000..796730f00a --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-config.yml @@ -0,0 +1,104 @@ +--- +# Configure Elasticsearch Node + +#Create conf directory +- name: Create Configuration Directory + become: yes + file: + path: "{{ es_conf_dir }}" + state: directory + owner: root + group: "{{ es_group }}" + mode: "2750" + +#Create pid directory +- name: Create PID Directory + become: yes + file: + path: "{{ es_pid_dir }}" + state: directory + owner: "{{ es_user }}" + group: "{{ es_group }}" + mode: "755" + +#Create required directories +- name: Create Others Directories + become: yes + file: + path: "{{ item }}" + state: directory + owner: "{{ es_user }}" + group: "{{ es_group }}" + mode: "2750" + with_items: + - "{{ es_log_dir }}" + - "{{ es_data_dirs }}" + +#Copy the config template +- name: Copy Configuration File + become: yes + template: + src: elasticsearch.yml.j2 + dest: "{{ es_conf_dir }}/elasticsearch.yml" + owner: root + group: "{{ es_group }}" + mode: "660" + force: yes + register: system_change + notify: restart elasticsearch + +#Copy the default file +- name: Copy Default File + become: yes + template: + src: "{{ es_config_default }}" + dest: "{{ default_file }}" + owner: root + group: "{{ es_group }}" + mode: "660" + force: yes + notify: restart elasticsearch + +#Copy the systemd specific file if systemd is installed +- when: use_system_d and m_lock_enabled + become: yes + block: + - name: Make sure destination dir exists + file: + path: "{{ sysd_config_file | dirname }}" + state: directory + mode: "755" + + - name: Copy specific ElasticSearch Systemd config file + ini_file: + path: "{{ sysd_config_file }}" + section: Service + option: LimitMEMLOCK + value: infinity + mode: "644" + notify: + - reload systemd configuration + - restart elasticsearch + +- name: Copy jvm.options File + become: yes + template: + src: "{{ es_config_jvm }}" + dest: "{{ es_conf_dir }}/jvm.options" + owner: root + group: "{{ es_group }}" + mode: "660" + force: yes + notify: restart elasticsearch + +- name: Copy log4j2.properties File + become: yes + template: + src: "{{ es_config_log4j2 }}" + dest: "{{ es_conf_dir }}/log4j2.properties" + owner: root + group: "{{ es_group }}" + mode: "660" + force: yes + notify: restart elasticsearch + when: es_config_log4j2 != '' diff --git a/ansible/roles/es7/tasks/elasticsearch-optional-user.yml b/ansible/roles/es7/tasks/elasticsearch-optional-user.yml new file mode 100644 index 0000000000..d8f787e4b7 --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-optional-user.yml @@ -0,0 +1,24 @@ +--- +#Add the elasticsearch user before installing from packages. +- name: Ensure optional elasticsearch group is created with the correct id. + become: yes + #Restart if these change + notify: restart elasticsearch + group: + state: present + name: "{{ es_group }}" + system: yes + gid: "{{ es_group_id }}" + +- name: Ensure optional elasticsearch user is created with the correct id. + become: yes + #Restart if these change + notify: restart elasticsearch + user: + state: present + name: "{{ es_user }}" + comment: elasticsearch system user + system: yes + createhome: no + uid: "{{ es_user_id }}" + group: "{{ es_group }}" diff --git a/ansible/roles/es7/tasks/elasticsearch-parameters.yml b/ansible/roles/es7/tasks/elasticsearch-parameters.yml new file mode 100644 index 0000000000..b25e4f34c3 --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-parameters.yml @@ -0,0 +1,41 @@ +# Check for mandatory parameters + +- name: fail when es_proxy_port is not defined or is blank + fail: msg="es_proxy_port must be specified and cannot be blank when es_proxy_host is defined" + when: (es_proxy_port is not defined or es_proxy_port == '') and (es_proxy_host is defined and es_proxy_host != '') + +#If the user attempts to lock memory they must specify a heap size +- name: fail when heap size is not specified when using memory lock + fail: msg="If locking memory with bootstrap.memory_lock a heap size must be specified" + when: es_config['bootstrap.memory_lock'] is defined and es_config['bootstrap.memory_lock'] == True and es_heap_size is not defined + +#Check if working with security we have an es_api_basic_auth_username and es_api_basic_auth_username - otherwise any http calls wont work +- name: fail when api credentials are not declared when using security + fail: msg="Enabling security requires an es_api_basic_auth_username and es_api_basic_auth_password to be provided to allow cluster operations" + when: + - es_enable_xpack and "security" in es_xpack_features + - es_api_basic_auth_username is not defined + - es_api_basic_auth_password is not defined + +- name: fail when ssl enabled without defining a key and certificate + fail: msg="Enabling SSL/TLS (es_enable_http_ssl or es_enable_transport_ssl) requires es_ssl_keystore and es_ssl_truststore or es_ssl_key and es_ssl_certificate to be provided" + when: + - es_enable_http_ssl or es_enable_transport_ssl + - (es_ssl_key == "" or es_ssl_certificate == "") + - (es_ssl_keystore == "" or es_ssl_truststore == "") + +- name: set fact file_reserved_users + set_fact: file_reserved_users={{ es_users.file.keys() | list | intersect (reserved_xpack_users) }} + when: es_users is defined and es_users.file is defined and (es_users.file.keys() | list | length > 0) and (es_users.file.keys() | list | intersect (reserved_xpack_users) | length > 0) + +- name: fail when changing users through file realm + fail: + msg: "ERROR: INVALID CONFIG - YOU CANNOT CHANGE RESERVED USERS THROUGH THE FILE REALM. THE FOLLOWING CANNOT BE CHANGED: {{file_reserved_users}}. USE THE NATIVE REALM." + when: file_reserved_users | default([]) | length > 0 + +- name: set fact m_lock_enabled + set_fact: m_lock_enabled={{ es_config['bootstrap.memory_lock'] is defined and es_config['bootstrap.memory_lock'] == True }} + +- name: set fact use_system_d + set_fact: use_system_d={{(ansible_distribution == 'Debian' and ansible_distribution_version is version_compare('8', '>=')) or (ansible_distribution in ['RedHat','CentOS'] and ansible_distribution_version is version_compare('7', '>=')) or (ansible_distribution == 'Ubuntu' and ansible_distribution_version is version_compare('15', '>=')) }} + diff --git a/ansible/roles/es7/tasks/elasticsearch-plugins.yml b/ansible/roles/es7/tasks/elasticsearch-plugins.yml new file mode 100644 index 0000000000..e953ae0b68 --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-plugins.yml @@ -0,0 +1,81 @@ +--- + +# es_plugins_reinstall will be set to true if elasticsearch_install_from_repo.changed or elasticsearch_install_from_package.changed +# i.e. we have changed ES version(or we have clean installation of ES), or if no plugins listed. Otherwise it is false and requires explicitly setting. +- name: set fact es_plugins_reinstall to true + set_fact: es_plugins_reinstall=true + when: (((debian_elasticsearch_install_from_repo is defined and debian_elasticsearch_install_from_repo.changed) or (redhat_elasticsearch_install_from_repo is defined and redhat_elasticsearch_install_from_repo.changed)) or (elasticsearch_install_from_package is defined and elasticsearch_install_from_package.changed)) or es_plugins is not defined or es_plugins is none + +- name: set fact list_command + set_fact: list_command="" +#If we are reinstalling all plugins, e.g. to a version change, we need to remove all plugins (inc. x-pack) to install any plugins. Otherwise we don't consider x-pack so the role stays idempotent. +- name: set fact list_command check for x-pack + set_fact: list_command="| grep -vE 'x-pack'" + when: not es_plugins_reinstall + +- name: remove x-pack plugin directory when it isn't a plugin + file: + dest: "{{ es_home }}/plugins/x-pack" + state: "absent" + +#List currently installed plugins. We have to list the directories as the list commmand fails if the ES version is different than the plugin version. +- name: Check installed elasticsearch plugins + become: yes + shell: "ls {{es_home}}/plugins {{list_command}}" + register: installed_plugins + changed_when: False + ignore_errors: yes + environment: + CONF_DIR: "{{ es_conf_dir }}" + ES_PATH_CONF: "{{ es_conf_dir }}" + ES_INCLUDE: "{{ default_file }}" + check_mode: no + +#if es_plugins_reinstall is set to true we remove ALL plugins +- name: set fact plugins_to_remove to install_plugins.stdout_lines + set_fact: plugins_to_remove="{{ installed_plugins.stdout_lines | default([]) }}" + when: es_plugins_reinstall + +#if the plugins listed are different than those requested, we remove those installed but not listed in the config +- name: set fact plugins_to_remove to delete plugins installed but not listed in es_plugins + set_fact: plugins_to_remove="{{ installed_plugins.stdout_lines | difference(es_plugins | json_query('[*].plugin')) | default([]) }}" + when: not es_plugins_reinstall + +#if es_plugins_reinstall is set to true we (re)install ALL plugins +- name: set fact plugins_to_install to es_plugins + set_fact: plugins_to_install="{{ es_plugins | json_query('[*].plugin') | default([]) }}" + when: es_plugins_reinstall + +#if the plugins listed are different than those requested, we install those not installed but listed in the config +- name: set fact to plugins_to_install to those in es_config but not installed + set_fact: plugins_to_install="{{ es_plugins | json_query('[*].plugin') | difference(installed_plugins.stdout_lines) | default([]) }}" + when: not es_plugins_reinstall + +# This removes any currently installed plugins (to prevent errors when reinstalling) +- name: Remove elasticsearch plugins + become: yes + command: "{{es_home}}/bin/elasticsearch-plugin remove {{item}} --silent" + with_items: "{{ plugins_to_remove | default([]) }}" + notify: restart elasticsearch + register: plugin_removed + environment: + CONF_DIR: "{{ es_conf_dir }}" + ES_PATH_CONF: "{{ es_conf_dir }}" + ES_INCLUDE: "{{ default_file }}" + +- name: Install elasticsearch plugins + become: yes + command: "{{es_home}}/bin/elasticsearch-plugin install {{ item.url | default(item.plugin) }} --batch --silent" + register: plugin_installed + changed_when: plugin_installed.rc == 0 + with_items: "{{ es_plugins }}" + when: item.plugin in plugins_to_install + notify: restart elasticsearch + environment: + CONF_DIR: "{{ es_conf_dir }}" + ES_PATH_CONF: "{{ es_conf_dir }}" + ES_INCLUDE: "{{ default_file }}" + ES_JAVA_OPTS: "{% if item.proxy_host is defined and item.proxy_host != '' and item.proxy_port is defined and item.proxy_port != ''%} -Dhttp.proxyHost={{ item.proxy_host }} -Dhttp.proxyPort={{ item.proxy_port }} -Dhttps.proxyHost={{ item.proxy_host }} -Dhttps.proxyPort={{ item.proxy_port }} {% elif es_proxy_host is defined and es_proxy_host != '' %} -Dhttp.proxyHost={{ es_proxy_host }} -Dhttp.proxyPort={{ es_proxy_port }} -Dhttps.proxyHost={{ es_proxy_host }} -Dhttps.proxyPort={{ es_proxy_port }} {% endif %}" + until: plugin_installed.rc == 0 + retries: 5 + delay: 5 diff --git a/ansible/roles/es7/tasks/elasticsearch-ssl.yml b/ansible/roles/es7/tasks/elasticsearch-ssl.yml new file mode 100644 index 0000000000..70ac7b5a54 --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-ssl.yml @@ -0,0 +1,112 @@ +--- + +- name: set fact es_same_keystore + set_fact: es_same_keystore=false + +- name: set fact es_same_keystore if stores match + set_fact: es_same_keystore=true + when: es_ssl_keystore == es_ssl_truststore + +- name: ensure certificate directory exists + file: + dest: "{{ es_ssl_certificate_path }}" + state: directory + owner: root + group: "{{ es_group }}" + mode: "750" + +- name: Upload SSL/TLS keystore + copy: + src: "{{ es_ssl_keystore }}" + dest: "{{ es_ssl_certificate_path }}/{{ es_ssl_keystore | basename }}" + owner: "{{ es_user }}" + group: "{{ es_group }}" + mode: "640" + when: es_ssl_keystore and es_ssl_truststore + notify: restart elasticsearch + register: copy_keystore + +- name: Upload SSL/TLS truststore + copy: + src: "{{ es_ssl_truststore }}" + dest: "{{ es_ssl_certificate_path }}/{{ es_ssl_truststore | basename }}" + owner: "{{ es_user }}" + group: "{{ es_group }}" + mode: "640" + when: es_ssl_keystore and es_ssl_truststore + notify: restart elasticsearch + register: copy_truststore + +- name: Upload SSL/TLS key and certificate + copy: + src: "{{ item }}" + dest: "{{ es_ssl_certificate_path }}/{{ item | basename }}" + owner: "{{ es_user }}" + group: "{{ es_group }}" + mode: "640" + with_items: + - "{{ es_ssl_key }}" + - "{{ es_ssl_certificate }}" + when: es_ssl_key and es_ssl_certificate + #Restart if these change + notify: restart elasticsearch + register: copy_certificates + +- name: Upload SSL Certificate Authority + copy: + src: "{{ es_ssl_certificate_authority }}" + dest: "{{ es_ssl_certificate_path }}/{{ es_ssl_certificate_authority | basename }}" + owner: "{{ es_user }}" + group: "{{ es_group }}" + mode: "640" + #Restart if this changes + notify: restart elasticsearch + when: es_ssl_certificate_authority | bool + +- name: Set keystore password + shell: echo "{{ es_ssl_keystore_password }}" | {{ es_home }}/bin/elasticsearch-keystore add -x -f 'xpack.security.{{ item }}.ssl.keystore.secure_password' + no_log: True + when: es_ssl_keystore_password and (copy_keystore.changed or (es_same_keystore and copy_truststore.changed)) + with_items: + - http + - transport + +- name: Set truststore password + shell: echo "{{ es_ssl_truststore_password }}" | {{ es_home }}/bin/elasticsearch-keystore add -x -f 'xpack.security.{{ item }}.ssl.truststore.secure_password' + no_log: True + when: es_ssl_truststore_password and (copy_truststore.changed or (es_same_keystore and copy_keystore.changed)) + with_items: + - http + - transport + +- name: Remove keystore password + shell: "{{ es_home }}/bin/elasticsearch-keystore remove 'xpack.security.{{ item }}.ssl.keystore.secure_password'" + when: es_ssl_keystore_password == "" and (copy_keystore.changed or (es_same_keystore and copy_truststore.changed)) + ignore_errors: yes + with_items: + - http + - transport + +- name: Remove truststore password + shell: "{{ es_home }}/bin/elasticsearch-keystore remove 'xpack.security.{{ item }}.ssl.truststore.secure_password'" + when: es_ssl_truststore_password == "" and (copy_truststore.changed or (es_same_keystore and copy_keystore.changed)) + ignore_errors: yes + with_items: + - http + - transport + +- name: Set key password + shell: echo "{{ es_ssl_key_password }}" | {{ es_home }}/bin/elasticsearch-keystore add -x -f 'xpack.security.{{ item }}.ssl.secure_key_passphrase' + no_log: True + when: es_ssl_key_password and copy_certificates.changed + with_items: + - http + - transport + +- name: Remove key password + shell: "{{ es_home }}/bin/elasticsearch-keystore remove 'xpack.security.{{ item }}.ssl.secure_key_passphrase'" + when: es_ssl_key_password == "" and copy_certificates.changed + ignore_errors: yes + with_items: + - http + - transport diff --git a/ansible/roles/es7/tasks/elasticsearch-template.yml b/ansible/roles/es7/tasks/elasticsearch-template.yml new file mode 100644 index 0000000000..e766932491 --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch-template.yml @@ -0,0 +1,31 @@ +--- + +- name: ensure templates dir is created + file: + path: "{{ es_conf_dir }}/templates" + state: directory + owner: root + group: "{{ es_group }}" + mode: "2750" + +- name: Copy templates to elasticsearch + copy: src={{ item }} dest={{ es_conf_dir }}/templates owner=root group={{ es_group }} mode=0660 + register: load_templates + with_fileglob: + - "{{ es_templates_fileglob | default('') }}" + +- name: Install templates + uri: + url: "{{ es_api_uri }}/_template/{{item | filename}}" + method: PUT + status_code: 200 + user: "{{es_api_basic_auth_username | default(omit)}}" + password: "{{es_api_basic_auth_password | default(omit)}}" + force_basic_auth: yes + body_format: json + body: "{{ lookup('file', item) }}" + validate_certs: "{{ es_validate_certs }}" + when: load_templates.changed and es_start_service + with_fileglob: + - "{{ es_templates_fileglob | default('') }}" + run_once: True diff --git a/ansible/roles/es7/tasks/elasticsearch.yml b/ansible/roles/es7/tasks/elasticsearch.yml new file mode 100644 index 0000000000..05fd93bc4d --- /dev/null +++ b/ansible/roles/es7/tasks/elasticsearch.yml @@ -0,0 +1,9 @@ +--- + +- name: Include specific Elasticsearch + include: elasticsearch-Debian.yml + when: ansible_os_family == 'Debian' + +- name: Include specific Elasticsearch + include: elasticsearch-RedHat.yml + when: ansible_os_family == 'RedHat' diff --git a/ansible/roles/es7/tasks/java.yml b/ansible/roles/es7/tasks/java.yml new file mode 100644 index 0000000000..26d6b15936 --- /dev/null +++ b/ansible/roles/es7/tasks/java.yml @@ -0,0 +1,54 @@ +--- + +- name: set fact java_state to present + set_fact: java_state="present" + +- name: set fact java_state to latest + set_fact: java_state="latest" + when: update_java == true + +- name: RedHat - Ensure Java is installed + become: yes + yum: name={{ java }} state={{java_state}} + when: ansible_os_family == 'RedHat' + +- name: Get the installed java path + shell: "update-alternatives --display java | grep '^/' | awk '{print $1}' | grep 1.8.0 | head -1" + become: yes + register: java_full_path + failed_when: False + changed_when: False + check_mode: no + when: ansible_os_family == 'RedHat' + +- name: correct java version selected + alternatives: + name: java + path: "{{ java_full_path.stdout }}" + link: /usr/bin/java + when: ansible_os_family == 'RedHat' and java_full_path is defined + +- name: Refresh java repo + become: yes + apt: update_cache=yes + changed_when: false + when: ansible_os_family == 'Debian' + +- name: Debian - Ensure Java is installed + become: yes + apt: name={{ java }} state={{java_state}} + when: ansible_os_family == 'Debian' + +- name: register open_jdk version + shell: java -version 2>&1 | grep OpenJDK + register: open_jdk + ignore_errors: yes + changed_when: false + check_mode: no + +#https://github.com/docker-library/openjdk/issues/19 - ensures tests pass due to java 8 broken certs +- name: refresh the java ca-certificates + become: yes + command: /var/lib/dpkg/info/ca-certificates-java.postinst configure + when: ansible_distribution == 'Ubuntu' and open_jdk.rc == 0 + changed_when: false diff --git a/ansible/roles/es7/tasks/main.yml b/ansible/roles/es7/tasks/main.yml new file mode 100644 index 0000000000..8cd4bf5726 --- /dev/null +++ b/ansible/roles/es7/tasks/main.yml @@ -0,0 +1,108 @@ +--- + +- set_fact: "es_major_version={{ es_version.split('.')[0] }}.x" + when: + - es_major_version is undefined + tags: + - always + +- name: os-specific vars + include_vars: "{{ansible_os_family}}.yml" + tags: + - always + +- name: set compatibility variables + include: compatibility-variables.yml + tags: + - always + +- name: check-set-parameters + include: elasticsearch-parameters.yml + tags: + - always + +- name: use snapshot release + include: snapshot-release.yml + when: es_use_snapshot_release + +- name: include java.yml + include: java.yml + when: es_java_install + tags: + - java + +- name: include elasticsearch.yml + include: elasticsearch.yml + tags: + - install + +- name: include elasticsearch-config.yml + include: elasticsearch-config.yml + tags: + - config + +- name: include elasticsearch-plugins.yml + include: elasticsearch-plugins.yml + when: es_plugins is defined or es_plugins_reinstall + tags: + - plugins + + #We always execute xpack as we may need to remove features +- name: include xpack/elasticsearch-xpack.yml + include: xpack/elasticsearch-xpack.yml + tags: + - xpack + +- name: include elasticsearch-ssl.yml + include: elasticsearch-ssl.yml + when: es_enable_http_ssl or es_enable_transport_ssl + tags: + - xpack + +- name: flush handlers + meta: flush_handlers + +- name: Make sure elasticsearch is started + become: yes + service: name=elasticsearch state=started enabled=yes + when: es_start_service + +- name: Wait for elasticsearch to startup + wait_for: host={{ es_api_host }} port={{ es_api_port }} delay=5 connect_timeout=1 + when: es_restarted is defined and es_restarted.changed and es_start_service + +- name: set fact manage_native_realm to false + set_fact: manage_native_realm=false + +- name: set fact manage_native_realm to true + set_fact: manage_native_realm=true + when: + - es_start_service + - es_enable_xpack + - (es_users is defined and es_users.native is defined) or (es_roles is defined and es_roles.native is defined) + +# If playbook runs too fast, Native commands could fail as the Native Realm is not yet up +- name: Wait {{ es_api_sleep }} seconds for the Native Realm to come up + command: "sleep {{ es_api_sleep }}" + when: manage_native_realm | bool + +- name: activate-license + include: ./xpack/security/elasticsearch-xpack-activation.yml + when: es_start_service and es_enable_xpack and es_xpack_license is defined and es_xpack_license != '' + +- name: activate-trial + include: ./xpack/security/elasticsearch-xpack-trial-activation.yml + when: es_start_service and es_enable_xpack and es_xpack_trial + +#perform security actions here now elasticsearch is started +- name: include xpack/security/elasticsearch-security-native.yml + include: ./xpack/security/elasticsearch-security-native.yml + when: manage_native_realm | bool + +#Templates done after restart - handled by flushing the handlers. e.g. suppose user removes security on a running node and doesn't specify es_api_basic_auth_username and es_api_basic_auth_password. The templates will subsequently not be removed if we don't wait for the node to restart. +#We also do after the native realm to ensure any changes are applied here first and its denf up. +- name: include elasticsearch-template.yml + include: elasticsearch-template.yml + when: es_templates + tags: + - templates diff --git a/ansible/roles/es7/tasks/snapshot-release.yml b/ansible/roles/es7/tasks/snapshot-release.yml new file mode 100644 index 0000000000..97e8b89640 --- /dev/null +++ b/ansible/roles/es7/tasks/snapshot-release.yml @@ -0,0 +1,55 @@ +# These tasks are to run ansible-elasticsearch using pre-release snapshot builds +# This should only be used for testing purposes and can be enabled by setting +# es_use_snapshot_release: true + +- name: detect if we need the .deb or .rpm + set_fact: + package_type: "{{ 'deb' if (ansible_os_family == 'Debian') else 'rpm' }}" + +- name: get the minor version + set_fact: + minor_version: "{{ es_version.split('.')[0:2] | join('.')}}" + +- name: set the package_name + set_fact: + package_name: "{{ es_package_name + '-' + es_version + '-SNAPSHOT.' + package_type }}" + +- name: generate the artifacts url + set_fact: + artifacts_url: "{{ 'https://artifacts-api.elastic.co/v1/search/' + minor_version + '/' + package_name }}" + +- name: get latest snapshot build + uri: + url: "{{ artifacts_url }}" + return_contents: true + register: snapshots + retries: 5 + delay: 1 + ignore_errors: true + until: "'status' in snapshots and snapshots.status == 200" + check_mode: no + +- name: use the custom package url instead of the repository + set_fact: + es_custom_package_url: "{{ snapshots.json['packages'][package_name]['url'] }}" + es_use_repository: false + +- name: set snapshot urls for es_plugins when it is defined + when: es_plugins is defined + block: + - name: split up the snapshot url so we can create the plugin url + set_fact: + split_url: "{{ es_custom_package_url.split('/') }}" + + - name: set base plugin url + set_fact: + plugin_url: "{{ split_url[0] + '//' + split_url[2:5]|join('/') + '/elasticsearch-plugins/'}}" + + - name: create es_plugins with the snapshot url + set_fact: + es_plugins_temp: "{{ es_plugins_temp|default([]) + [{'plugin': item.plugin, 'url': plugin_url + item.plugin + '/' + item.plugin + '-' + es_version + '-SNAPSHOT.zip'}] }}" + with_items: "{{ es_plugins }}" + + - name: override the original es_plugins with the snapshot version + set_fact: + es_plugins: "{{ es_plugins_temp }}" diff --git a/ansible/roles/es7/tasks/xpack/elasticsearch-xpack.yml b/ansible/roles/es7/tasks/xpack/elasticsearch-xpack.yml new file mode 100644 index 0000000000..263af93163 --- /dev/null +++ b/ansible/roles/es7/tasks/xpack/elasticsearch-xpack.yml @@ -0,0 +1,11 @@ +--- + +#Security configuration +- name: include security/elasticsearch-security.yml + include: security/elasticsearch-security.yml + when: es_enable_xpack + +#Make sure elasticsearch.keystore has correct Permissions +- name: Set elasticsearch.keystore Permissions + become: yes + file: state=file path={{ es_conf_dir }}/elasticsearch.keystore owner=root group={{ es_group }} mode=0660 diff --git a/ansible/roles/es7/tasks/xpack/security/elasticsearch-security-file.yml b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security-file.yml new file mode 100644 index 0000000000..b3ed02742c --- /dev/null +++ b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security-file.yml @@ -0,0 +1,96 @@ +--- +- set_fact: manage_file_users=false + +- set_fact: manage_file_users=true + when: es_users is defined and es_users.file is defined and es_users.file.keys() | list | length > 0 + +# Users migration from elasticsearch < 6.3 versions +- name: Check if old users file exists + stat: + path: '{{ es_conf_dir }}/x-pack/users' + register: old_users_file + check_mode: no + +- name: Copy the old users file from the old deprecated location + copy: + remote_src: yes + force: no # only copy it if the new path doesn't exist yet + src: "{{ es_conf_dir }}/x-pack/users" + dest: "{{ es_conf_dir }}/users" + group: "{{ es_group }}" + owner: root + when: old_users_file.stat.exists +# End of users migrations + +#List current users +- name: List Users + become: yes + shell: cat {{ es_conf_dir }}/users | awk -F':' '{print $1}' + register: current_file_users + when: manage_file_users + changed_when: False + check_mode: no + +- name: set fact users_to_remove + set_fact: users_to_remove={{ current_file_users.stdout_lines | difference (es_users.file.keys() | list) }} + when: manage_file_users and es_delete_unmanaged_file + +#Remove users +- name: Remove Users + become: yes + command: > + {{es_home}}/bin/elasticsearch-users userdel {{item}} + with_items: "{{users_to_remove | default([])}}" + when: manage_file_users + environment: + CONF_DIR: "{{ es_conf_dir }}" + ES_PATH_CONF: "{{ es_conf_dir }}" + ES_HOME: "{{es_home}}" + +- name: set fact users_to_add + set_fact: users_to_add={{ es_users.file.keys() | list | difference (current_file_users.stdout_lines) }} + when: manage_file_users and es_delete_unmanaged_file + +#Add users +- name: Add Users + become: yes + command: > + {{es_home}}/bin/elasticsearch-users useradd {{item}} -p {{es_users.file[item].password}} + with_items: "{{ users_to_add | default([]) }}" + when: manage_file_users + no_log: True + environment: + CONF_DIR: "{{ es_conf_dir }}" + ES_PATH_CONF: "{{ es_conf_dir }}" + ES_HOME: "{{es_home}}" + +#Set passwords for all users declared - Required as the useradd will not change existing user passwords +- name: Set User Passwords + become: yes + command: > + {{es_home}}/bin/elasticsearch-users passwd {{ item }} -p {{es_users.file[item].password}} + with_items: "{{ es_users.file.keys() | list }}" + when: manage_file_users + #Currently no easy way to figure out if the password has changed or to know what it currently is so we can skip. + changed_when: False + no_log: True + environment: + CONF_DIR: "{{ es_conf_dir }}" + ES_PATH_CONF: "{{ es_conf_dir }}" + ES_HOME: "{{es_home}}" + +- name: set fact users_roles + set_fact: users_roles={{es_users.file | extract_role_users () }} + when: manage_file_users + +#Copy Roles files +- name: Copy roles.yml File for Instance + become: yes + template: src=security/roles.yml.j2 dest={{ es_conf_dir }}/roles.yml owner=root group={{ es_group }} mode=0660 force=yes + when: es_roles is defined and es_roles.file is defined + +#Overwrite users_roles file +- name: Copy User Roles + become: yes + template: src=security/users_roles.j2 dest={{ es_conf_dir }}/users_roles owner=root group={{ es_group }} mode=0660 force=yes + when: manage_file_users and users_roles | length > 0 diff --git a/ansible/roles/es7/tasks/xpack/security/elasticsearch-security-native.yml b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security-native.yml new file mode 100644 index 0000000000..7a27fd4a6c --- /dev/null +++ b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security-native.yml @@ -0,0 +1,201 @@ +--- +- name: set fact change_api_password to false + set_fact: change_api_password=false + +- name: set fact manage_native_users to false + set_fact: manage_native_users=false + +- name: set fact manage_native_users to true + set_fact: manage_native_users=true + when: es_users is defined and es_users.native is defined and es_users.native.keys() | list | length > 0 + +- name: set fact manage_native_role to false + set_fact: manage_native_roles=false + +- name: set fact manange_native_roles to true + set_fact: manage_native_roles=true + when: es_roles is defined and es_roles.native is defined and es_roles.native.keys() | list | length > 0 + +#If the node has just has security installed it maybe either stopped or started 1. if stopped, we need to start to load native realms 2. if started, we need to restart to load + +#List current users +- name: List Native Users + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/user" + method: GET + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + status_code: 200 + validate_certs: "{{ es_validate_certs }}" + register: user_list_response + when: manage_native_users + check_mode: no + +- name: set fact reserved_users equals user_list_response.json + set_fact: reserved_users={{ user_list_response.json | filter_reserved }} + when: manage_native_users + +#Current users not inc. those reserved +- name: set fact current_users equals user_list_response.json.keys not including reserved + set_fact: current_users={{ user_list_response.json.keys() | list | difference (reserved_users) }} + when: manage_native_users + +#We are changing the es_api_basic_auth_username password, so we need to do it first and update the param +- name: set fact native_users + set_fact: native_users={{ es_users.native }} + when: manage_native_users + +- name: set fact change_api_password to true + set_fact: change_api_password=true + when: manage_native_users and es_api_basic_auth_username in native_users and native_users[es_api_basic_auth_username].password is defined + +- name: Update API User Password + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/user/{{es_api_basic_auth_username}}/_password" + method: POST + body_format: json + body: "{ \"password\":\"{{native_users[es_api_basic_auth_username].password}}\" }" + status_code: 200 + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + validate_certs: "{{ es_validate_certs }}" + when: change_api_password + +- name: set fact es_api_basic_auth_password + set_fact: es_api_basic_auth_password={{native_users[es_api_basic_auth_username].password}} + when: change_api_password + +#Identify users that are present in ES but not declared and thus should be removed +- name: set fact users_to_remove + set_fact: users_to_remove={{ current_users | difference ( native_users.keys() | list) }} + when: manage_native_users + +#Delete all non required users NOT inc. reserved +- name: Delete Native Users + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/user/{{item}}" + method: DELETE + status_code: 200 + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + validate_certs: "{{ es_validate_certs }}" + when: manage_native_users and es_delete_unmanaged_native + with_items: "{{ users_to_remove | default([]) }}" + +- name: set fact users_to_ignore + set_fact: users_to_ignore={{ native_users.keys() | list | intersect (reserved_users) }} + when: manage_native_users + +- name: debug message + debug: + msg: "WARNING: YOU CAN ONLY CHANGE THE PASSWORD FOR RESERVED USERS IN THE NATIVE REALM. ANY ROLE CHANGES WILL BE IGNORED: {{users_to_ignore}}" + when: manage_native_users and users_to_ignore | length > 0 + +#Update password on all reserved users +- name: Update Reserved User Passwords + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/user/{{ item | urlencode }}/_password" + method: POST + body_format: json + body: "{ \"password\":\"{{native_users[item].password}}\" }" + status_code: 200 + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + validate_certs: "{{ es_validate_certs }}" + when: native_users[item].password is defined + no_log: True + with_items: "{{ users_to_ignore | default([]) }}" + +- name: set fact users_to_modify + set_fact: users_to_modify={{ native_users.keys() | list | difference (reserved_users) }} + when: manage_native_users + +#Overwrite all other users NOT inc. those reserved +- name: Update Non-Reserved Native User Details + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/user/{{ item | urlencode }}" + method: POST + body_format: json + body: "{{ native_users[item] | to_json }}" + status_code: 200 + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + validate_certs: "{{ es_validate_certs }}" + when: manage_native_users + no_log: True + with_items: "{{ users_to_modify | default([]) }}" + +## ROLE CHANGES + +#List current roles not. inc those reserved +- name: List Native Roles + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/role" + method: GET + body_format: json + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + status_code: 200 + validate_certs: "{{ es_validate_certs }}" + register: role_list_response + when: manage_native_roles + check_mode: no + +- name: set fact reserved roles + set_fact: reserved_roles={{ role_list_response.json | filter_reserved }} + when: manage_native_roles + +- name: set fact current roles + set_fact: current_roles={{ role_list_response.json.keys() | list | difference (reserved_roles) }} + when: manage_native_roles + +- name: set fact roles to ignore + set_fact: roles_to_ignore={{ es_roles.native.keys() | list | intersect (reserved_roles) | default([]) }} + when: manage_native_roles + +- name: debug message + debug: + msg: "WARNING: YOU CANNOT CHANGE RESERVED ROLES. THE FOLLOWING WILL BE IGNORED: {{roles_to_ignore}}" + when: manage_native_roles and roles_to_ignore | length > 0 + +- name: set fact roles_to_remove + set_fact: roles_to_remove={{ current_roles | difference ( es_roles.native.keys() | list) }} + when: manage_native_roles + +#Delete all non required roles NOT inc. reserved +- name: Delete Native Roles + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/role/{{ item | urlencode }}" + method: DELETE + status_code: 200 + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + validate_certs: "{{ es_validate_certs }}" + when: manage_native_roles and es_delete_unmanaged_native + with_items: "{{roles_to_remove | default([]) }}" + +- name: set fact roles_to_modify + set_fact: roles_to_modify={{ es_roles.native.keys() | list | difference (reserved_roles) }} + when: manage_native_roles + +#Update other roles - NOT inc. reserved roles +- name: Update Native Roles + uri: + url: "{{ es_api_uri }}/{{ es_security_api }}/role/{{ item | urlencode }}" + method: POST + body_format: json + body: "{{ es_roles.native[item] | to_json}}" + status_code: 200 + user: "{{es_api_basic_auth_username}}" + password: "{{es_api_basic_auth_password}}" + force_basic_auth: yes + validate_certs: "{{ es_validate_certs }}" + when: manage_native_roles + with_items: "{{ roles_to_modify | default([]) }}" diff --git a/ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml new file mode 100644 index 0000000000..f7353585e5 --- /dev/null +++ b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml @@ -0,0 +1,50 @@ +--- +#Security specific configuration done here + +#TODO: 1. Skip users with no password defined or error 2. Passwords | length > 6 + +#-----------------------------Create Bootstrap User----------------------------------- +### START BLOCK elasticsearch keystore ### +- name: create the elasticsearch keystore + block: + - name: create the keystore if it doesn't exist yet + become: yes + command: > + {{es_home}}/bin/elasticsearch-keystore create + args: + creates: "{{ es_conf_dir }}/elasticsearch.keystore" + environment: + ES_PATH_CONF: "{{ es_conf_dir }}" + + - name: Check if bootstrap password is set + become: yes + command: > + {{es_home}}/bin/elasticsearch-keystore list + register: list_keystore + changed_when: False + environment: + ES_PATH_CONF: "{{ es_conf_dir }}" + check_mode: no + + - name: Create Bootstrap password for elastic user + become: yes + shell: echo "{{es_api_basic_auth_password}}" | {{es_home}}/bin/elasticsearch-keystore add -x 'bootstrap.password' + when: + - es_api_basic_auth_username is defined and list_keystore is defined and es_api_basic_auth_username == 'elastic' and 'bootstrap.password' not in list_keystore.stdout_lines + environment: + ES_PATH_CONF: "{{ es_conf_dir }}" + no_log: true +### END BLOCK elasticsearch keystore ### + +#-----------------------------FILE BASED REALM---------------------------------------- + +- include: elasticsearch-security-file.yml + when: (es_users is defined and es_users.file is defined) or (es_roles is defined and es_roles.file is defined) + +#-----------------------------ROLE MAPPING ---------------------------------------- + +#Copy Roles files +- name: Copy role_mapping.yml File for Instance + become: yes + template: src=security/role_mapping.yml.j2 dest={{ es_conf_dir }}/role_mapping.yml owner=root group={{ es_group }} mode=0660 force=yes + when: es_role_mapping is defined diff --git a/ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-activation.yml b/ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-activation.yml new file mode 100644 index 0000000000..5bf08cb6a2 --- /dev/null +++ b/ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-activation.yml @@ -0,0 +1,21 @@ +--- +- name: Activate ES license (with security authentication) + uri: + method: PUT + url: "{{ es_api_uri }}/{{ es_license_api }}?acknowledge=true" + user: "{{es_api_basic_auth_username | default(omit)}}" + password: "{{es_api_basic_auth_password | default(omit)}}" + body_format: json + body: "{{ es_xpack_license }}" + return_content: yes + force_basic_auth: yes + validate_certs: "{{ es_validate_certs }}" + register: license_activated + no_log: True + failed_when: > + license_activated.status != 200 or + license_activated.json.license_status is not defined or + license_activated.json.license_status != 'valid' + +- name: License + debug: msg={{ license_activated }} diff --git a/ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-trial-activation.yml b/ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-trial-activation.yml new file mode 100644 index 0000000000..e0cc73e09e --- /dev/null +++ b/ansible/roles/es7/tasks/xpack/security/elasticsearch-xpack-trial-activation.yml @@ -0,0 +1,18 @@ +--- +- name: Activate ES trial license (with security authentication) + uri: + method: POST + url: "{{ es_api_uri }}/{{ es_license_api }}/start_trial?acknowledge=true" + user: "{{es_api_basic_auth_username | default(omit)}}" + password: "{{es_api_basic_auth_password | default(omit)}}" + return_content: yes + force_basic_auth: yes + status_code: + - 200 + - 403 + validate_certs: "{{ es_validate_certs }}" + register: trial_license_activated + when: es_xpack_trial + +- name: Trial license + debug: msg={{ trial_license_activated }} \ No newline at end of file diff --git a/ansible/roles/es7/templates/elasticsearch.j2 b/ansible/roles/es7/templates/elasticsearch.j2 new file mode 100644 index 0000000000..84c4d75854 --- /dev/null +++ b/ansible/roles/es7/templates/elasticsearch.j2 @@ -0,0 +1,60 @@ +################################ +# Elasticsearch +################################ + +# Elasticsearch home directory +ES_HOME={{es_home}} + +# Elasticsearch Java path +#JAVA_HOME= + +# Elasticsearch configuration directory +ES_PATH_CONF={{ es_conf_dir }} + +# Elasticsearch PID directory +PID_DIR={{ es_pid_dir }} + +# Additional Java OPTS +ES_JAVA_OPTS= + +# Configure restart on package upgrade (true, every other setting will lead to not restarting) +#RESTART_ON_UPGRADE=true + +################################ +# Elasticsearch service +################################ + +# SysV init.d +# +# The number of seconds to wait before checking if Elasticsearch started successfully as a daemon process +ES_STARTUP_SLEEP_TIME=5 + +################################ +# System properties +################################ + +# Specifies the maximum file descriptor number that can be opened by this process +# When using Systemd, this setting is ignored and the LimitNOFILE defined in +# /usr/lib/systemd/system/elasticsearch.service takes precedence +#MAX_OPEN_FILES=65535 +{% if es_max_open_files is defined %} +MAX_OPEN_FILES={{es_max_open_files}} +{% endif %} + +# The maximum number of bytes of memory that may be locked into RAM +# Set to "unlimited" if you use the 'bootstrap.memory_lock: true' option +# in elasticsearch.yml. +# When using systemd, LimitMEMLOCK must be set in a unit file such as +# /etc/systemd/system/elasticsearch.service.d/override.conf. +#MAX_LOCKED_MEMORY=unlimited +{% if m_lock_enabled %} +MAX_LOCKED_MEMORY=unlimited +{% endif %} + +# Maximum number of VMA (Virtual Memory Areas) a process can own +# When using Systemd, this setting is ignored and the 'vm.max_map_count' +# property is set at boot time in /usr/lib/sysctl.d/elasticsearch.conf +#MAX_MAP_COUNT=262144 +{% if es_max_map_count is defined %} +MAX_MAP_COUNT={{es_max_map_count}} +{% endif %} diff --git a/ansible/roles/es7/templates/elasticsearch.repo b/ansible/roles/es7/templates/elasticsearch.repo new file mode 100644 index 0000000000..0cf2fb77cd --- /dev/null +++ b/ansible/roles/es7/templates/elasticsearch.repo @@ -0,0 +1,11 @@ +[elasticsearch-{{ es_repo_name }}] +name=Elasticsearch repository for {{ es_repo_name }} packages +baseurl={{ es_repo_base }}/packages/{{ es_repo_name }}/yum +gpgcheck=1 +gpgkey={{ es_repo_base }}/GPG-KEY-elasticsearch +enabled=1 +autorefresh=1 +type=rpm-md +{% if es_proxy_host is defined and es_proxy_host != '' and es_proxy_port is defined %} +proxy=http://{{ es_proxy_host }}:{{es_proxy_port}} +{% endif %} diff --git a/ansible/roles/es7/templates/elasticsearch.yml.j2 b/ansible/roles/es7/templates/elasticsearch.yml.j2 new file mode 100644 index 0000000000..54f76b526a --- /dev/null +++ b/ansible/roles/es7/templates/elasticsearch.yml.j2 @@ -0,0 +1,84 @@ + +{% if es_config %} +{{ es_config | to_nice_yaml(indent=2) }} +{% endif %} + +{% if es_config['cluster.name'] is not defined %} +cluster.name: elasticsearch +{% endif %} +discovery.seed_hosts: ["{{groups['es7'] | join("\",\"")}}"] +cluster.initial_master_nodes: ["{{groups['es7'] | join("\",\"")}}"] +{% if es_config['node.name'] is not defined %} +node.name: {{inventory_hostname}} +{% endif %} +#################################### Paths #################################### + +# Path to directory containing configuration (this file and logging.yml): + +path.data: {{ es_data_dirs | array_to_str }} + +path.logs: {{ es_log_dir }} + +{% if es_path_repo is defined %} +path.repo: {{ es_path_repo }} +{% endif %} + +network.host: 0.0.0.0 + +{% if es_action_auto_create_index == true %} +action.auto_create_index: true +{% elif not es_action_auto_create_index %} +action.auto_create_index: false +{% else %} +action.auto_create_index: {{ es_action_auto_create_index }} +{% endif %} + +{% if es_enable_xpack and es_api_basic_auth_username is defined and es_api_basic_auth_password is defined %} +xpack.security.enabled: true + +{% if es_enable_transport_ssl and es_enable_auto_ssl_configuration %} +xpack.security.transport.ssl.enabled: true +xpack.security.transport.ssl.verification_mode: "{{ es_ssl_verification_mode }}" +{% if es_ssl_keystore and es_ssl_truststore %} +xpack.security.transport.ssl.keystore.path: "{{ es_ssl_certificate_path }}/{{ es_ssl_keystore | basename }}" +xpack.security.transport.ssl.truststore.path: "{{ es_ssl_certificate_path }}/{{ es_ssl_truststore | basename }}" +{% elif es_ssl_key and es_ssl_certificate %} +xpack.security.transport.ssl.key: "{{ es_ssl_certificate_path }}/{{ es_ssl_key | basename }}" +xpack.security.transport.ssl.certificate: "{{ es_ssl_certificate_path }}/{{ es_ssl_certificate | basename }}" +{% if es_ssl_certificate_authority %} +xpack.security.transport.ssl.certificate_authorities: "{{ es_ssl_certificate_path }}/{{ es_ssl_certificate_authority | basename }}" +{% endif %} +{% endif %} +{% endif %} + +{% if es_enable_http_ssl and es_enable_auto_ssl_configuration %} +xpack.security.http.ssl.enabled: true +{% if es_ssl_keystore and es_ssl_truststore %} +xpack.security.http.ssl.keystore.path: "{{ es_ssl_certificate_path }}/{{ es_ssl_keystore | basename }}" +xpack.security.http.ssl.truststore.path: "{{ es_ssl_certificate_path }}/{{ es_ssl_truststore | basename }}" +{% elif es_ssl_key and es_ssl_certificate %} +xpack.security.http.ssl.key: "{{ es_ssl_certificate_path }}/{{ es_ssl_key | basename }}" +xpack.security.http.ssl.certificate: "{{ es_ssl_certificate_path }}/{{ es_ssl_certificate | basename }}" +{% if es_ssl_certificate_authority %} +xpack.security.http.ssl.certificate_authorities: "{{ es_ssl_certificate_path }}/{{ es_ssl_certificate_authority | basename }}" +{% endif %} +{% endif %} +{% endif %} +{% endif %} + +{% if es_mail_config is defined %} +xpack.notification.email: + account: + {{ es_mail_config['account'] }}: + profile: {{ es_mail_config['profile'] }} + email_defaults: + from: {{ es_mail_config['from'] }} + smtp: + auth: {{ es_mail_config['require_auth'] }} + host: {{ es_mail_config['host'] }} + port: {{ es_mail_config['port'] }} + {% if es_mail_config['require_auth'] == true -%} + user: {{ es_mail_config['user'] }} + password: {{ es_mail_config['pass'] }} + {%- endif %} +{% endif %} diff --git a/ansible/roles/es7/templates/jvm.options.j2 b/ansible/roles/es7/templates/jvm.options.j2 new file mode 100644 index 0000000000..544e4eef22 --- /dev/null +++ b/ansible/roles/es7/templates/jvm.options.j2 @@ -0,0 +1,146 @@ +## JVM configuration + +################################################################ +## IMPORTANT: JVM heap size +################################################################ +## +## You should always set the min and max JVM heap +## size to the same value. For example, to set +## the heap to 4 GB, set: +## +## -Xms4g +## -Xmx4g +## +## See https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html +## for more information +## +################################################################ + +# Xms represents the initial size of total heap space +# Xmx represents the maximum size of total heap space +{% if es_heap_size is defined %} +-Xms{{ es_heap_size }} +-Xmx{{ es_heap_size }} +{% else %} +-Xms2g +-Xmx2g +{% endif %} + +################################################################ +## Expert settings +################################################################ +## +## All settings below this section are considered +## expert settings. Don't tamper with them unless +## you understand what you are doing +## +################################################################ + +## GC configuration +-XX:+UseConcMarkSweepGC +-XX:CMSInitiatingOccupancyFraction=75 +-XX:+UseCMSInitiatingOccupancyOnly + +## G1GC Configuration +# NOTE: G1GC is only supported on JDK version 10 or later. +# To use G1GC uncomment the lines below. +# 10-:-XX:-UseConcMarkSweepGC +# 10-:-XX:-UseCMSInitiatingOccupancyOnly +# 10-:-XX:+UseG1GC +{% if es_version is version('7.4.0', '<') %} +# 10-:-XX:InitiatingHeapOccupancyPercent=75 +{% else %} +# 10-:-XX:G1ReservePercent=25 +# 10-:-XX:InitiatingHeapOccupancyPercent=30 +{% endif %} + +{% if es_version is version('7.5.0', '<') %} +## DNS cache policy +# cache ttl in seconds for positive DNS lookups noting that this overrides the +# JDK security property networkaddress.cache.ttl; set to -1 to cache forever +-Des.networkaddress.cache.ttl=60 +# cache ttl in seconds for negative DNS lookups noting that this overrides the +# JDK security property networkaddress.cache.negative ttl; set to -1 to cache +# forever +-Des.networkaddress.cache.negative.ttl=10 + +## optimizations + +# pre-touch memory pages used by the JVM during initialization +-XX:+AlwaysPreTouch + +## basic + +# explicitly set the stack size +-Xss1m + +# set to headless, just in case +-Djava.awt.headless=true + +# ensure UTF-8 encoding by default (e.g. filenames) +-Dfile.encoding=UTF-8 + +# use our provided JNA always versus the system one +-Djna.nosys=true + +# turn off a JDK optimization that throws away stack traces for common +# exceptions because stack traces are important for debugging +-XX:-OmitStackTraceInFastThrow + +# flags to configure Netty +-Dio.netty.noUnsafe=true +-Dio.netty.noKeySetOptimization=true +-Dio.netty.recycler.maxCapacityPerThread=0 +{% if es_version is version('7.4.0', '>=') %} +-Dio.netty.allocator.numDirectArenas=0 +{% endif %} + +# log4j 2 +-Dlog4j.shutdownHookEnabled=false +-Dlog4j2.disable.jmx=true +{% endif %} + +-Djava.io.tmpdir=${ES_TMPDIR} + +## heap dumps + +# generate a heap dump when an allocation from the Java heap fails +# heap dumps are created in the working directory of the JVM +-XX:+HeapDumpOnOutOfMemoryError + +# specify an alternative path for heap dumps; ensure the directory exists and +# has sufficient space +-XX:HeapDumpPath=${heap.dump.path} + +# specify an alternative path for JVM fatal error logs +-XX:ErrorFile={{ es_log_dir }}/hs_err_pid%p.log + +## JDK 8 GC logging + +8:-XX:+PrintGCDetails +8:-XX:+PrintGCDateStamps +8:-XX:+PrintTenuringDistribution +8:-XX:+PrintGCApplicationStoppedTime +8:-Xloggc:{{ es_log_dir }}/gc.log +8:-XX:+UseGCLogFileRotation +8:-XX:NumberOfGCLogFiles=32 +8:-XX:GCLogFileSize=64m + +# JDK 9+ GC logging +9-:-Xlog:gc*,gc+age=trace,safepoint:file={{ es_log_dir }}/gc.log:utctime,pid,tags:filecount=32,filesize=64m +{% if es_version is version('7.5.0', '<') %} +# due to internationalization enhancements in JDK 9 Elasticsearch need to set the provider to COMPAT otherwise +# time/date parsing will break in an incompatible way for some date patterns and locals +9-:-Djava.locale.providers=COMPAT + +{% if es_major_version == "6.x" %} +# temporary workaround for C2 bug with JDK 10 on hardware with AVX-512 +10-:-XX:UseAVX=2 +{% endif %} +{% endif %} + +{% if es_jvm_custom_parameters !='' %} +{% for item in es_jvm_custom_parameters %} +{{ item }} +{% endfor %} +{% endif %} diff --git a/ansible/roles/es7/templates/security/role_mapping.yml.j2 b/ansible/roles/es7/templates/security/role_mapping.yml.j2 new file mode 100644 index 0000000000..a3af322a86 --- /dev/null +++ b/ansible/roles/es7/templates/security/role_mapping.yml.j2 @@ -0,0 +1 @@ +{{ es_role_mapping | to_nice_yaml(indent=2) }} diff --git a/ansible/roles/es7/templates/security/roles.yml.j2 b/ansible/roles/es7/templates/security/roles.yml.j2 new file mode 100644 index 0000000000..149d458a61 --- /dev/null +++ b/ansible/roles/es7/templates/security/roles.yml.j2 @@ -0,0 +1 @@ +{{ es_roles.file | to_nice_yaml(indent=2) }} diff --git a/ansible/roles/es7/templates/security/users_roles.j2 b/ansible/roles/es7/templates/security/users_roles.j2 new file mode 100644 index 0000000000..1c0acfa1d7 --- /dev/null +++ b/ansible/roles/es7/templates/security/users_roles.j2 @@ -0,0 +1 @@ +{{users_roles | join("\n") }} \ No newline at end of file diff --git a/ansible/roles/es7/test/integration/debug.yml b/ansible/roles/es7/test/integration/debug.yml new file mode 100644 index 0000000000..81b08b1172 --- /dev/null +++ b/ansible/roles/es7/test/integration/debug.yml @@ -0,0 +1,6 @@ +--- +- name: Dump all variables to a file + changed_when: False + copy: + content: '{{ vars | to_nice_json }} ' + dest: '/tmp/vars.json' diff --git a/ansible/roles/es7/test/integration/files/certs/keystore-password-ca.p12 b/ansible/roles/es7/test/integration/files/certs/keystore-password-ca.p12 new file mode 100644 index 0000000000000000000000000000000000000000..e8331cf9cf38740742a703f39c29b3c183cf1129 GIT binary patch literal 2527 zcmY+Ec{~%0AICS_Fe{|VZI+=;nA=E29_DDSE=P_WiyS#B3q~_j{h#^T+3(_vicl{Q1U`pllu>2up%y^FlER_=K&)KtA9T z67)Wp1dThuQCJeh{a+Qt4ord&4zR^ROnG7d`#K~5dEi9T>;Q#nwTnY?7 zu@y3rdSu51XI<-YjXy9zDY9;n2L$M}0h7SJsASngq|TP44|BH!85d6qf4?OUitIrr znc`h$6VOTLCjmugs2Sz5Fbsg)c5I}4rg2JSfwp)@mS$8GJ@fiEz<14F*?h!{?ar{C zm~8G*2X4IeLO}w}m#OOW!_I?xpzK znviA%Ga;}A&&4U9D{}Vz$~N}396e%qUnQJI6-+m?YZE=4PTm`hKUx$&v!`T}vaU;k z8xD=!3ZmS`39oQCD|~=}`atPZ=X4x|8VE<$YEHQ%FHqzkedqBXIWFwf9uz3mL?2*P1|LamnU}p7Q9F=o55yo8+}g`)m6r z8vV>4aN^d7Q07|Wq9?&PASR7^_2afHz#}_16ce` z#VUo$Xmr@hX!7QmypH$1Ed`83Y}>Kd#ZjKNMk+P%(aK*~gMmGiZb`ZjMw-HV zI_s*Lgvyz=nW^{Jm7aEUK{p|Ti zrBt1l`YmAX#51cww^%~{%XQJf$s96JiCRv73LvUt01QnD6C*Pry z6n7mF^Xbm3C#xI2wyL0=h()31H(7g;52kDF3<@d$J<}*W?L8rG~6=^iJnVvoAolg$) z>(|z6UJ9A_`eaP1MHV|Xz=yg%FVjspBl!%!nfQ(uK@nH1>OnC9&3-OI3KyIUc)_(x z(2JUSu^HYz`>n#Wc+}%lDYH=z_@e7vb!+6JA}?RL|6upM72^~Q49z*?lb5O-UAl{-cTr!g|7kg zuyFK7m;*^{xXN6TUDpM78S6Gb@f;Q*R|)TvG=VnZXoMSQFhZj_Q{c`*D{igHx13CN ze%oCzKQ~%^{1P?(In&oK`CVYtBY5zH2h1i(3F*auuT{|h%z2O=iV}zze7(R{y#NnT z*TWwDTa{3_ITs~g1s{JeIdyGabuFx(mbL~?L*qc2@V}4vcn>@Z zIY2-jAOK4OegCHc{>!Yq|1oPAnVmDjsZN_h8!u5O^6GNzKRf={tg$3e8~5vM1koh{ zwnvg0r(=Ur24^w!P67pa0_kV(eng&vK|@ll{`3?s0n9UgNi~(Xjnpv|vn_#5RLuH^ zMa&~^e6Mz`EpSXK!%v=Z{mJ~UPt$HBCz(`flj<;5J=wN%XRB4M_lzFPi8M7dj&xe5 z1U>Ayx8qf$>@}p3_~;9b&}piZtP_0J6a^0NN7$JX{oHpVS5=IkOP|!b>1S;nud~w6NO?a&IR;wt<H6X6sf6xqq4>S$)I$s;?qzVh^OY(R z+TTO_gtpr;~>DM|{j&w?BZHA2-@q;-oDZaVu*=+Z{KPU}&mr zT7=xS1hXu6rl-=@)9tJUrX1JbP?(0Oi}lWSi1Sl^!B$RCHl`Y_v43n#|11on4|yEY z1-_bES;<+p9u|HxT|@L_NYBd>)j-vxCL<&c@c-32@s75Z20pfRsP4W$wFk5BS$WGDNfDy zr(JGyaMZ7O)w$m;7laPkM=5J6Cz8E^1d=r~4l}Q(1B!P&!y$|`V)L;s0V?}+Z zY=k9Hp5-RwF)qEVr;tz&K{U39fYztyioXn37XWZmKLz`{)bfX1L@arvSQUb$F7>NZ zu_7ILZr2ta9}41Kz>!xzf*O8Fxb3Fb)Za8W;v??6-QtpKZ>RL8bF7SWuWBp2y~7(D zr8AOO_Nb&CCUI6+$NMs^13~x(IyEed-LFh;^*vt(eTUVQup1mBh>V-w{=DI1%-WnB z;1e;4h8SlD>RP`=KB1pA30R#>q|u{6u(txn>3i6iZ=Z!KQq0?9`89#4tS<}VVMEse z$ZNH0_g)!h--aY~y_a?PyzisExMHi#D&&^RXYtHtv<%0M!T_Qi$MtF7?VQ~peSysI zC1s$EVq(FMu-OlOnCAah}D!c literal 0 HcmV?d00001 diff --git a/ansible/roles/es7/test/integration/files/certs/keystore-password.p12 b/ansible/roles/es7/test/integration/files/certs/keystore-password.p12 new file mode 100644 index 0000000000000000000000000000000000000000..6a58eaac87a8d63f92f9a7fc59343acd46712949 GIT binary patch literal 3451 zcmY+EcQhN08io^MM4MI>6)UI}>8yAL2Iw78da2ZPv@1Fa|cfNC;_x-*HnzHSpxTE>*xRdLl^mW09&pcP^yG0K$LHv*v9pNJ984wnQxu9>i*;BeDVy$h<-24IK@bBQ00nK! zCw@W@wDW7WV}!ZOuRd2?VHgify>WLR=Y1H?;fGffdip%H*FkamO>h2O;^@h{{$F`d zHr`zGOuKx$z++$JL<4N=apmR*5|&Huls5E3Je-efQZ}98rwKcj>;mrMsz4 z>c}(&N_KZzSD+)^`^zl*&N1QO%zg8L-+sYWPeDCSmI2m*oEcb8S(dqxt%Yf!U-v|QmFW@+r4sLz zA~}2oadjv}I+pJ`rv=+xD&7b{L>M*< zh0Gn(sI`FP{gvO>@5k5X(v6F5wmB*(r1sU7e0I1ziX*UU=zPgv4^q=Qau)#ncS0AR%V8=B5^i9sD4s|$Z^^R(HgT; z8m(p;s7QaNGSaYbi{d#47Yx5&GmYt}SU2b$yuJ~}jX)B8_`EOMsv>rnY!h`qU=vms zh%LcZSvZZ3<$14(t_FcpTT{oM4&@r#x4xsrnHPE2w7bt|z-`Ue5orNVDMVJ12*_LM zMp1w7&$f*>+U%t34X6DAq$$t$ey2b(#`bw`jIkuyz1aqA2FSZ^-k zBRvr(8|YEnds7|oLuf0Iv zZ8R;ma}*sG&XVJ0R-UV^%~G^i_?E;ek9KBtG8mwBfOffFjgcFi2f!|37bl}LWnnoA zN5>x^>9DN&Jw9u53znbL#4xg3D#R9{YyHf2;hoUx31!Ab#`-p&|M+|){OKDxDS!u0 zZm78z6TM7;=n^u`mR4BI$$qmSTSnFmk!?ve40+zZTu$>ON&S1xme%=ITov^mO!wu_ zQF2A+i&K$9t>~#Km0Pw;>xVa9#IgS7Z3n-GX!_6?q{mW3rmTdLhoa1GmE_VxI+*{m zh3V1cIGRAw1`>Kemj#EQyI-{QIYmSo3}R>b!+Dqkcay0V~)NZ$VySR|N1OlI!h&O8z_auU)=d1-lRNoh$W zp04!o5*=+3o-X?jN~Zz>{;bFUOMw4pS=xVDR`6&+bjw@uVD#Amlbu?m56Ffs{NI+1 z!qXYmoGVHk2m+p7(^#*uzW3giF+;+vGAj7!(d(KLQ}zjvM` zCA^%u5lijD?qu~v3@evOY+jdFnpRMhEB97tmP`04nhtRsEhv96{eB@ySd&oeI03a= z))5fyV9zVkO6h?Y7#`Kq>w<6wgul)nBfHZYXCocYAC!dn{?4t}Om1V390qI#C}*sF zgojLaP51^{@b#py8P#TD-3^N|9=_P~r0lx`!#aSyB37qg*>_0=Gw5+*#s`P8eQuby`l& z1{~ji(iKu6Ua5@G`+8wb8H)iQ3U@R3R9|U#C6&v~YczZx%V=Kzb-Bgk#JGQEnO>~V zQeqWwbfN*}_-+p&aWkbbH*|(1n-`iX3V_H zS-d<4)kpNGas59czyItq6Q4tMVtTDT0<8CyuBvwZFXzOyE`1?Pzc~|>^FG)OuSxn`lyNbJZk=y` zT=+(3Z;<&F687aC*~Gj z3QR+Pd8^EG{~Gn%@y51lxBTkw}mxNu`*2pXGATLY_92 zR4b2p8H=48BZcZ?ADzjD77<<$UoD-vdw(cDY2xd)35APYbDW~xcyG0#Xq!?>H>d1% z-rdQ_*f4zGXj4nlZLALf;{R6eshZk=SRLON2pdgRJuE#_CsU3HmYI@7-KF^$Z(WVI zJDBG8Z>W<|#X~YNEn(<1>u| z8+(B}`lML%M2>3dWkwunTiama@G!dG-?a~VS3%{-;9YAH>sU5;^|_xQ&$D$@zr?az zWb5I;8@Mvfl`)sz@;D`!?MwBe^=Tipe@9WC%;YHtiXKj~+E!etGrpkeG!SB=A1Xa- ze!?%vFLUhK8Sn_$vF|bn+Voz$8qASBp1GXBAKUL-Qx$jH(x$Y|YiTXFcaYJuu5>moyApMmDHbJV04-zN=B1{f*nTn0 z93s4IrXZ`1Wf-DdlQU07&+w_5eo|_xTpRGvzFdgoanv`VeV7l+l~l{wzGQ|dGl9g! z8Y04m{7^&oZla|3^|d=&x~b82kR)!ZDBpYRsu9Ob)!?hGZg0u74tkZUE2a5Lt|GmQ zmFXvh@Dc3N%nz;Z));|^RIi+QtZZoFfZK2nPZO6_f_+*DLUd|{(XNzeUz_D)mUkVZ zM`HJSDRe1&H`(K1+{p;`>Lhsu^WZK!s(QeX%R+T4%)%fNW5W#RXnfy|HSoL?e|2=u z?zqy)T0If4sr88C+}r-Nbpn%t7pgbkspxsSC-wD*$tYcwmp^AWq*f*037Spk6bL8a z4^n{+BUEj!e0=gBWcb9B+gdLc8;pU8m>Y4SzTe4K57R#n%#>RL6=KCOUgWU;Qjfr? zZ2n@1=?|6TN|^!v2P~7Qo->drr2qr;x(OZaPVh`D@sWw!5+~0H`nhZawmRXit@4mc zT*Q}eedf}M$>5$s{jF%{rd{|XQ)7XBU(>opZvXfl%BdcU!F4n^h5VqgTcp+Q7Y_kwm#*|IY&tiF*Tcq-G|;IjSga?eGtv6{xA z^D@rbPg7qGPUFqKYKNPv3cUbBoI4 zE_qtI;%(t2Vx57F1aV>AV*uvX_gvc{a_?umKm@<<1fe$V>*5cC{JB5x3}t1}5pMDt z@;;ewo~?J9N3j##LV$aII3MVz>pieLIaV(}I6K!p;;g5hD;^<_RnH`rxhGtSzOBe6 zGrst4DW{x#`zW&ibX?SB?QPFf9Yez;n~w+gFj_L2M^QLrjdy>FjJel%T(f=2@^~B4 zQEAUPXu_W2_h;i?PF7I?#6Y0x+qGGLUk-OAeAE;#br5CYP*$NOZAbOD5A)5NRV|cA zS5>syos^tll9y;pzUc)zpzXuCD%ALOlz~E8Jes=oY3;gWp=j9of9W%typ{LXShvP~wDaVx4Xd_zN)3HPs zhuzP}@PD=0^z>!ywGR)VAa|{JkOaFxX%B`7fi21)d}l2#-FK^d$PKG@?|%4Ql%~P4 z*ziQBnUp0NYNVUED>MF6`O6WZkRpM`JR1G3bC0ykVMPKYoo8X4qlD=j<>+sWFdD$} zUifgR=6)>oT1KB2YTCsZIaL!-P7NFy0>QtrMmHwwNxJ0ZdGqR3k5-TIK+hl5Fsr6bc)7Ustw`ohOn8VY{TlHIhZWJohS}4{zLXvO3ej}-LYn%^%l;k(uIa*r znCs8Yu;(sXqXd|{URls!<*OfmZUl_cn@=%Ip3MQT&{FbVY4ZwK`l9)bvAK^U;Ck9! zTQm0IF2A*^3Wu<@jO?dx3{09yRjeJ{+s|A$E@k7S9hgt!2i9v(9FCy78X*eaqNpsY zcOXPiZuewUo0)Z(Ghx@-b(+sJg+h}qd2p*j`c!H^H(%05Lfx-M8?Cv8{j|83jU8-@$IMcGHaGcvuUfr0M{PQkM?<5|1~Rt$k_6`Neth10TlPX z!C1ksu}C~nlg6^O$=3-G@!Av5H&&2~y?CONDW8~*qpfb$rOHCcEWocEe?XjsTnKJ{tzFDjQ!M-t z1=TxcCvnNMQ#ZME=B8$DA1sBNxibJ4s+N3yw1W?AQ_Uf!#ioAaRQIgdS%9}Z*1l0h2Wq{_Q~LMtxyivi1lbBeujDqO!D<2nYXSYPLlH~8KtBV8PO-UaTl zJFo1RP#*!*9+fSCt$H=z5B58LYZ5PwhLwGt4SG|K^*&G+(BEeJ0UULvG2>3LC9JW2xYr=2o`3{JFcpPb&0<2AKHB9S(wS^y4ly3s?1|E zsZ5uz9I)_i*fSly6A80?t@%BuN*t-9A`Yv%@u;jPMY><~N3DC^|XW>FCOv zlll~#*cUr7zTZiS{mw?Rn%XYJn&-W4tT<(+O38L~H|^K?%X^Z@#AytUU`RE1z67xq z7O?Sawxf_mDI!a5Q4~jp_<2o=EIzZpZ<`d|k@xj{>eLW-WI~m?BaUATND&{Hb?ubH>xm=%F8_uwo&%PMGwL%Z`kQVA01jXGgJR}O9 zC}dq!XKNl_!NmBOX_`~6wv{?`Iy(Cdyik~M)6uw+f#MW+pK|?aFZU}I;l+|I>>k1? zHKh0rx$A9$gq}e{rrVAyI4Sl++4s$ISwCfkSq{JI4$utvEBB$hVGFiuRZ*>XeMRh1 zeQ9`u5&n5!6ty<<=@kKu#bd=}<<*H`>NeM2YbY%U7EDJ}k>}9GESci?<|5;T2SIme z-|GEuLEq2iyNC!cVxgfNX_walxLho_m9FyGO>NCKcFsL$e@>@0#Eu9}$W?gZqW6CK@7!s8(uUMX4a9|dE| zk%U`5mBoXL&MMh(UAP1s0%lU=WMmL#0)U{Zs8IQZCmzNoEy9oAg!X;={qnVJ5EN^8 bgpa4L7ABPPD&FUxzS@&sfn#6YaF(IZh1hN82I8I3j zj#Kmx7DD1!Zv0oo;tRpCc>cj|f5r*Q@qbq^b|8p^gB&Aq5C&2X%KrcO&vRi2KQp_h z?Cg0?GU_+gftp4-gpe&H;jh3^FMuQ%VL@;RlZgCi!5?O?9H$!dawkqro>f z>h%bSe5csI-45$AOE_gKvb*>qROjXuS(F=T2N4upR*!y`RuaYooXtsYW9hPeOD7SO zn3~$^T=$k)z%yw1=gYqftM3dJ23e)TqOtm>Oml9|2$X`NQ$y2wUBt%G+1o|5W_j51 z3h`y6`cz{NNt5>^=DjmiN+qvc9Z&Z!OR^_TTHcrJDVMJeA zZDtJYtxSwBFZOg4U{@`v4O0CkisQ9=_~xqAS8w2&OcdTtNkt_LVK8d2vC)Z@NH{8p3a}KT90JMuDtvu$I_MKR7@#ikrMdF zgU#QSPQ_k2HwnXMfqDvCg7M0q&s}bOX1B!Wo9j+vdtX&%xxE9ckev_NCoN--rXwBjwz!?N?Y!=Dh@WkSPeK-G)di?9Ns${hu~W-Uzt>j|8;`1 z6Jq4mcZDbBWV&Ln4L%8R-$;O`G>Z|7ASG6OHe<8f7sZIuDVvAM%cyfEnI6(pJKZjt zfmec!lx2$cP|s!1ysiq00@l;dB=m^Ii{3wYDRIYNCNv!7-e=b5%VX_Fwh^!sy&NU- zsWUDl>BdaZ(SGw4P z4_m8a1baCDk{gUt+6BmqEIvKvbw>zH-xCZvl7qMZ(h88eZl1lOM-(~!m3~Efk$wA; z!-E-$vv8?{!Q{yAP$^v32M*;|-2vj3nW03(X(YsvL!zjmm73xl5N7TcbAE{(@E1&)^Qdy4y2Q~99xG$DDn(L)q}J(6>t7L6m_`}mL- zr>i?bU2P_-EtLWxCf3h@{70Qy6bV?p=B+uKGp8oBAkeiwgE-vVUM|jn77ciXZfD{% zIU?1q3K;LfQnqj{;wUb6t3SPGuu^JL0GF>a_a#>NNzKQb?&T5m!50lJWX7!o!ERoF zP+@*nkW9d@ADy3;%38@aK*`4{9HsrcNg-g41mdF})@$#SJ7k3|xlt5{B3i0RLge-C zxaS1BI!&gqG9e8JV+Pjbz4R4v0FwSuw{HB9S(K`~Pr!0P#Vy=LA*Xe;oFwUb-i}pF zU7o6K*)+at4h8=zItXSW_G&AkCogV2R{Jy|C;Se*|A=fHJS~+omOnV=u2$#Ud8lfN z6#us>+4xm?#kc{XfN;PqKor3L&kh6xBPIV+K&bLVcwIto1WTxDXsM!*+9(}WZIm_= z$6EF85-XI1V=efD@<2eqpLO>?3Glxx3;iF-Cr3)x zVVLNLVFW{DwTEYbO0vUsp;U6&OFb!0>USL zzr|Sf=5ztzt<>PDxTDoZlu>?^td0ApI);o<`?@{x)CX{^{j@S@MBQML>dzOC0Q5|y z=Nq4cuts6F0@Y_;%&d(QWw{uMv#GqS{%)V{X_a+KVA7))AxUkD1=-;(&TV(*VndEi zyzo0ckxniw0T@R{@J3FWm%cNgMbKfQPH8}W$L6QEog)q{N5*X~P> zxjZ3mOd_qc{+P?NiJ;{Q0GX$!lFc0SL`!Ta{OBeibYlmN}vHlfMvM4(JFU_^h^Yh=jDxku7u{PUD>~V4fZ#nAQ01^lC zoRUvF?q}S#^)=EFDlU)5FQYki7`XI=iDXfH(n6;NLf&wsX*Rdou@^PM=v67`Jd zuU69mb^p}4!!!o=5g436#R%h-=}R*|TKEo1zd{cjEk>EE5uw-ff^vU;6QCC`X!MnC zD1eWik9ariBo5~q=|aIW%KUzdJ@25|^}y8;3uA>`^KNO9VV4?@N)R3BS+5VuGHTz-Mn-*8w;s~R?kF#9+ zic8W-pLdlNI%X*@5cmj{cCdv$@s-Z|Ermfu`5nogBFRwGDooKB#|vQTb}sdj9iF`O zvFqg24oeMDf2#vFIZYxx4ph zZs8+h_>{QUaNMPPro;-x1Z9->sV}8{=oP%A{%>A^`?ESM6}#Wv`-CU%^5~Yu2&T=2 zeY6Ofj)QAK)HB9E({6d7O`QGsxXr3!cs2xgx$NXQ(z#oDO`*4=o5W0Pi0)@Hw)HU% zLA}El8xqb)XeGH`69S~XT`?EEe^@t9`jFzMCBp673a8y=P2I>3iTliubX|h}^$#=n zk$hCr1@_6SfKi3lsQ~4$(I)=DY0!Sv$6$ATZ3`)) zCtw-c)`22kx(lqjwVCN1M^%aEQlzjYW44Xv*@ppauVZhpCUKWq_uJA?p^r*<{)ThFQUqoEsH?H`F&a?Rb*u*(4 zXD7}$?CAxb8Sfs`wbHzi|##X#1yXNXc&-chPb8x$400&9;ie3PKmG*gz?}KW|9!IQUCr6q OpWi^W6(BH>K>8P*ZdvgF literal 0 HcmV?d00001 diff --git a/ansible/roles/es7/test/integration/files/certs/truststore-password-ca.p12 b/ansible/roles/es7/test/integration/files/certs/truststore-password-ca.p12 new file mode 100644 index 0000000000000000000000000000000000000000..a1662a8344363c9b58a96177107b407dc8403bcb GIT binary patch literal 2527 zcmY+EcRUmhAIERIv)3V`>_Tz2GdqqXo9xawihc^o&N`f|LXnZpDMH4HlNmBIGP08K z%gA_aXZ3iV*Yo^-uiqb^f8L+(_w(l)ML@e+m*C+ZRp7=SduTmm8rLO_I{ z<6sm4>iCZeY6>Ah4bQROd30cO|NEk+1%h%3kYf}9a)1(p(f%KwkMls-?T6xj{NQ|6 z4}K#`7ox7ML5;iu1Azgbj3ER_*CCc`Ag>~7`6ArnM{dWn21Q|NRwr^pKs=al^i3s{ z4lA+lR&d>Xetaxjo2B@-lgy42leukchNe}Ov_)E;Ch@gB-s?0L4mYkS3_tknlw6mS z9Y6}vD#x8D8GL;-jP1l){N#+$3B|o*>t!(H5R^EIuuKe^IV?XQaNmeB83U7M^+d1C zW%qMda=*R&3HKcTE>FGIgdpBm`wdOseyX!*IyJgr{GB@xw;TL~0Q|k!(ORqM@APph zE)YRC{vu~-IY9odX>3AnSo5b0si@_ec6ap}njk&{=Et*K4!EGk5s*zr&zS-L@Kmcp z`+HREv#hpdqdNs(C76{-0g5;L28%pRrNytF^=rxUoeg;6pQ_qF^5yAG%>Ru?sj=wzbm6x1MQy3{$04LdQVqMV)lUT)m+Y$wa14^fv1K( z^;JrZ-On)jVafuwLFm04SSde&y3s2aeziwmb7_C&_HJc5D#I@CTPa)kW&)X+*++0y z8nd?S(d&?0Xhc6*EJ=<3F(d)ST{bbswGKjG8&wZ2&`X+=6;4xh4SNsG#%N9z3-O?~S;e6%_~s{<;&tH3~( zR0(1;@o@T>_OxT+td4>a6_hi~tK`{nnLI%;J@)`u00j6Rs?nQ-e*fyLnE((*C}7~r zfq^Vv!n~O&r6MPa{2?Mu_ZVbR=*SwoC>lmw5Wuu)IDWHbs{Bch*y8=|U+b&=-gNr= zt<5)7fGh1JjBeY4sZFWPudG(N_cawGf>#^6(@Wq&!DHzBTb*o|^<_e~(V{$xg|dZ| zm~AuMn*<@xiv<@2>$qHIbcu7BUKZKw*1oB#Kmia>r{QB4uX!_;V2jhuK zHaJTS6Xuocsd32m3_PKtk%7K)z`%ITsZrH*Wj>os-MmtCgiR)mNBK8)Gg%!_Jq4qJ zwmmz6DUN*>2?9E|ZplH>yRAjI7zdR=RSebV|Zu$TOz0k$NH_G;V z;-ulWR!uOoh@bH@Yl(_BpBX3QlW8q8ZJodp_29uJ>x=fOYM;8rK(aIxo|i!wW*T-nl+37ZV_DnG2mLMnIFlKq2EJ8 zL26vQUKIhbXTl3q9A*CTxZ#5bHXHE8U}+?WJl)3i(9vkX6E|9w1pan(5>syaG!8wx z(q&U*D9_wP5b9Ffy|aNvEm_JG)RHxD<+Rv%v^9Wgl0G^%+PtF2$|yOJu_=7V?mMddWdN-0!@4$Vj1_J-=N@VXiDS+l}r5bop~W_ljJ!&QBg^52Ha| zg;Q~z_jpqO;ZG)(Eurph=FOy?nAJbhmfh12hg{ZnBaRY^E>Y6!TA_a~vDk&Q+;trw zPrbipB$k`UI^rzuKEhEV^4bMmBIg#B$C=(cRKHlJwnfXR*{5RY>ha}JS!hhH=QxD- z)4iLLvtP-Y57J;Neg%3`vpzRBF0C=#-dMa|Pa#BJa$~>GsX)i+Eko73eaDnfgEX4V zTgiS9!h4l`y{F#y`>KokMg!|u`0>_h#es9^Hx1{vF*FZt)I}yPbi%uPA_JC5{?_{@ zHEb>R)z9KqtSqawUqOK_bm2!)4!109jJ)t;Ax@`F!x_H}W$uUu_fKQyUtkxA4>nh- zGjP*S71l;L8(UVosM(+0O<75OV-D{Dt{yzd z*aLt0lP5(wB9cw}^IE66djsuKd>J;=zYpLdGSfyg1)&c4-QS~}l`$-8Dt0Kxrl~iRj?zrcoAHTmx%W z!2z7bzua;#D;tA}lJyu$d!#V=(9czm=Vmm;axBBUSQz+E@#ca$5-%<yre@xu z={}RBVC8Wddz3m#0EK`-B^bdVZYTi4u1!yT&h+3qz>MpmYia))!=6Nf283PLlv}$Y YAbTw#S1=98aLJ0=k$D*e1`>1s4H+hnY5)KL literal 0 HcmV?d00001 diff --git a/ansible/roles/es7/test/integration/files/certs/truststore-password.p12 b/ansible/roles/es7/test/integration/files/certs/truststore-password.p12 new file mode 100644 index 0000000000000000000000000000000000000000..25d9aa4c6796acba288307fe2748178817819722 GIT binary patch literal 3451 zcmY+EXEYlQ+r|@;*wn5)N{tkWy?0A%)7oPHODM65+OewC47K-)RkNts2DK>~MXg#j zN@}*|)Av2^`#k6QaG&d(Yuq1yFf^4v5s(;$rh-Apgk!X0&ZvMSz(OF#u->LW2gkcP0AnzSi^duOl1xx%Bv>Kw1!~=)#XApI=C*M+Q-n z{h;hKqm-USE56Lx(s_Z2P?IRGQsw0imJV8q7GSfcl`>oDCs5iP5-M<77oOJokw;s( z{Px;AIX%yYGDVw)T;|X3Pf~V-FNcVpfQ~S*P`8QeTW8<3CH|uZAFYEqyDZbLzb>qwY@J*MrVj5I zTMQ>y2<1nG-oZK{I?-jBc)Dwj3)FXa)oxT>XCR7|T??w;{c_@a@&syLa=LN?PEdIx z(`+W9Jg;VBlH~X{@%u1hMWNEQbZnkS%|gs^9PH}pb!v6bT#BRtkX04EcJ8;hyS8sw zuXZ|oP{V|LmHrE7KxJB1S|PMzj(ns*7Mx_)IXL{dHyJ4r%Ok6&i%e`|1(uWrDnCjO zV6%jW-HF80=h?k%sF{f8z4r9(at%?(0+?mX7lWdv?c7vD5gNcj}G@d*aFUJpf6I#TC_vliK){l#qWApYT-Eq_^72qVjzGcz0@;sMb8YFG$Dk@$T z9DdR06vP?n(Ny_;^68(1-i1z!QXwmHp@HJet$E@&Z#3ckRs_d_{wW3j?(PMhK$P3! z7fqMNgPmAV*6Ztro4PgO@8*hMd0&6+${v41!AD<`w(}Dobo*lU&CcdkV3XPMA>oVC zN!X3j2N#F86k$A#a{1q0LIA5=%{QIlsr$H}J3q(3GuFm0fZ?C^>?vqPva-xp4!Lwi zZ=&!NE_BIN)2N(}j#Tdz8@XE{=I}>_RqtcLy_4(pf#91W^hNdQt3YplAvd&T5_zQ8 z@OC@1;eNcbPe)DD8WYS@h1Q!%ir-Tc=Zs(BlsfJRqP*yRZ5>5xwQnW+nvQ7DDJqTO z&QChPW#&NL=r-Xsmcxgavn5glK~-76>26B{dWEm=M)#eyuS6ZEJ(IZoME6kO-ACrS zXy!)a73hU*e3hzg5oA_ujVW08Lx!Zy3(F8gh1Fjva=wekk`$pd|8Uf>j>lIiFMTCS zUDW0V0`glVr+6dM6N{D#k9&r0;zYT_yBns|&`@WR?JesJ>nC?~%P@44yN^T$zZSh} zJ>J7aKg25^#AS25-MB7-Zf0J^Qagt&%W9*Pj3O>5Eg<)08yDodZy=KkNxi#7p~RBx zX4=%a+U%RqU8f)0Xwu6;qArr{A=_x0yXpfq<{u+4URL$Xadqq?Y&7@Wh>t+=?!PYi zGd+N(I?p@CqtUrT*QBtBQS9RxiGf>3X1f_Oijh?4f%PzaDUEvqMuEosw-Ww$xw_t) zhXeXS^QgH%a=f1P{i1FI5Bv;9M}yhwQYlK1J#scyYgDbINkbd1N$!1+{j2h8wU?&q zg6MCoQAj;yH8Wp({dzh(bS*sPIq#Y^@~%qAP~PFDT7yU)VL(cTP>}x<@Z)%1(|fX? zW>RbHQeknBbGS4~B&^UW^F~TaCvm&{Yl=I_IY)e-iqlv-HEs@qAAJ;97))bY{ZazC6 z61A8;TE=J&yS~j0#yhu*@Xa-J(s@lwd>%}pJ=k!0XLjgyVE?(PjLKtj`;ZDq2y;1~ zulKgQpoH;-$k+TW5uzl0+le|1&A0+T=xH)PGd+5}H6ujJ#hV(+O{w7^@O~_mk;mQe zT@5{11MW2AJbuHl^ap9lu1*DZX?9OO&l$+Vtb?lbl?t)Cl+W4K$5GxmzTr*gZ5pi)>3K;y>w~)sn)PagiZ5wu zQ{MRc52vXYE-|-RTJ^oz{Z<|mf7rEVJd(tbuSfsKRk2B;!b>)BuHF5@zE%aXP+G@a zmHCa7(wp>vtt8o#1<)mt+qwl`AM}JJu-MaH^TAN0ZG+A4TB>SPT>~s_Nm6GRu>sK$ zHGOXEov{Mooa1*!VFe4;k)l3cJ<6(^Px9DGl_n&+oL!+#J^`BmGjU|eHp?Mlcqeo0 zEy7QzPcZKM(rqK@S3u6nT76(UzEl0+vy9eIVmDE9q~7A7KPps!-20KXFrM5m<{yiO ze2I=bI(=+rnln2SNgc@*fUI-(lzts?L;KkG42fb+*3ZML_x1(B;JmQj&Ys(>Y*rZH5 z_Gfm965|x-k&oeWOgoD*Kici>N9+g4$`k}$kvuScvgy!|ECfzwS{J}_C-5=SVcRpO z{F|OtvspCHpjBt2JJDk`5f2FyO=pl~{%-?3FHD3pdP*NjmpxI=NE7Dy(xuSP4upe{*Viv7*`gL6|KrdoxR62BR(O^QD#cw;@@vlmI$S4Gt{BKCq{vX2#x`kc4xph!%5) z8b;G`Q6ZiNwBP6Y#3yHkti?ZvniC4!p-1CL=Cfltu)?W)ZnnEP)0wz<^EpmPrPT~h z7XK>t*r8ja@WW@Pxd(kuS{M|wNrhONX=h0t8_B^>=Y%;_CNE5dg15~H6w7pMfw5T+ z%N~GRE! zKp}lvH@9a;U$f>qzWj55$6~&L6*)qM>QKC!q8{eVZp8W`>+N)wsK4trYyxxEVNS=W zj}Wf!aA)0tw)L_Gsz$f-A zDrtep%o=A*nK>k{OybU=b*;F^Peil-I(`10qi?uzfff!bxb`R9(?`XdTCW~-n)P&7 zckgZu83psRlZ7xYHR^!F>HDzSi64aJ4ApVBJo2X^15#}Ew~!xoix2{p-N}6YM{WlS zj8h+T*}H+^CTW^{avz4Z_{5E>8W>_(x#ynwu+{^=*E!v4tc6IEumKLY7ELNw8f<9I z)cku|vTeq=^&MPpsM!pUvsCSH*_)RE79Ae$J1D!PKi9Zf`lasGH7&%G-omq^@(*4o zSj0w^m43gE@_MEJvGl=+#-_@wsd#}_;gzYVv<0fGEZPbZ+NDfi{>u|+qk|5R!p?nQ z#I2$(q_G7?PFg2Bac`Rp5)Hoie{s3sd2nbHyoXf-wm});76!vozEzcNtQtLb$`rQ# zfQVi-{j{Di6JO}}0Qz@WS2A$Bp7(#J_c(&XA)6nW?=MS%oE&S*&PuWGZ zzHdonPKzU4uIC-wrvUDGL8G&L&KI>_#pSYD<^%}1&QCNwyea&-`e$#wmd|g!H%v|{ zi{Fm*dsnIxT~=SroG3NEuv|`wOLbP@&{}cCEjaZfAOZKeT+@72jyIjBjBRBHC1A=h z9vB$}45cO}Vg&<046*l)dTnJV8K { + 'shell' => '/bin/false', + 'password' => '*', + 'defaults_path' => '/etc/default/elasticsearch' + }, + 'RedHat' => { + 'shell' => '/sbin/nologin', + 'password' => '!!', + 'defaults_path' => '/etc/sysconfig/elasticsearch' + } +} + +$family = $families[vars['ansible_os_family']] + +es_api_url = "#{vars['es_api_scheme']}://localhost:#{vars['es_api_port']}" +username = vars['es_api_basic_auth_username'] +password = vars['es_api_basic_auth_password'] + +# Sample of default features status +features = { + 'monitoring' => { + 'enabled' => 'true', + 'available' => 'true' + }, + 'ml' => { + 'enabled' => 'true', + 'available' => 'false' + }, + 'sql' => { + 'enabled' => 'true', + 'available' => 'true' + } +} + +shared_examples 'shared::init' do |vars| + describe 'version check' do + it 'should be reported as version '+vars['es_version'] do + expect(curl_json(es_api_url, username=username, password=password)['version']['number']).to eq(vars['es_version']) + end + end + describe 'xpack checks' do + if vars['es_enable_xpack'] + it 'should be be running the xpack version' do + expect(curl_json("#{es_api_url}/_xpack", username=username, password=password)['tagline']).to eq('You know, for X') + end + it 'xpack should be activated' do + expect(curl_json("#{es_api_url}/_license", username=username, password=password)['license']['status']).to eq('active') + end + if vars.key?('es_xpack_features') + curl_json("#{es_api_url}/_xpack", username=username, password=password)['features'].each do |feature,values| + enabled = vars['es_xpack_features'].include? feature + status = if enabled then 'enabled' else 'disabled' end + it "the xpack feature '#{feature}' to be #{status}" do + expect(values['enabled'] = enabled) + end + end + else + features.each do |feature, status| + feature_available = curl_json("#{es_api_url}/_xpack", username=username, password=password)['features'][feature]['available'] + if feature_available == "true" + status = "available" + else + status = "unavailable" + end + it "the xpack feature '#{feature}' to be #{status}" do + expect(feature_available = status['available']) + end + feature_enabled = curl_json("#{es_api_url}/_xpack", username=username, password=password)['features'][feature]['enabled'] + if feature_enabled == "true" + status = "enabled" + else + status = "disabled" + end + it "the xpack feature '#{feature}' to be #{status}" do + expect(feature_available = status['enabled']) + end + end + end + end + end + describe user(vars['es_user']) do + it { should exist } + it { should belong_to_group vars['es_group'] } + it { should have_uid vars['es_user_id'] } if vars.key?('es_user_id') + + it { should have_login_shell $family['shell'] } + + its(:encrypted_password) { should eq($family['password']) } + end + + describe package(vars['es_package_name']) do + it { should be_installed } + end + + describe service("elasticsearch") do + it { should be_running } + end + + describe port(vars['es_api_port']) do + it { should be_listening.with('tcp') } + end + + if vars['es_templates'] + describe file('/etc/elasticsearch/templates') do + it { should be_directory } + it { should be_owned_by 'root' } + end + describe file('/etc/elasticsearch/templates/basic.json') do + it { should be_file } + it { should be_owned_by 'root' } + end + #This is possibly subject to format changes in the response across versions so may fail in the future + describe 'Template Contents Correct' do + it 'should be reported as being installed', :retry => 3, :retry_wait => 10 do + template = curl_json("#{es_api_url}/_template/basic", username=username, password=password) + expect(template.key?('basic')) + expect(template['basic']['settings']['index']['number_of_shards']).to eq("1") + if vars['es_major_version'] == '7.x' + expect(template['basic']['mappings']['_source']['enabled']).to eq(false) + else + expect(template['basic']['mappings']['type1']['_source']['enabled']).to eq(false) + end + end + end + end + + describe file($family['defaults_path']) do + its(:content) { should match '' } + end + + if vars.key?('es_plugins') + vars['es_plugins'].each do |plugin| + name = plugin['plugin'] + describe file('/usr/share/elasticsearch/plugins/'+name) do + it { should be_directory } + it { should be_owned_by 'root' } + end + it 'should be installed and the right version' do + plugins = curl_json("#{es_api_url}/_nodes/plugins", username=username, password=password) + version = nil + _node, data = plugins['nodes'].first + data['plugins'].each do |p| + version = p['version'] if p['name'] == name + end + expect(version).to eql(vars['es_version']) + end + end + end + describe file("/etc/elasticsearch/elasticsearch.yml") do + it { should be_owned_by 'root' } + it { should contain "node.name: localhost" } + it { should contain 'cluster.name: elasticsearch' } + it { should_not contain "path.conf: /etc/elasticsearch" } + its(:content) { should match "path.data: #{vars['es_data_dirs'].join(',')}" } + its(:content) { should match "path.logs: /var/log/elasticsearch" } + end + + if vars['es_use_repository'] + if vars['ansible_os_family'] == 'RedHat' + describe file("/etc/yum.repos.d/elasticsearch-#{vars['es_repo_name']}.repo") do + it { should exist } + end + describe yumrepo("elasticsearch-#{vars['es_repo_name']}") do + it { should exist } + it { should be_enabled } + end + describe file("/etc/yum.repos.d/elasticsearch-#{vars['es_other_repo_name']}.repo") do + it { should_not exist } + end + describe yumrepo("elasticsearch-#{vars['es_other_repo_name']}") do + it { should_not exist } + it { should_not be_enabled } + end + end + if vars['ansible_os_family'] == 'Debian' + describe command('apt-cache policy') do + its(:stdout) { should match /elastic.co.*\/#{Regexp.quote(vars['es_repo_name'])}\//} + its(:stdout) { should_not match /elastic.co.*\/#{Regexp.quote(vars['es_other_repo_name'])}\//} + end + end + end +end diff --git a/ansible/roles/es7/test/integration/helpers/serverspec/spec_helper.rb b/ansible/roles/es7/test/integration/helpers/serverspec/spec_helper.rb new file mode 100644 index 0000000000..2f18ef3df9 --- /dev/null +++ b/ansible/roles/es7/test/integration/helpers/serverspec/spec_helper.rb @@ -0,0 +1,31 @@ +require 'serverspec' +require 'net/http' +require 'json' + +set :backend, :exec + +require 'rspec/retry' + +RSpec.configure do |config| + # show retry status in spec process + config.verbose_retry = true + # show exception that triggers a retry if verbose_retry is set to true + config.display_try_failure_messages = true +end + +def curl_json(uri, username=nil, password=nil) + uri = URI(uri) + req = Net::HTTP::Get.new(uri) + if username && password + req.basic_auth username, password + end + res = Net::HTTP.start( + uri.hostname, + uri.port, + :use_ssl => uri.scheme == 'https', + :verify_mode => OpenSSL::SSL::VERIFY_NONE + ) {|http| + http.request(req) + } + return JSON.parse(res.body) +end diff --git a/ansible/roles/es7/test/integration/helpers/serverspec/xpack_upgrade_spec.rb b/ansible/roles/es7/test/integration/helpers/serverspec/xpack_upgrade_spec.rb new file mode 100644 index 0000000000..237b1de87d --- /dev/null +++ b/ansible/roles/es7/test/integration/helpers/serverspec/xpack_upgrade_spec.rb @@ -0,0 +1,110 @@ +require 'spec_helper' +require 'json' +require 'pathname' +vars = JSON.parse(File.read('/tmp/vars.json')) + +es_api_url = "#{vars['es_api_scheme']}://localhost:#{vars['es_api_port']}" +username = vars['es_api_basic_auth_username'] +password = vars['es_api_basic_auth_password'] +es_keystore = Pathname.new(vars['es_ssl_keystore']).basename.to_s +es_truststore = Pathname.new(vars['es_ssl_truststore']).basename.to_s + +if vars['es_major_version'] == '7.x' + es_security_api = "_security" +else + es_security_api = "_xpack/security" +end + +shared_examples 'xpack_upgrade::init' do |vars| + #Test users file, users_roles and roles.yml + describe file("/etc/elasticsearch/users_roles") do + it { should be_owned_by 'root' } + it { should contain 'admin:es_admin' } + it { should contain 'power_user:testUser' } + end + + describe file("/etc/elasticsearch/users") do + it { should be_owned_by 'root' } + it { should contain 'testUser:' } + it { should contain 'es_admin:' } + end + + describe 'security roles' do + it 'should list the security roles' do + roles = curl_json("#{es_api_url}/#{es_security_api}/role", username='es_admin', password='changeMeAgain') + expect(roles.key?('superuser')) + end + end + + describe file("/etc/elasticsearch/elasticsearch.yml") do + if vars['es_major_version'] == '7.x' + it { should contain 'security.authc.realms.file.file1.order: 0' } + it { should contain 'security.authc.realms.native.native1.order: 1' } + else + it { should contain 'security.authc.realms.file1.order: 0' } + it { should contain 'security.authc.realms.file1.type: file' } + it { should contain 'security.authc.realms.native1.order: 1' } + it { should contain 'security.authc.realms.native1.type: native' } + end + it { should contain 'xpack.security.transport.ssl.enabled: true' } + it { should contain 'xpack.security.http.ssl.enabled: true' } + it { should contain es_keystore } + it { should contain es_truststore } + end + + #Test contents of role_mapping.yml + describe file("/etc/elasticsearch/role_mapping.yml") do + it { should be_owned_by 'root' } + it { should contain 'power_user:' } + it { should contain '- cn=admins,dc=example,dc=com' } + it { should contain 'user:' } + it { should contain '- cn=admins,dc=example,dc=com' } + end + + #check accounts are correct i.e. we can auth and they have the correct roles + describe 'kibana4_server access check' do + it 'should be reported as version '+vars['es_version'] do + expect(curl_json(es_api_url, username='kibana4_server', password='changeMe')['version']['number']).to eq(vars['es_version']) + end + end + + describe 'security users' do + result = curl_json("#{es_api_url}/#{es_security_api}/user", username=username, password=password) + it 'should have the elastic user' do + expect(result['elastic']['username']).to eq('elastic') + expect(result['elastic']['roles']).to eq(['superuser']) + expect(result['elastic']['enabled']).to eq(true) + end + it 'should have the kibana user' do + expect(result['kibana']['username']).to eq('kibana') + expect(result['kibana']['roles']).to eq(['kibana_system']) + expect(result['kibana']['enabled']).to eq(true) + end + it 'should have the kibana_server user' do + expect(result['kibana4_server']['username']).to eq('kibana4_server') + expect(result['kibana4_server']['roles']).to eq(['kibana4_server']) + expect(result['kibana4_server']['enabled']).to eq(true) + end + it 'should have the logstash user' do + expect(result['logstash_system']['username']).to eq('logstash_system') + expect(result['logstash_system']['roles']).to eq(['logstash_system']) + expect(result['logstash_system']['enabled']).to eq(true) + end + end + + describe 'logstash_system access check' do + it 'should be reported as version '+vars['es_version'] do + expect(curl_json(es_api_url, username='logstash_system', password='aNewLogstashPassword')['version']['number']).to eq(vars['es_version']) + end + end + + describe 'SSL certificate check' do + certificates = curl_json("#{es_api_url}/_ssl/certificates", username=username, password=password) + it 'should list the keystore file' do + expect(certificates.any? { |cert| cert['path'].include? es_keystore }).to be true + end + it 'should list the truststore file' do + expect(certificates.any? { |cert| cert['path'].include? es_truststore }).to be true + end + end +end diff --git a/ansible/roles/es7/test/integration/issue-test.yml b/ansible/roles/es7/test/integration/issue-test.yml new file mode 100644 index 0000000000..3c5f77a0f1 --- /dev/null +++ b/ansible/roles/es7/test/integration/issue-test.yml @@ -0,0 +1,45 @@ +#This file is for users to test issues and reproduce them using the test framework. +#Modify the playbook below and test with kitchen i.e. `kitchen test issue-test` +#To add custom tests modify the serverspec file ./helpers/serverspec/issue_test_spec.rb +#Idempot test is enabled for this test + +- name: Simple Example + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_xpack_license: "{{ lookup('file', '/tmp/license.json') }}" + es_config: + xpack.security.authc.realms.file.file1.order: 1 + xpack.security.authc.realms.native.native1.type: "native" + es_heap_size: "1g" + es_plugins: + - plugin: ingest-attachment + es_xpack_features: + - security + - alerting + es_api_basic_auth_username: elastic + es_api_basic_auth_password: changeme + es_users: + file: + test_user: + password: changeme + roles: + - kibana_system + native: + kibana: + password: changeme + roles: + - kibana_system + elastic: + password: aNewPassWord + es_roles: + native: + logstash: + cluster: + - manage_index_templates + logstash_system: + cluster: + - manage_index_templates diff --git a/ansible/roles/es7/test/integration/issue-test/issue-test.yml b/ansible/roles/es7/test/integration/issue-test/issue-test.yml new file mode 100644 index 0000000000..a3c37e1917 --- /dev/null +++ b/ansible/roles/es7/test/integration/issue-test/issue-test.yml @@ -0,0 +1,2 @@ +--- +- host: test-kitchen diff --git a/ansible/roles/es7/test/integration/issue-test/serverspec/default_spec.rb b/ansible/roles/es7/test/integration/issue-test/serverspec/default_spec.rb new file mode 100644 index 0000000000..ee7536b049 --- /dev/null +++ b/ansible/roles/es7/test/integration/issue-test/serverspec/default_spec.rb @@ -0,0 +1,8 @@ +require 'issue_test_spec' +require 'json' +vars = JSON.parse(File.read('/tmp/vars.json')) + +describe 'Issue Test' do + include_examples 'issue_test::init', vars +end + diff --git a/ansible/roles/es7/test/integration/oss-to-xpack-upgrade.yml b/ansible/roles/es7/test/integration/oss-to-xpack-upgrade.yml new file mode 100644 index 0000000000..5648ebb455 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss-to-xpack-upgrade.yml @@ -0,0 +1,25 @@ +--- +- name: Standard test for single node setup. Tests idempotence. + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_version: "{{ '7.0.0' if es_major_version == '7.x' else '6.7.1' }}" # This is set to an older version than the current default to force an upgrade + es_enable_xpack: false + es_heap_size: "1g" + +- name: Standard test for single node setup. Tests idempotence. + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_enable_xpack: true + es_heap_size: "1g" + es_xpack_features: + - monitoring + - graph + - ml diff --git a/ansible/roles/es7/test/integration/oss-to-xpack-upgrade/oss-to-xpack-upgrade.yml b/ansible/roles/es7/test/integration/oss-to-xpack-upgrade/oss-to-xpack-upgrade.yml new file mode 100644 index 0000000000..a3c37e1917 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss-to-xpack-upgrade/oss-to-xpack-upgrade.yml @@ -0,0 +1,2 @@ +--- +- host: test-kitchen diff --git a/ansible/roles/es7/test/integration/oss-to-xpack-upgrade/serverspec/default_spec.rb b/ansible/roles/es7/test/integration/oss-to-xpack-upgrade/serverspec/default_spec.rb new file mode 100644 index 0000000000..c633ffaf14 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss-to-xpack-upgrade/serverspec/default_spec.rb @@ -0,0 +1,9 @@ +require 'oss_to_xpack_upgrade_spec' +require 'shared_spec' +require 'json' +vars = JSON.parse(File.read('/tmp/vars.json')) + +describe 'oss to xpack upgrade Tests' do + include_examples 'shared::init', vars + include_examples 'oss_to_xpack_upgrade::init', vars +end diff --git a/ansible/roles/es7/test/integration/oss-upgrade.yml b/ansible/roles/es7/test/integration/oss-upgrade.yml new file mode 100644 index 0000000000..b841519c56 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss-upgrade.yml @@ -0,0 +1,21 @@ +--- +- name: Standard test for single node setup. Tests idempotence. + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_version: "{{ '7.0.0' if es_major_version == '7.x' else '6.7.1' }}" # This is set to an older version than the current default to force an upgrade + es_enable_xpack: false + es_heap_size: "1g" + +- name: Standard test for single node setup. Tests idempotence. + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_enable_xpack: false + es_heap_size: "1g" diff --git a/ansible/roles/es7/test/integration/oss-upgrade/oss-upgrade.yml b/ansible/roles/es7/test/integration/oss-upgrade/oss-upgrade.yml new file mode 100644 index 0000000000..a3c37e1917 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss-upgrade/oss-upgrade.yml @@ -0,0 +1,2 @@ +--- +- host: test-kitchen diff --git a/ansible/roles/es7/test/integration/oss-upgrade/serverspec/default_spec.rb b/ansible/roles/es7/test/integration/oss-upgrade/serverspec/default_spec.rb new file mode 100644 index 0000000000..939ee16d7f --- /dev/null +++ b/ansible/roles/es7/test/integration/oss-upgrade/serverspec/default_spec.rb @@ -0,0 +1,9 @@ +require 'oss_upgrade_spec' +require 'shared_spec' +require 'json' +vars = JSON.parse(File.read('/tmp/vars.json')) + +describe 'oss upgrade Tests' do + include_examples 'oss_upgrade::init', vars + include_examples 'shared::init', vars +end diff --git a/ansible/roles/es7/test/integration/oss.yml b/ansible/roles/es7/test/integration/oss.yml new file mode 100644 index 0000000000..d7ab9b72f0 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss.yml @@ -0,0 +1,17 @@ +--- +- name: Standard test for single node setup. Tests idempotence. + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_enable_xpack: false + es_heap_size: "1g" + es_plugins: + - plugin: ingest-attachment + es_config_default: "test/integration/files/custom_config/elasticsearch" + es_config_log4j2: "test/integration/files/custom_config/log4j2.properties" + es_config_jvm: "test/integration/files/custom_config/jvm.options" + +#Do not add tests here. This test is run twice and confirms idempotency. diff --git a/ansible/roles/es7/test/integration/oss/oss.yml b/ansible/roles/es7/test/integration/oss/oss.yml new file mode 100644 index 0000000000..a3c37e1917 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss/oss.yml @@ -0,0 +1,2 @@ +--- +- host: test-kitchen diff --git a/ansible/roles/es7/test/integration/oss/serverspec/default_spec.rb b/ansible/roles/es7/test/integration/oss/serverspec/default_spec.rb new file mode 100644 index 0000000000..7b50667075 --- /dev/null +++ b/ansible/roles/es7/test/integration/oss/serverspec/default_spec.rb @@ -0,0 +1,12 @@ +require 'oss_spec' +require 'shared_spec' +require 'json' +vars = JSON.parse(File.read('/tmp/vars.json')) + +describe 'OSS Tests' do + include_examples 'oss::init', vars + include_examples 'shared::init', vars +end + + + diff --git a/ansible/roles/es7/test/integration/xpack-upgrade-trial b/ansible/roles/es7/test/integration/xpack-upgrade-trial new file mode 120000 index 0000000000..3021ce03ca --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack-upgrade-trial @@ -0,0 +1 @@ +xpack-upgrade \ No newline at end of file diff --git a/ansible/roles/es7/test/integration/xpack-upgrade-trial.yml b/ansible/roles/es7/test/integration/xpack-upgrade-trial.yml new file mode 100644 index 0000000000..e2500d2ded --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack-upgrade-trial.yml @@ -0,0 +1,181 @@ +--- +- name: Elasticsearch Xpack HTTP different keystore and truststore with password + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_config_6x: + xpack.security.authc.realms.file1.order: 0 + xpack.security.authc.realms.file1.type: file + xpack.security.authc.realms.native1.order: 1 + xpack.security.authc.realms.native1.type: native + es_config_7x: + xpack.security.authc.realms.file.file1.order: 0 + xpack.security.authc.realms.native.native1.order: 1 + es_config: "{{ es_config_7x if es_major_version == '7.x' else es_config_6x }}" + es_heap_size: "1g" + es_templates: true + es_templates_fileglob: "test/integration/files/templates-{{ es_major_version }}/*.json" + es_major_version: "7.x" + es_version: "{{ '7.0.0' if es_major_version == '7.x' else '6.7.1' }}" # This is set to an older version than the current default to force an upgrade + es_xpack_license: "" + es_xpack_trial: true + es_plugins: + - plugin: ingest-attachment + es_xpack_features: + - security + - alerting + es_api_basic_auth_username: elastic + es_api_basic_auth_password: changeme + es_api_sleep: 5 + es_enable_http_ssl: false + es_enable_transport_ssl: true + es_ssl_keystore: "test/integration/files/certs/keystore-password.p12" + es_ssl_truststore: "test/integration/files/certs/truststore-password.p12" + es_ssl_keystore_password: password1 + es_ssl_truststore_password: password2 + es_validate_certs: no + es_role_mapping: + power_user: + - "cn=admins,dc=example,dc=com" + user: + - "cn=users,dc=example,dc=com" + - "cn=admins,dc=example,dc=com" + es_users: + native: + kibana4_server: + password: changeMe + roles: + - kibana4_server + logstash_system: + #this should be successfully modified + password: aNewLogstashPassword + #this will be ignored + roles: + - kibana4_server + elastic: + password: elasticChanged + file: + es_admin: + password: changeMe + roles: + - admin + testUser: + password: changeMeAlso! + roles: + - power_user + - user + es_roles: + file: + admin: + cluster: + - all + indices: + - names: '*' + privileges: + - all + power_user: + cluster: + - monitor + indices: + - names: '*' + privileges: + - all + user: + indices: + - names: '*' + privileges: + - read + kibana4_server: + cluster: + - monitor + indices: + - names: '.kibana' + privileges: + - all + native: + logstash: + cluster: + - manage_index_templates + indices: + - names: 'logstash-*' + privileges: + - write + - delete + - create_index + #this will be ignored - its reserved + logstash_system: + cluster: + - manage_index_templates + indices: + - names: 'logstash-*' + privileges: + - write + - delete + - create_index + +#modifies the installation. Changes es_admin password and upgrades ES. Tests confirm the correct version is installed. +- name: Elasticsearch Xpack HTTP SSL and shared keystore without password + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_config_6x: + xpack.security.authc.realms.file1.order: 0 + xpack.security.authc.realms.file1.type: file + xpack.security.authc.realms.native1.order: 1 + xpack.security.authc.realms.native1.type: native + es_config_7x: + xpack.security.authc.realms.file.file1.order: 0 + xpack.security.authc.realms.native.native1.order: 1 + es_config: "{{ es_config_7x if es_major_version == '7.x' else es_config_6x }}" + es_heap_size: "1g" + es_templates: true + es_templates_fileglob: "test/integration/files/templates-{{ es_major_version }}/*.json" + es_xpack_license: "" + es_xpack_trial: false + es_plugins: + - plugin: ingest-attachment + es_xpack_features: + - security + - alerting + es_api_basic_auth_username: elastic + es_api_basic_auth_password: elasticChanged + es_api_sleep: 5 + es_enable_http_ssl: true + es_enable_transport_ssl: true + es_ssl_keystore: "test/integration/files/certs/shared-store-no-password.p12" + es_ssl_truststore: "test/integration/files/certs/shared-store-no-password.p12" + es_ssl_keystore_password: "" + es_ssl_truststore_password: "" + es_validate_certs: no + es_role_mapping: + power_user: + - "cn=admins,dc=example,dc=com" + user: + - "cn=users,dc=example,dc=com" + - "cn=admins,dc=example,dc=com" + es_users: + native: + kibana4_server: + password: changeMe + roles: + - kibana4_server + logstash_system: + #this will be ignored + roles: + - kibana4_server + file: + es_admin: + password: changeMeAgain + roles: + - admin + testUser: + password: changeMeAlso! + roles: + - power_user + - user diff --git a/ansible/roles/es7/test/integration/xpack-upgrade.yml b/ansible/roles/es7/test/integration/xpack-upgrade.yml new file mode 100644 index 0000000000..abfe8ab50c --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack-upgrade.yml @@ -0,0 +1,179 @@ +--- +- name: Elasticsearch Xpack HTTP different keystore and truststore with password + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_config_6x: + xpack.security.authc.realms.file1.order: 0 + xpack.security.authc.realms.file1.type: file + xpack.security.authc.realms.native1.order: 1 + xpack.security.authc.realms.native1.type: native + es_config_7x: + xpack.security.authc.realms.file.file1.order: 0 + xpack.security.authc.realms.native.native1.order: 1 + es_config: "{{ es_config_7x if es_major_version == '7.x' else es_config_6x }}" + es_heap_size: "1g" + es_templates: true + es_templates_fileglob: "test/integration/files/templates-{{ es_major_version }}/*.json" + es_major_version: "7.x" + es_version: "{{ '7.0.0' if es_major_version == '7.x' else '6.7.1' }}" # This is set to an older version than the current default to force an upgrade + es_xpack_license: "{{ lookup('file', '/tmp/license.json') }}" + es_plugins: + - plugin: ingest-attachment + es_xpack_features: + - security + - alerting + es_api_basic_auth_username: elastic + es_api_basic_auth_password: changeme + es_api_sleep: 5 + es_enable_http_ssl: false + es_enable_transport_ssl: true + es_ssl_keystore: "test/integration/files/certs/keystore-password.p12" + es_ssl_truststore: "test/integration/files/certs/truststore-password.p12" + es_ssl_keystore_password: password1 + es_ssl_truststore_password: password2 + es_validate_certs: no + es_role_mapping: + power_user: + - "cn=admins,dc=example,dc=com" + user: + - "cn=users,dc=example,dc=com" + - "cn=admins,dc=example,dc=com" + es_users: + native: + kibana4_server: + password: changeMe + roles: + - kibana4_server + logstash_system: + #this should be successfully modified + password: aNewLogstashPassword + #this will be ignored + roles: + - kibana4_server + elastic: + password: elasticChanged + file: + es_admin: + password: changeMe + roles: + - admin + testUser: + password: changeMeAlso! + roles: + - power_user + - user + es_roles: + file: + admin: + cluster: + - all + indices: + - names: '*' + privileges: + - all + power_user: + cluster: + - monitor + indices: + - names: '*' + privileges: + - all + user: + indices: + - names: '*' + privileges: + - read + kibana4_server: + cluster: + - monitor + indices: + - names: '.kibana' + privileges: + - all + native: + logstash: + cluster: + - manage_index_templates + indices: + - names: 'logstash-*' + privileges: + - write + - delete + - create_index + #this will be ignored - its reserved + logstash_system: + cluster: + - manage_index_templates + indices: + - names: 'logstash-*' + privileges: + - write + - delete + - create_index + +#modifies the installation. Changes es_admin password and upgrades ES. Tests confirm the correct version is installed. +- name: Elasticsearch Xpack HTTP SSL and shared keystore without password + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_config_6x: + xpack.security.authc.realms.file1.order: 0 + xpack.security.authc.realms.file1.type: file + xpack.security.authc.realms.native1.order: 1 + xpack.security.authc.realms.native1.type: native + es_config_7x: + xpack.security.authc.realms.file.file1.order: 0 + xpack.security.authc.realms.native.native1.order: 1 + es_config: "{{ es_config_7x if es_major_version == '7.x' else es_config_6x }}" + es_heap_size: "1g" + es_templates: true + es_templates_fileglob: "test/integration/files/templates-{{ es_major_version }}/*.json" + es_xpack_license: "{{ lookup('file', '/tmp/license.json') }}" + es_plugins: + - plugin: ingest-attachment + es_xpack_features: + - security + - alerting + es_api_basic_auth_username: elastic + es_api_basic_auth_password: elasticChanged + es_api_sleep: 5 + es_enable_http_ssl: true + es_enable_transport_ssl: true + es_ssl_keystore: "test/integration/files/certs/shared-store-no-password.p12" + es_ssl_truststore: "test/integration/files/certs/shared-store-no-password.p12" + es_ssl_keystore_password: "" + es_ssl_truststore_password: "" + es_validate_certs: no + es_role_mapping: + power_user: + - "cn=admins,dc=example,dc=com" + user: + - "cn=users,dc=example,dc=com" + - "cn=admins,dc=example,dc=com" + es_users: + native: + kibana4_server: + password: changeMe + roles: + - kibana4_server + logstash_system: + #this will be ignored + roles: + - kibana4_server + file: + es_admin: + password: changeMeAgain + roles: + - admin + testUser: + password: changeMeAlso! + roles: + - power_user + - user diff --git a/ansible/roles/es7/test/integration/xpack-upgrade/serverspec/default_spec.rb b/ansible/roles/es7/test/integration/xpack-upgrade/serverspec/default_spec.rb new file mode 100644 index 0000000000..043bc5ca68 --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack-upgrade/serverspec/default_spec.rb @@ -0,0 +1,9 @@ +require 'xpack_upgrade_spec' +require 'shared_spec' +require 'json' +vars = JSON.parse(File.read('/tmp/vars.json')) + +describe 'Xpack upgrade Tests' do + include_examples 'shared::init', vars + include_examples 'xpack_upgrade::init', vars +end diff --git a/ansible/roles/es7/test/integration/xpack-upgrade/xpack-upgrade.yml b/ansible/roles/es7/test/integration/xpack-upgrade/xpack-upgrade.yml new file mode 100644 index 0000000000..a3c37e1917 --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack-upgrade/xpack-upgrade.yml @@ -0,0 +1,2 @@ +--- +- host: test-kitchen diff --git a/ansible/roles/es7/test/integration/xpack.yml b/ansible/roles/es7/test/integration/xpack.yml new file mode 100644 index 0000000000..002736f920 --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack.yml @@ -0,0 +1,10 @@ +#Tests x-pack is idempotent and works when security is not enabled +--- +- name: Elasticsearch Xpack tests - no security and manual download + hosts: localhost + post_tasks: + - include: elasticsearch/test/integration/debug.yml + roles: + - elasticsearch + vars: + es_heap_size: 2g diff --git a/ansible/roles/es7/test/integration/xpack/serverspec/default_spec.rb b/ansible/roles/es7/test/integration/xpack/serverspec/default_spec.rb new file mode 100644 index 0000000000..496a28cfa2 --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack/serverspec/default_spec.rb @@ -0,0 +1,7 @@ +require 'shared_spec' +require 'json' +vars = JSON.parse(File.read('/tmp/vars.json')) + +describe 'Xpack upgrade Tests' do + include_examples 'shared::init', vars +end diff --git a/ansible/roles/es7/test/integration/xpack/xpack.yml b/ansible/roles/es7/test/integration/xpack/xpack.yml new file mode 100644 index 0000000000..a3c37e1917 --- /dev/null +++ b/ansible/roles/es7/test/integration/xpack/xpack.yml @@ -0,0 +1,2 @@ +--- +- host: test-kitchen diff --git a/ansible/roles/es7/test/matrix.yml b/ansible/roles/es7/test/matrix.yml new file mode 100644 index 0000000000..3e4e6162de --- /dev/null +++ b/ansible/roles/es7/test/matrix.yml @@ -0,0 +1,16 @@ +VERSION: + - 7.x + - 6.x +OS: + - ubuntu-1404 + - ubuntu-1604 + - ubuntu-1804 + - debian-8 + - debian-9 + - centos-7 +TEST_TYPE: + - oss + - oss-upgrade + - oss-to-xpack-upgrade + - xpack + - xpack-upgrade diff --git a/ansible/roles/es7/vars/Debian.yml b/ansible/roles/es7/vars/Debian.yml new file mode 100644 index 0000000000..9d9bdffa95 --- /dev/null +++ b/ansible/roles/es7/vars/Debian.yml @@ -0,0 +1,5 @@ +--- +java: "{% if es_java is defined %}{{es_java}}{% else %}openjdk-8-jre-headless{% endif %}" +default_file: "/etc/default/elasticsearch" +es_home: "/usr/share/elasticsearch" +es_apt_key_id: "46095ACC8548582C1A2699A9D27D666CD88E42B4" diff --git a/ansible/roles/es7/vars/RedHat.yml b/ansible/roles/es7/vars/RedHat.yml new file mode 100644 index 0000000000..b0aa42b2bb --- /dev/null +++ b/ansible/roles/es7/vars/RedHat.yml @@ -0,0 +1,4 @@ +--- +java: "{{ es_java | default('java-1.8.0-openjdk.x86_64') }}" +default_file: "/etc/sysconfig/elasticsearch" +es_home: "/usr/share/elasticsearch" \ No newline at end of file diff --git a/ansible/roles/es7/vars/main.yml b/ansible/roles/es7/vars/main.yml new file mode 100644 index 0000000000..91b7b69905 --- /dev/null +++ b/ansible/roles/es7/vars/main.yml @@ -0,0 +1,4 @@ +--- +es_package_url: "https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch" +reserved_xpack_users: ["elastic","kibana","logstash_system"] +sysd_config_file: "/etc/systemd/system/elasticsearch.service.d/override.conf" diff --git a/pipelines/provision/es7/Jenkinsfile b/pipelines/provision/es7/Jenkinsfile new file mode 100644 index 0000000000..1993186e22 --- /dev/null +++ b/pipelines/provision/es7/Jenkinsfile @@ -0,0 +1,51 @@ +@Library('deploy-conf') _ +node() { + try { + String ANSI_GREEN = "\u001B[32m" + String ANSI_NORMAL = "\u001B[0m" + String ANSI_BOLD = "\u001B[1m" + String ANSI_RED = "\u001B[31m" + String ANSI_YELLOW = "\u001B[33m" + + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + ansiColor('xterm') { + stage('deploy'){ + values = [:] + envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() + module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() + jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "${currentWs}/ansible/es7.yml" + ansibleExtraArgs = "--vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('env', envDir) + values.put('module', module) + values.put('jobName', jobName) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + println values + ansible_playbook_run(values) + currentBuild.result = 'SUCCESS' + currentBuild.description = "Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + } + summary() + } + catch (err) { + currentBuild.result = 'FAILURE' + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} From 3c0c3aafc5f31c64125e9b63010fab8eaf4bddea Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 24 Aug 2020 14:19:35 +0530 Subject: [PATCH 162/298] adding new portal variable --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 5aae3a88fc..a1c509b38e 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -108,3 +108,4 @@ sunbird_bot_service_URL=/chatapi/bot #Dock-0.0.2 sunbird_learner_url={{sunbird_learner_url}} +portal_cloud_storage_url={{ portal_cloud_storage_url }} From 8f672b82a24b2835151cb3e58c930c818400bbd2 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 24 Aug 2020 19:06:07 +0530 Subject: [PATCH 163/298] bootstrap swamr --- ansible/docker-version-upgrade.yml | 2 +- pipelines/provision/swarm/Jenkinsfile | 51 +++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 pipelines/provision/swarm/Jenkinsfile diff --git a/ansible/docker-version-upgrade.yml b/ansible/docker-version-upgrade.yml index ea41f2dc25..f1d711b2e3 100644 --- a/ansible/docker-version-upgrade.yml +++ b/ansible/docker-version-upgrade.yml @@ -1,5 +1,5 @@ --- -- hosts: swarm-nodes +- hosts: swarm-bootstrap-manager gather_facts: false vars_files: - ['{{inventory_dir}}/secrets.yml', 'secrets/{{env}}.yml'] diff --git a/pipelines/provision/swarm/Jenkinsfile b/pipelines/provision/swarm/Jenkinsfile new file mode 100644 index 0000000000..92fea3daed --- /dev/null +++ b/pipelines/provision/swarm/Jenkinsfile @@ -0,0 +1,51 @@ +@Library('deploy-conf') _ +node() { + try { + String ANSI_GREEN = "\u001B[32m" + String ANSI_NORMAL = "\u001B[0m" + String ANSI_BOLD = "\u001B[1m" + String ANSI_RED = "\u001B[31m" + String ANSI_YELLOW = "\u001B[33m" + + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + ansiColor('xterm') { + stage('deploy'){ + values = [:] + envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() + module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() + jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "${currentWs}/ansible/docker-version-upgrade.yml" + ansibleExtraArgs = "--vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('env', envDir) + values.put('module', module) + values.put('jobName', jobName) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + println values + ansible_playbook_run(values) + currentBuild.result = 'SUCCESS' + currentBuild.description = "Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + } + summary() + } + catch (err) { + currentBuild.result = 'FAILURE' + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} From 31792fb2bffd831b23a4116cfbfe2b33fa91c378 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 24 Aug 2020 23:21:20 +0530 Subject: [PATCH 164/298] bootstrap swarm --- ansible/roles/docker-ce/tasks/apt.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/roles/docker-ce/tasks/apt.yml b/ansible/roles/docker-ce/tasks/apt.yml index 5c62e8991e..82f29b0088 100644 --- a/ansible/roles/docker-ce/tasks/apt.yml +++ b/ansible/roles/docker-ce/tasks/apt.yml @@ -45,3 +45,7 @@ dest: /etc/apt/sources.list.d/docker.list state: present create: yes + +- name: initialize docker swarm + become: yes + shell: "docker swarm init" From f481d8f804d4f7dc9b96ad9a70b7baf6a3ba0073 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 24 Aug 2020 23:23:54 +0530 Subject: [PATCH 165/298] bootstrap swarm --- ansible/roles/docker-ce/tasks/apt.yml | 4 ---- ansible/roles/docker-ce/tasks/main.yml | 4 ++++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ansible/roles/docker-ce/tasks/apt.yml b/ansible/roles/docker-ce/tasks/apt.yml index 82f29b0088..5c62e8991e 100644 --- a/ansible/roles/docker-ce/tasks/apt.yml +++ b/ansible/roles/docker-ce/tasks/apt.yml @@ -45,7 +45,3 @@ dest: /etc/apt/sources.list.d/docker.list state: present create: yes - -- name: initialize docker swarm - become: yes - shell: "docker swarm init" diff --git a/ansible/roles/docker-ce/tasks/main.yml b/ansible/roles/docker-ce/tasks/main.yml index 2e4fd91b4a..bd3e7ae0da 100644 --- a/ansible/roles/docker-ce/tasks/main.yml +++ b/ansible/roles/docker-ce/tasks/main.yml @@ -12,3 +12,7 @@ - docker-ce become: true notify: restart docker + +- name: initialize docker swarm + become: yes + shell: "docker swarm init" From 5ea7650648f9e46366865fedb20e0d884d70c68f Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 24 Aug 2020 23:25:00 +0530 Subject: [PATCH 166/298] bootstrap swarm --- ansible/roles/docker-ce/tasks/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/docker-ce/tasks/main.yml b/ansible/roles/docker-ce/tasks/main.yml index bd3e7ae0da..beaa276bd4 100644 --- a/ansible/roles/docker-ce/tasks/main.yml +++ b/ansible/roles/docker-ce/tasks/main.yml @@ -16,3 +16,4 @@ - name: initialize docker swarm become: yes shell: "docker swarm init" + ignore_errors: yes From 7e49e40f001eb4401be9197487f559e93a223a12 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 25 Aug 2020 00:32:18 +0530 Subject: [PATCH 167/298] es7 backu --- ansible/roles/es7/defaults/main.yml | 4 ++++ .../es7/tasks/xpack/security/elasticsearch-security.yml | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/ansible/roles/es7/defaults/main.yml b/ansible/roles/es7/defaults/main.yml index 8647d2f7ad..62ab6c8723 100644 --- a/ansible/roles/es7/defaults/main.yml +++ b/ansible/roles/es7/defaults/main.yml @@ -66,3 +66,7 @@ es_ssl_verification_mode: "certificate" es_validate_certs: "yes" es_delete_unmanaged_file: true es_delete_unmanaged_native: true + +#backup variables +backup_storage_account: "{{ sunbird_management_storage_account_name }}" +backup_storage_key: "{{ sunbird_management_storage_account_key }}" diff --git a/ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml index f7353585e5..a24d80a6ca 100644 --- a/ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml +++ b/ansible/roles/es7/tasks/xpack/security/elasticsearch-security.yml @@ -5,6 +5,13 @@ #-----------------------------Create Bootstrap User----------------------------------- ### START BLOCK elasticsearch keystore ### + +- name: create elasticsearch azure backup keystore + shell: "echo {{ backup_storage_account }} | sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add --stdin azure.client.default.account" + +- name: create elasticsearch azure backup secret + shell: "echo {{ backup_storage_key }} | sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add --stdin azure.client.default.key" + - name: create the elasticsearch keystore block: - name: create the keystore if it doesn't exist yet From 34b13ccb3138a55e703ffab0898303035282a800 Mon Sep 17 00:00:00 2001 From: Harsha Date: Tue, 25 Aug 2020 13:41:27 +0530 Subject: [PATCH 168/298] Issue #00 fix: es backup changes (#1830) --- ansible/es7.yml | 12 ++++++ ansible/inventory/env/group_vars/all.yml | 8 ++++ pipelines/backup/es7-backup/Jenkinsfile | 50 ++++++++++++++++++++++++ pipelines/provision/es7/Jenkinsfile | 2 +- 4 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 pipelines/backup/es7-backup/Jenkinsfile diff --git a/ansible/es7.yml b/ansible/es7.yml index 692f929ac2..ceb8a11d7d 100644 --- a/ansible/es7.yml +++ b/ansible/es7.yml @@ -1,3 +1,15 @@ +- hosts: es7 + become: yes + vars_files: + - ['{{inventory_dir}}/secrets.yml', 'secrets/{{env}}.yml'] + vars: + - es_snapshot_host: "{{app_es7_snapshot_host}}" + - snapshot_base_path: "{{app_es7_snapshot_base_path}}" + roles: + - es-azure-snapshot + tags: + - es_backup + - hosts: es7 become: yes vars_files: diff --git a/ansible/inventory/env/group_vars/all.yml b/ansible/inventory/env/group_vars/all.yml index 00bf8705b0..bb730b0bdb 100644 --- a/ansible/inventory/env/group_vars/all.yml +++ b/ansible/inventory/env/group_vars/all.yml @@ -452,6 +452,14 @@ app_es_snapshot_host: "{{ groups['es'][0] }}" app_es_restore_host: "{{ groups['es'][0] }}" app_es_snapshot_base_path: application +##### es7 ###### + +app_es_etc_cluster_name: "{{env}}" +app_es_etc_discovery_zen_minimum_master_nodes: "{{groups['es7']| length | int}}" +app_es7_snapshot_host: "{{ groups['es7'][0] }}" +app_es7_restore_host: "{{ groups['es7'][0] }}" +app_es7_snapshot_base_path: application_es7 + #######Log Es log_es_etc_cluster_name: "{{env}}-log" diff --git a/pipelines/backup/es7-backup/Jenkinsfile b/pipelines/backup/es7-backup/Jenkinsfile new file mode 100644 index 0000000000..fcc3bbab0c --- /dev/null +++ b/pipelines/backup/es7-backup/Jenkinsfile @@ -0,0 +1,50 @@ +@Library('deploy-conf') _ +node() { + try { + String ANSI_GREEN = "\u001B[32m" + String ANSI_NORMAL = "\u001B[0m" + String ANSI_BOLD = "\u001B[1m" + String ANSI_RED = "\u001B[31m" + String ANSI_YELLOW = "\u001B[33m" + + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + ansiColor('xterm') { + stage('deploy'){ + values = [:] + envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() + module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() + jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "${currentWs}/ansible/es7.yml" + ansibleExtraArgs = "--tags \"es_backup\" -v --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('env', envDir) + values.put('module', module) + values.put('jobName', jobName) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + println values + ansible_playbook_run(values) + currentBuild.result = 'SUCCESS' + currentBuild.description = "Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + } + } + catch (err) { + currentBuild.result = "FAILURE" + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} diff --git a/pipelines/provision/es7/Jenkinsfile b/pipelines/provision/es7/Jenkinsfile index 1993186e22..75a529556b 100644 --- a/pipelines/provision/es7/Jenkinsfile +++ b/pipelines/provision/es7/Jenkinsfile @@ -25,7 +25,7 @@ node() { jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() currentWs = sh(returnStdout: true, script: 'pwd').trim() ansiblePlaybook = "${currentWs}/ansible/es7.yml" - ansibleExtraArgs = "--vault-password-file /var/lib/jenkins/secrets/vault-pass" + ansibleExtraArgs = "--vault-password-file /var/lib/jenkins/secrets/vault-pass --tags es" values.put('currentWs', currentWs) values.put('env', envDir) values.put('module', module) From 0e4ad9174dd6d50e1e32749c7d3b3c0c5e21eeec Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 2 Sep 2020 10:04:02 +0530 Subject: [PATCH 169/298] updating service create command --- ansible/roles/stack-sunbird/tasks/vector-service.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/tasks/vector-service.yml b/ansible/roles/stack-sunbird/tasks/vector-service.yml index bd23f84f0b..b0b3675359 100644 --- a/ansible/roles/stack-sunbird/tasks/vector-service.yml +++ b/ansible/roles/stack-sunbird/tasks/vector-service.yml @@ -4,6 +4,6 @@ ignore_errors: yes - name: Deploy vector service - shell: "docker service create --with-registry-auth --replicas {{ vector_service_replicas }} -p 1729:1729 --name vector-service --hostname vector-service --reserve-memory {{ vector_service_reservation_memory }} --limit-memory {{ vector_service_limit_memory }} --limit-cpu {{ vector_service_limit_cpu }} --reserve-cpu {{ vector_service_reservation_cpu }} --network application_default --env-file /home/deployer/env/sunbird_vector-service.env {{hub_org}}/{{image_name}}:{{image_tag}}" + shell: "docker service create --with-registry-auth --replicas {{ vector_service_replicas }} -p 1729:1729 --name vector-service --network application_default --env-file /home/deployer/env/sunbird_vector-service.env {{hub_org}}/{{image_name}}:{{image_tag}}" args: chdir: /home/deployer/stack From 9dbe458f382a2be2d3e50ad42d11b06b1e39767a Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 2 Sep 2020 11:05:19 +0530 Subject: [PATCH 170/298] adding mvc service variable --- .../roles/stack-sunbird/templates/mvc-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf index 40c6055a67..a9a6ca5fff 100644 --- a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf @@ -291,7 +291,7 @@ akka.http.parsing.max-content-length = 50MB schema.base_path = "/home/sunbird/mvc-service-1.0-SNAPSHOT/schemas/" sunbird_kp_content_service_base_url: "{{ sunbird_kp_content_service_base_url }}" sunbird_content_url: "{{ sunbird_content_url }}" - +ml_vector_api: "{{groups['mlworkbench'][0]}}" telemetry_env="{{ sunbird_instance }}" installation.id="{{sunbird_installation}}" From 6ae0ec360053946e6afa0ca13398b3a492b27f2c Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 3 Sep 2020 17:05:41 +0530 Subject: [PATCH 171/298] create application network --- ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml index bc31a5e5cb..0dda1cf300 100644 --- a/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml +++ b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml @@ -1,4 +1,8 @@ --- + +- name: Ensure application_default network exists + shell: "docker network create -d overlay application_default" + - name: Remove mlworkbench service shell: "docker service rm mlworkbench-service" ignore_errors: yes From ea70e0283e33689aac059134929b93b64b2ca913 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Fri, 4 Sep 2020 09:55:25 +0530 Subject: [PATCH 172/298] create application network --- ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml index 0dda1cf300..b7ce255e55 100644 --- a/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml +++ b/ansible/roles/stack-sunbird/tasks/mlworkbench-service.yml @@ -2,6 +2,7 @@ - name: Ensure application_default network exists shell: "docker network create -d overlay application_default" + ignore_errors: yes - name: Remove mlworkbench service shell: "docker service rm mlworkbench-service" From 3d5bcdc1fbaff659b27f49cdc28c2a200ca3a41d Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj Date: Wed, 9 Sep 2020 13:16:16 +0530 Subject: [PATCH 173/298] Issue #DP-950 chore: project feed api onboarding --- ansible/roles/kong-api/defaults/main.yml | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index e57113a09b..d9d18a1c2c 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5282,4 +5282,22 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ medium_request_size_limit }}" \ No newline at end of file + config.allowed_payload_size: "{{ medium_request_size_limit }}" + + - name: projectFeedSearch + request_path: "{{ program_service_prefix }}/v1/feed/search" + upstream_url: "{{ program_service_url }}/program/v1/feed/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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 }}" From ca20a2a964d553c03e5a64e9f14226257ec4fcb5 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 23 Sep 2020 13:50:38 +0530 Subject: [PATCH 174/298] adding mvc variable --- .../roles/stack-sunbird/templates/mvc-service_application.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf index a9a6ca5fff..59dca5bab0 100644 --- a/ansible/roles/stack-sunbird/templates/mvc-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/mvc-service_application.conf @@ -292,6 +292,7 @@ schema.base_path = "/home/sunbird/mvc-service-1.0-SNAPSHOT/schemas/" sunbird_kp_content_service_base_url: "{{ sunbird_kp_content_service_base_url }}" sunbird_content_url: "{{ sunbird_content_url }}" ml_vector_api: "{{groups['mlworkbench'][0]}}" +sunbird_mvc_base_url: "{{ sunbird_program_base_url }}" telemetry_env="{{ sunbird_instance }}" installation.id="{{sunbird_installation}}" From 6d3409d9ab3a936b1b0e583b8e0185b9e463c1a7 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Tue, 6 Oct 2020 16:16:15 +0530 Subject: [PATCH 175/298] parameter for schema branch --- pipelines/upload/schemas/Jenkinsfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pipelines/upload/schemas/Jenkinsfile b/pipelines/upload/schemas/Jenkinsfile index 0618192793..7c1aafa679 100644 --- a/pipelines/upload/schemas/Jenkinsfile +++ b/pipelines/upload/schemas/Jenkinsfile @@ -25,8 +25,8 @@ node() { jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() stage('deploy artifact'){ sh """ - rm -rf creation-portal - git clone https://github.com/Sunbird-Ed/creation-portal.git -b creation_portal + rm -rf creation-portal + git clone https://github.com/Sunbird-Ed/creation-portal.git -b ${params.schemas_branch} """ ansiblePlaybook = "${currentWs}/ansible/upload-schemas.yml" ansibleExtraArgs = "--extra-vars \" source_name=${currentWs}/creation-portal/kp_schemas \" --vault-password-file /var/lib/jenkins/secrets/vault-pass" From 136a64644a7b6a6e332c3b2e6bb33932d4a24bce Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Fri, 9 Oct 2020 16:26:12 +0530 Subject: [PATCH 176/298] Issue #DP-1078 fix: updated config for import api (#1971) --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 8c15f5ecea..6284ea329b 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -504,7 +504,7 @@ content.import.topic_name="{{ env_name }}.auto.creation.job.request" content.import.request_size_limit=1000 content.import.required_props=["name","code","mimeType","contentType","artifactUrl","framework"] content.import.topic_name="{{ env_name }}.auto.creation.job.request" -content.import.remove_props=["downloadUrl","variants","previewUrl","streamingUrl","itemSets","level1Name","level1Concept","level2Name","level2Concept","level3Name","level3Concept","me_totalPlaySessionCount","me_totalTimeSpentInSec","me_totalSessionsCount","me_totalTimespent","me_totalInteractions","me_creationSessions","me_creationTimespent","me_averageInteractionsPerMin","me_averageSessionsPerDevice","me_totalDevices","me_averageTimespentPerSession","me_averageRating","me_totalDownloads","me_totalSideloads","me_totalRatings","me_totalComments","me_totalDialcode","me_totalDialcodeLinkedToContent","me_totalDialcodeAttached","me_hierarchyLevel"] +content.import.remove_props=["downloadUrl","variants","previewUrl","streamingUrl","itemSets","level1Name","level1Concept","level2Name","level2Concept","level3Name","level3Concept","me_totalPlaySessionCount","me_totalTimeSpentInSec","me_totalSessionsCount","me_totalTimespent","me_totalInteractions","me_creationSessions","me_creationTimespent","me_averageInteractionsPerMin","me_averageSessionsPerDevice","me_totalDevices","me_averageTimespentPerSession","me_averageRating","me_totalDownloads","me_totalSideloads","me_totalRatings","me_totalComments","me_totalDialcode","me_totalDialcodeLinkedToContent","me_totalDialcodeAttached","me_hierarchyLevel","origin","originData"] contentTypeToPrimaryCategory { ClassroomTeachingVideo: "Explanation Content" From fead455fce1dfbd9c3e68e104c61f07168d8c9d8 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Fri, 9 Oct 2020 19:48:47 +0530 Subject: [PATCH 177/298] Issue #DP-946 feat: removed lpa connection (#1972) --- .../stack-sunbird/templates/taxonomy-service_application.conf | 3 --- 1 file changed, 3 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf index fe251b214a..73ffa55dfb 100644 --- a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf @@ -324,9 +324,6 @@ cassandra { lp { connection: "{{ lp_cassandra_connection }}" } - lpa { - connection: "{{ dp_cassandra_connection }}" - } } # Redis Configuration From 0acb243c08117cbb275dc4463e8b178222a729ca Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Mon, 12 Oct 2020 16:36:48 +0530 Subject: [PATCH 178/298] Issue #DP-946 feat: updated schema base path --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 6284ea329b..57b30400ff 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -341,7 +341,7 @@ play.filters { play.http.parser.maxMemoryBuffer = 2GB akka.http.parsing.max-content-length = 2GB -schema.base_path="{{ schema_base_path }}" +schema.base_path="{{ kp_schema_base_path | default('/home/sunbird/content-service-1.0-SNAPSHOT/schemas')}}" # Cassandra Configuration cassandra { From 609d5ffabd38c74e822567f239ed19a1d1bdd3ca Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Wed, 14 Oct 2020 14:15:42 +0530 Subject: [PATCH 179/298] adding missing variable --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index b8ef041c05..833dac3d09 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -117,3 +117,7 @@ reportsListVersion={{reportsListVersion|default('v1')}} #Release-3.3.0 sunbird_data_product_service=http://kong:8000/ + +#Dock-0.0.2 +sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} +sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} From 0cd94a29c1a4d84d4a7743a45b2b2378a01d3c2d Mon Sep 17 00:00:00 2001 From: Venkateshwaran Selvaraj <38975782+venkateshwarans@users.noreply.github.com> Date: Thu, 15 Oct 2020 13:36:43 +0530 Subject: [PATCH 180/298] adding missing variables (#1990) --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 833dac3d09..fb51d9667a 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -121,3 +121,7 @@ sunbird_data_product_service=http://kong:8000/ #Dock-0.0.2 sunbird_kp_content_service_base_url={{ sunbird_kp_content_service_base_url }} sunbird_kp_learning_service_base_url={{ sunbird_kp_learning_service_base_url }} +sunbird_kp_assessment_service_base_url={{ sunbird_kp_assessment_service_base_url }} +dock_api_auth_token={{ dock_api_auth_token }} +dock_api_call_log_status={{ dock_api_call_log_status }} +sunbird_portal_url={{ sunbird_portal_url }} From 45f7428dff4a7ee18fdc43c9c7d1bf6da2a157cf Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 22 Oct 2020 17:31:05 +0530 Subject: [PATCH 181/298] updating groups url --- ansible/roles/kong-api/defaults/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 7e80f2532c..67aedc828e 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -93,6 +93,7 @@ report_service_url: "http://report-service:3030" opensaber_service_url: "http://opensaber-service:8080" program_service_url: "http://program-service:6000" mvc_service_url: "http://mvc-service:9000" +group_service_url: "http://groups-service:9000" premium_consumer_rate_limits: From 3ede29d4337a4a4b0afedd8f20e23d22d1a0dc86 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 22 Oct 2020 17:32:44 +0530 Subject: [PATCH 182/298] updating groups url --- ansible/roles/kong-api/defaults/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 67aedc828e..bd29c2a9a9 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -74,6 +74,7 @@ report_service_prefix: /data/v1/report-service opensaber_service_prefix: /reg program_service_prefix: /program mvc_service_prefix: /mvc +group_service_prefix: /group # Service URLs From 6fdd0d4c9a0644e9c499ff26e1d004f2e172c9b0 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Thu, 22 Oct 2020 17:36:53 +0530 Subject: [PATCH 183/298] updating groups url --- ansible/roles/kong-api/defaults/main.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index bd29c2a9a9..e9c5883b03 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -75,6 +75,11 @@ opensaber_service_prefix: /reg program_service_prefix: /program mvc_service_prefix: /mvc group_service_prefix: /group +analytics_report_service_prefix: /report/jobs +auth_service_prefix: /auth +object_category_prefix: /object/category +object_category_definition_prefix: /object/category/definition +dataset_service_prefix: /dataset # Service URLs @@ -95,6 +100,8 @@ opensaber_service_url: "http://opensaber-service:8080" program_service_url: "http://program-service:6000" mvc_service_url: "http://mvc-service:9000" group_service_url: "http://groups-service:9000" +analytics_api_service_url: "http://analytics-service:9000" +taxonomy_service_url: "http://taxonomy-service:9000" premium_consumer_rate_limits: From 93d03a8fc0d97c6a0a73bc115f2137949f7f6a51 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Wed, 28 Oct 2020 17:00:45 +0530 Subject: [PATCH 184/298] SB-21064 feat: updated consumer for category read api (#2009) * Issue #SB-21064 feat: added acl for category api's * Issue #SB-21064 feat: updated consumer for category read api * Issue #SB-21064 feat: updated config --- ansible/roles/kong-consumer/defaults/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/kong-consumer/defaults/main.yml b/ansible/roles/kong-consumer/defaults/main.yml index 77caf0ff4b..4eed3e4088 100644 --- a/ansible/roles/kong-consumer/defaults/main.yml +++ b/ansible/roles/kong-consumer/defaults/main.yml @@ -83,6 +83,7 @@ kong_all_consumer_groups: - druidReportCreate - druidReportAdmin - dataCreate + - frameworkAccess kong_consumers: - username: api-admin From cbe41d3b83da7fdf6ff461bfa65461e7b2519c1f Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Thu, 29 Oct 2020 12:03:33 +0530 Subject: [PATCH 185/298] Issue #SB-21063 feat: added config for category keyspace (#2010) --- .../stack-sunbird/templates/content-service_application.conf | 1 + .../stack-sunbird/templates/taxonomy-service_application.conf | 1 + 2 files changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 57b30400ff..34782df121 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -569,3 +569,4 @@ channel.content.primarycategories=["Explanation Content", "Learning Resource", " channel.collection.primarycategories=["Course", "Digital Textbook", "Content Playlist"] channel.asset.primarycategories=["Asset"] +objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" \ No newline at end of file diff --git a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf index 73ffa55dfb..61ef4d58da 100644 --- a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf @@ -386,3 +386,4 @@ languageCode { tamil : "ta" telugu : "te" } +objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" \ No newline at end of file From eee54c2ec68cefd865b077613abf777f57ae810e Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Fri, 6 Nov 2020 14:30:27 +0530 Subject: [PATCH 186/298] DP-1337 fix: updated import api config (#2033) * Issue #SB-21063 feat: added config for category keyspace * Issue #DP-1337 fix: updated import api config --- .../templates/content-service_application.conf | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 34782df121..2b70313b83 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -495,16 +495,12 @@ dial_service { content.link_dialcode.validation=true content.link_dialcode.max_limit=10 -# Content Import API Config -content.import.request_size_limit=300 -content.import.required_props=["name","code","mimeType","contentType","artifactUrl","framework"] -content.import.topic_name="{{ env_name }}.auto.creation.job.request" # Content Import API Config -content.import.request_size_limit=1000 -content.import.required_props=["name","code","mimeType","contentType","artifactUrl","framework"] +content.import.request_size_limit=300 +content.import.required_props=["name","code","mimeType","primaryCategory","artifactUrl","framework"] content.import.topic_name="{{ env_name }}.auto.creation.job.request" -content.import.remove_props=["downloadUrl","variants","previewUrl","streamingUrl","itemSets","level1Name","level1Concept","level2Name","level2Concept","level3Name","level3Concept","me_totalPlaySessionCount","me_totalTimeSpentInSec","me_totalSessionsCount","me_totalTimespent","me_totalInteractions","me_creationSessions","me_creationTimespent","me_averageInteractionsPerMin","me_averageSessionsPerDevice","me_totalDevices","me_averageTimespentPerSession","me_averageRating","me_totalDownloads","me_totalSideloads","me_totalRatings","me_totalComments","me_totalDialcode","me_totalDialcodeLinkedToContent","me_totalDialcodeAttached","me_hierarchyLevel","origin","originData"] +content.import.remove_props=["downloadUrl","variants","previewUrl","streamingUrl","itemSets","level1Name","level1Concept","level2Name","level2Concept","level3Name","level3Concept","me_totalPlaySessionCount","me_totalTimeSpentInSec","me_totalSessionsCount","me_totalTimespent","me_totalInteractions","me_creationSessions","me_creationTimespent","me_averageInteractionsPerMin","me_averageSessionsPerDevice","me_totalDevices","me_averageTimespentPerSession","me_averageRating","me_totalDownloads","me_totalSideloads","me_totalRatings","me_totalComments","me_totalDialcode","me_totalDialcodeLinkedToContent","me_totalDialcodeAttached","me_hierarchyLevel","origin","originData","questions"] contentTypeToPrimaryCategory { ClassroomTeachingVideo: "Explanation Content" From afef017e0bf3af5d644056d14ffb58dc47d6c127 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Nov 2020 11:14:12 +0530 Subject: [PATCH 187/298] moving mlworkbench from swarm to k9s --- ansible/roles/stack-sunbird/defaults/main.yml | 3 +- .../templates/sunbird_mlworkbench.env | 7 +++ .../helm_charts/core/mlworkbench/Chart.yaml | 5 ++ .../core/mlworkbench/templates/configmap.yaml | 11 ++++ .../mlworkbench/templates/deployment.yaml | 60 +++++++++++++++++++ .../helm_charts/core/mlworkbench/values.j2 | 26 ++++++++ 6 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 ansible/roles/stack-sunbird/templates/sunbird_mlworkbench.env create mode 100644 kubernetes/helm_charts/core/mlworkbench/Chart.yaml create mode 100644 kubernetes/helm_charts/core/mlworkbench/templates/configmap.yaml create mode 100644 kubernetes/helm_charts/core/mlworkbench/templates/deployment.yaml create mode 100644 kubernetes/helm_charts/core/mlworkbench/values.j2 diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index f1a4b88281..2465208ce5 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -297,6 +297,7 @@ service_env: mvc: - ../../../../ansible/roles/stack-sunbird/templates/mvc-service_application.conf - ../../../../ansible/roles/stack-sunbird/templates/mvc-service_logback.xml + mlworkbench: ../../../../ansible/roles/stack-sunbird/templates/sunbird_mlworkbench.env search: - ../../../../ansible/roles/stack-sunbird/templates/search-service_application.conf @@ -794,4 +795,4 @@ job_request: "{{ env_name }}_job_request" exhaust_api_consumer_ids: ["273f3b18-5dda-4a27-984a-060c7cd398d3"] # being used in analytics api to access the analytics exhaust api user_profile_read_url: "http://learner-service:9000/v1/user/read/" # being used in analytics api to get user details org_search_url: "http://learner-service:9000/v1/org/search" # being used in analytics api to get mhrd tenant id -dataexhaust_super_admin_channel: "sunbird" # being used in analytics api for authorizing user with super admin channel \ No newline at end of file +dataexhaust_super_admin_channel: "sunbird" # being used in analytics api for authorizing user with super admin channel diff --git a/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench.env b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench.env new file mode 100644 index 0000000000..0d51c6263b --- /dev/null +++ b/ansible/roles/stack-sunbird/templates/sunbird_mlworkbench.env @@ -0,0 +1,7 @@ +GOOGLE_APPLICATION_CREDENTIALS="" +redis_host={{groups['redis1'][0]}} +redis_port=6379 +redis_password="" +tagme_token="" +kafka_host={{groups['processing-cluster-kafka']|join(',')}} +kafka_port=9092 diff --git a/kubernetes/helm_charts/core/mlworkbench/Chart.yaml b/kubernetes/helm_charts/core/mlworkbench/Chart.yaml new file mode 100644 index 0000000000..359c1f2ec8 --- /dev/null +++ b/kubernetes/helm_charts/core/mlworkbench/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +appVersion: "1.0" +description: A Helm chart for Kubernetes +name: mlworkbench +version: 0.1.0 diff --git a/kubernetes/helm_charts/core/mlworkbench/templates/configmap.yaml b/kubernetes/helm_charts/core/mlworkbench/templates/configmap.yaml new file mode 100644 index 0000000000..2a18b4516e --- /dev/null +++ b/kubernetes/helm_charts/core/mlworkbench/templates/configmap.yaml @@ -0,0 +1,11 @@ +#apiVersion: v1 +#data: +# {{- range $key, $val := .Values.certenv }} +# {{ $key }}: {{ $val }} +# {{- end }} +#kind: ConfigMap +#metadata: +# creationTimestamp: null +# name: {{ .Chart.Name }}-config +# namespace: {{ .Values.namespace }} + diff --git a/kubernetes/helm_charts/core/mlworkbench/templates/deployment.yaml b/kubernetes/helm_charts/core/mlworkbench/templates/deployment.yaml new file mode 100644 index 0000000000..6aa4e41368 --- /dev/null +++ b/kubernetes/helm_charts/core/mlworkbench/templates/deployment.yaml @@ -0,0 +1,60 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Chart.Name }} + namespace: {{ .Values.namespace }} + annotations: + reloader.stakater.com/auto: "true" +spec: + replicas: {{ .Values.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.strategy.maxsurge }} + maxUnavailable: {{ .Values.strategy.maxunavailable }} + selector: + matchLabels: + app: {{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Chart.Name }} + spec: +{{- if .Values.imagepullsecrets }} + imagePullSecrets: + - name: {{ .Values.imagepullsecrets }} +{{- end }} + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" + imagePullPolicy: Always + env: + envFrom: + - configMapRef: + name: {{ .Chart.Name }}-config + resources: +{{ toYaml .Values.resources | indent 10 }} + ports: + - containerPort: {{ .Values.network.port }} + {{- if .Values.healthcheck }} + livenessProbe: +{{ toYaml .Values.livenessProbe | indent 10 }} + readinessProbe: +{{ toYaml .Values.readinessProbe | indent 10 }} + {{- end }} + +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ .Chart.Name }}-service + namespace: {{ .Values.namespace }} + labels: + app: {{ .Chart.Name }} +spec: + ports: + - name: http-{{ .Chart.Name }} + protocol: TCP + port: {{ .Values.network.targetport }} + selector: + app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/mlworkbench/values.j2 b/kubernetes/helm_charts/core/mlworkbench/values.j2 new file mode 100644 index 0000000000..bc57900465 --- /dev/null +++ b/kubernetes/helm_charts/core/mlworkbench/values.j2 @@ -0,0 +1,26 @@ +### Default variable file for mlworkbench-service ### + +namespace: {{ namespace }} +imagepullsecrets: {{ imagepullsecrets }} +dockerhub: {{ dockerhub }} + + +replicaCount: {{mllworkbench_replicacount|default(1)}} +repository: {{mlworkbench_repository|default('mlworkbench_service')}} +image_tag: {{ image_tag }} +resources: + requests: + cpu: {{mlworkbench_cpu_req|default('100m')}} + memory: {{mlworkbench_mem_req|default('100Mi')}} + limits: + cpu: {{mlworkbench_cpu_limit|default('2')}} + memory: {{mlworkbench_mem_limit|default('2048Mi')}} +network: + port: 3579 + targetport: 3579 +strategy: + type: RollingUpdate + maxsurge: {{ mlworkbench_maxsurge|default('25%') }} + maxunavailable: {{ mlworkbench_maxunavailable|default('25%') }} + +{{ mlworkbench_liveness_readiness | to_nice_yaml }} From 37ec0e16953f9d8a984ea441bba4f040c30e6960 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Nov 2020 11:35:47 +0530 Subject: [PATCH 188/298] moving mlworkbench from swarm to k8s --- kubernetes/helm_charts/core/mlworkbench/values.j2 | 2 -- 1 file changed, 2 deletions(-) diff --git a/kubernetes/helm_charts/core/mlworkbench/values.j2 b/kubernetes/helm_charts/core/mlworkbench/values.j2 index bc57900465..5a21f8f762 100644 --- a/kubernetes/helm_charts/core/mlworkbench/values.j2 +++ b/kubernetes/helm_charts/core/mlworkbench/values.j2 @@ -22,5 +22,3 @@ strategy: type: RollingUpdate maxsurge: {{ mlworkbench_maxsurge|default('25%') }} maxunavailable: {{ mlworkbench_maxunavailable|default('25%') }} - -{{ mlworkbench_liveness_readiness | to_nice_yaml }} From bfa9e79603e0876dae7aee04568613e31dfbe667 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Nov 2020 11:40:20 +0530 Subject: [PATCH 189/298] moving mlworkbench from swarm to k8s --- kubernetes/helm_charts/core/mlworkbench/values.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/core/mlworkbench/values.j2 b/kubernetes/helm_charts/core/mlworkbench/values.j2 index 5a21f8f762..3cbfacce48 100644 --- a/kubernetes/helm_charts/core/mlworkbench/values.j2 +++ b/kubernetes/helm_charts/core/mlworkbench/values.j2 @@ -6,7 +6,7 @@ dockerhub: {{ dockerhub }} replicaCount: {{mllworkbench_replicacount|default(1)}} -repository: {{mlworkbench_repository|default('mlworkbench_service')}} +repository: {{mlworkbench_repository|default('ml-api')}} image_tag: {{ image_tag }} resources: requests: From f8b2ce58690af1da504cca9fb3927bb983e438e5 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Nov 2020 12:14:23 +0530 Subject: [PATCH 190/298] moving mlworkbench from swarm to k8s --- .../core/nginx-private-ingress/templates/configmap.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml index 56abf3bd30..910f2b5859 100644 --- a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml +++ b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml @@ -92,6 +92,10 @@ data: rewrite ^/program/(.*) /$1 break; proxy_pass http://program-service:6000; } + location /mlworkbench/ { + rewrite ^/mlworkbench/(.*) /$1 break; + proxy_pass http://mlworkbench-service:6000; + } } } kind: ConfigMap From 1a8a11017bc9b74500a0cbe5dd21f84dddb61845 Mon Sep 17 00:00:00 2001 From: harshavardhanc Date: Mon, 9 Nov 2020 12:17:40 +0530 Subject: [PATCH 191/298] moving mlworkbench from swarm to k8s --- .../core/nginx-private-ingress/templates/configmap.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml index 910f2b5859..7f5d4b741a 100644 --- a/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml +++ b/kubernetes/helm_charts/core/nginx-private-ingress/templates/configmap.yaml @@ -94,7 +94,7 @@ data: } location /mlworkbench/ { rewrite ^/mlworkbench/(.*) /$1 break; - proxy_pass http://mlworkbench-service:6000; + proxy_pass http://mlworkbench-service:3579; } } } From 14757318c6b18ead1b6f83a06225a92b0ab1b8d4 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Wed, 9 Dec 2020 10:33:42 +0530 Subject: [PATCH 192/298] Issue #SC-1928 feat: updated config for assessment-service (#2081) --- .../assessment-service_application.conf | 36 ++++++++++++++++--- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 871a0b3f59..f169b0ff46 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -77,6 +77,18 @@ akka { nr-of-instances = 2 dispatcher = actors-dispatcher } + /questionActor + { + router = smallest-mailbox-pool + nr-of-instances = 5 + dispatcher = actors-dispatcher + } + /questionSetActor + { + router = smallest-mailbox-pool + nr-of-instances = 5 + dispatcher = actors-dispatcher + } } } } @@ -107,7 +119,7 @@ play.modules { # If there are any built-in modules that you want to disable, you can list them here. #disabled += "" - enabled += modules.ItemSetModule + enabled += modules.AssessmentModule } ## IDE @@ -324,11 +336,21 @@ play.filters { play.http.parser.maxMemoryBuffer = 50MB akka.http.parsing.max-content-length = 50MB -schema.base_path="{{ schema_base_path }}" +schema.base_path="{{ kp_schema_base_path | default('/home/sunbird/assessment-service-1.0-SNAPSHOT/schemas')}}" # Cassandra Configuration -cassandra.lp.connection="{{ lp_cassandra_connection }}" -content.keyspace = "{{ lp_cassandra_keyspace_prefix }}_content_store" +cassandra { + lp { + connection: "{{ lp_cassandra_connection }}" + } + lpa { + connection: "{{ lp_cassandra_connection }}" + } +} +content.keyspace = "{{ cassandra_keyspace_prefix }}_content_store" +objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" +question.keyspace="{{ cassandra_keyspace_prefix }}_question_store" +questionset.keyspace="{{ cassandra_keyspace_prefix }}_hierarchy_store" # Redis Configuration redis.host="{{ sunbird_lp_redis_host }}" @@ -370,3 +392,9 @@ languageCode { tamil : "ta" telugu : "te" } + +kafka { + urls : "{{ kafka_urls }}" + topic.send.enable : true + topics.instruction : "{{ env_name }}.learning.job.request" +} \ No newline at end of file From d632e775fc121a8a101e64cf569ea9f3671cd5c7 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Thu, 17 Dec 2020 14:46:00 +0530 Subject: [PATCH 193/298] Issue #SC-1928 feat: api onboarding changes (#2084) --- ansible/roles/kong-api/defaults/main.yml | 291 +++++++++++++++++++++++ 1 file changed, 291 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index e9c5883b03..f0df9c1949 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -80,6 +80,8 @@ auth_service_prefix: /auth object_category_prefix: /object/category object_category_definition_prefix: /object/category/definition dataset_service_prefix: /dataset +question_prefix: /question +questionset_prefix: /questionset # Service URLs @@ -102,6 +104,7 @@ mvc_service_url: "http://mvc-service:9000" group_service_url: "http://groups-service:9000" analytics_api_service_url: "http://analytics-service:9000" taxonomy_service_url: "http://taxonomy-service:9000" +assessment_service_url: "http://assessment-service:9000" premium_consumer_rate_limits: @@ -5942,3 +5945,291 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: questionCreate + request_path: "{{ question_prefix }}/v1/create" + upstream_url: "{{ assessment_service_url }}/question/v4/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionRead + request_path: "{{ question_prefix }}/v1/read" + upstream_url: "{{ assessment_service_url }}/question/v4/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: questionUpdate + request_path: "{{ question_prefix }}/v1/update" + upstream_url: "{{ assessment_service_url }}/question/v4/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionRetire + request_path: "{{ question_prefix }}/v1/retire" + upstream_url: "{{ assessment_service_url }}/question/v4/retire" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: questionReview + request_path: "{{ question_prefix }}/v1/review" + upstream_url: "{{ assessment_service_url }}/question/v4/review" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: questionPublish + request_path: "{{ question_prefix }}/v1/publish" + upstream_url: "{{ assessment_service_url }}/question/v4/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetCreate + request_path: "{{ questionset_prefix }}/v1/create" + upstream_url: "{{ assessment_service_url }}/questionset/v4/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetRead + request_path: "{{ questionset_prefix }}/v1/read" + upstream_url: "{{ assessment_service_url }}/questionset/v4/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetUpdate + request_path: "{{ questionset_prefix }}/v1/update" + upstream_url: "{{ assessment_service_url }}/questionset/v4/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetRetire + request_path: "{{ questionset_prefix }}/v1/retire" + upstream_url: "{{ assessment_service_url }}/questionset/v4/retire" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetReview + request_path: "{{ questionset_prefix }}/v1/review" + upstream_url: "{{ assessment_service_url }}/questionset/v4/review" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetPublish + request_path: "{{ questionset_prefix }}/v1/publish" + upstream_url: "{{ assessment_service_url }}/questionset/v4/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetUpdateHierarchy + request_path: "{{ questionset_prefix }}/v1/hierarchy/update" + upstream_url: "{{ assessment_service_url }}/questionset/v4/hierarchy/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetReadHierarchy + request_path: "{{ questionset_prefix }}/v1/hierarchy" + upstream_url: "{{ assessment_service_url }}/questionset/v4/hierarchy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetAddQuestion + request_path: "{{ questionset_prefix }}/v1/add" + upstream_url: "{{ assessment_service_url }}/questionset/v4/add" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionSetRemoveQuestion + request_path: "{{ questionset_prefix }}/v1/remove" + upstream_url: "{{ assessment_service_url }}/questionset/v4/remove" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" From 63230970d66802307e776ed84a97aad83e80571a Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Sat, 9 Jan 2021 15:03:12 +0530 Subject: [PATCH 194/298] Dock 0.0.3 (#2140) * Issue #SC-1928 feat: api onboarding changes * Issue #SC-2141 feat: added questionset reject api --- ansible/roles/kong-api/defaults/main.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index f0df9c1949..c696066a52 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6233,3 +6233,21 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + + - name: questionSetReject + request_path: "{{ questionset_prefix }}/v1/reject" + upstream_url: "{{ assessment_service_url }}/questionset/v4/reject" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" From e75ab0984baee67bed3dd025db6e859ccda4de45 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Mon, 11 Jan 2021 11:45:36 +0530 Subject: [PATCH 195/298] Issue #SC-2141 feat: added new kafka topic (#2142) --- .../stack-sunbird/templates/assessment-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index f169b0ff46..36529666a9 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -396,5 +396,5 @@ languageCode { kafka { urls : "{{ kafka_urls }}" topic.send.enable : true - topics.instruction : "{{ env_name }}.learning.job.request" + topics.instruction : "{{ env_name }}.assessment.publish.request" } \ No newline at end of file From 1c2c23a4ff18430431b789db68e6f7fa161d1087 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Tue, 12 Jan 2021 14:52:41 +0530 Subject: [PATCH 196/298] Issue #DP-1528 fix: updated composite search config --- .../templates/assessment-service_application.conf | 6 ++++++ .../templates/content-service_application.conf | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 36529666a9..4f2ef00987 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -397,4 +397,10 @@ kafka { urls : "{{ kafka_urls }}" topic.send.enable : true topics.instruction : "{{ env_name }}.assessment.publish.request" +} + +composite { + search { + url : "{{ sunbird_search_service_api_base_url }}/v3/search" + } } \ No newline at end of file diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 2b70313b83..238185977d 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -471,7 +471,7 @@ languageCode { } composite { search { - url : "{{ proto }}://{{ proxy_server_name }}/action/composite/v3/search" + url : "{{ sunbird_search_service_api_base_url }}/v3/search" } } cloud_storage_type: "azure" From 77dbd96944b90ae2b9c38df063e6250a67e3174c Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Mon, 18 Jan 2021 11:58:48 +0530 Subject: [PATCH 197/298] Issue #24 feat: added new primary category (#2164) --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 238185977d..a7abe97041 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -562,7 +562,7 @@ mimeTypeToPrimaryCategory { #Default objectCategory mapping for channel channel.content.primarycategories=["Explanation Content", "Learning Resource", "Practice Question Set", "eTextbook", "Teacher Resource", "Course Assessment"] -channel.collection.primarycategories=["Course", "Digital Textbook", "Content Playlist"] +channel.collection.primarycategories=["Course", "Digital Textbook", "Content Playlist", "Question paper"] channel.asset.primarycategories=["Asset"] objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" \ No newline at end of file From 53cb6fe8df0427eddd0bcd4f4b03e8116b330c5a Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Mon, 18 Jan 2021 18:11:00 +0530 Subject: [PATCH 198/298] Issue #24 feat: added new content primary category (#2168) --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index a7abe97041..5c64557d50 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -561,7 +561,7 @@ mimeTypeToPrimaryCategory { } #Default objectCategory mapping for channel -channel.content.primarycategories=["Explanation Content", "Learning Resource", "Practice Question Set", "eTextbook", "Teacher Resource", "Course Assessment"] +channel.content.primarycategories=["Explanation Content", "Learning Resource", "Practice Question Set", "eTextbook", "Teacher Resource", "Course Assessment","Exam Question"] channel.collection.primarycategories=["Course", "Digital Textbook", "Content Playlist", "Question paper"] channel.asset.primarycategories=["Asset"] From 115e8d2fdb9a40e2e276ad37dc019daf48d2bfa2 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Tue, 23 Feb 2021 18:34:56 +0530 Subject: [PATCH 199/298] Issue #SB-22267 feat: dock program-service variable added (#2277) * Issue #SB-22267 feat: dock program-service variable added * Issue #SB-22267 feat: dock program-service variable added --- ansible/roles/stack-sunbird/defaults/main.yml | 3 +++ ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 2 files changed, 6 insertions(+) diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 2465208ce5..9b7566315e 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -796,3 +796,6 @@ exhaust_api_consumer_ids: ["273f3b18-5dda-4a27-984a-060c7cd398d3"] # being used user_profile_read_url: "http://learner-service:9000/v1/user/read/" # being used in analytics api to get user details org_search_url: "http://learner-service:9000/v1/org/search" # being used in analytics api to get mhrd tenant id dataexhaust_super_admin_channel: "sunbird" # being used in analytics api for authorizing user with super admin channel + +# dock program-service +dock_program_service_url: "http://program-service:6000/" diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index fb51d9667a..ee8c2446d3 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -125,3 +125,6 @@ sunbird_kp_assessment_service_base_url={{ sunbird_kp_assessment_service_base_url dock_api_auth_token={{ dock_api_auth_token }} dock_api_call_log_status={{ dock_api_call_log_status }} sunbird_portal_url={{ sunbird_portal_url }} + +#Release-3.7.0 +dock_program_service_url={{ dock_program_service_url }} From b2a85711a66978f8f522a8de2b96a0f4aff0c433 Mon Sep 17 00:00:00 2001 From: Rajesh Rajendran Date: Thu, 25 Feb 2021 11:56:49 +0000 Subject: [PATCH 200/298] variable fixes (#2282) * Override env specific additional configs Signed-off-by: Rajesh Rajendran * Adding default variable for overrides --- .../stack-sunbird/templates/content-service_application.conf | 5 ++++- .../templates/taxonomy-service_application.conf | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 5c64557d50..7576982fcd 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -565,4 +565,7 @@ channel.content.primarycategories=["Explanation Content", "Learning Resource", " channel.collection.primarycategories=["Course", "Digital Textbook", "Content Playlist", "Question paper"] channel.asset.primarycategories=["Asset"] -objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" \ No newline at end of file +objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" + +# This will override all content service application configs from ansible +{{content_service_config_override|d('')}} diff --git a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf index 61ef4d58da..b1b5e90ae7 100644 --- a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf @@ -386,4 +386,7 @@ languageCode { tamil : "ta" telugu : "te" } -objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" \ No newline at end of file +objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" + +# This will override all taxonamy service application configs from ansible +{{taxonamy_service_config_override|d('')}} From 0998da52babb135fa53e2a841baf5830485c0e2a Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Wed, 17 Mar 2021 12:38:01 +0530 Subject: [PATCH 201/298] Issue #SC-2200 feat: removed auth for question/questionset read api (#2326) --- ansible/roles/kong-api/defaults/main.yml | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index c696066a52..0b65a100c4 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5969,16 +5969,12 @@ kong_apis: upstream_url: "{{ assessment_service_url }}/question/v4/read" strip_request_path: true plugins: - - name: jwt - name: cors - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" - config.limit_by: credential + config.limit_by: ip - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" @@ -6077,16 +6073,12 @@ kong_apis: upstream_url: "{{ assessment_service_url }}/questionset/v4/read" strip_request_path: true plugins: - - name: jwt - name: cors - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentAccess' - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" - config.limit_by: credential + config.limit_by: ip - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" From 7e3c99639a042787889e85b290d25cadaf726fc4 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Fri, 19 Mar 2021 16:35:25 +0530 Subject: [PATCH 202/298] Issue #SB-22937 feat: Onboard user list API (#2305) * Issue #SB-22937 feat: Onboard user list API * Issue #SB-22937 feat: Contributor search API --- ansible/roles/kong-api/defaults/main.yml | 32 ++++++++++++++++++------ 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 0b65a100c4..3ad98d933a 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -4716,7 +4716,7 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ small_request_size_limit }}" + config.allowed_payload_size: "{{ small_request_size_limit }}" - name: listGroup request_path: "{{ group_service_prefix }}/v1/list" @@ -4734,7 +4734,7 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ small_request_size_limit }}" + config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readGroup request_path: "{{ group_service_prefix }}/v1/read" @@ -4932,7 +4932,7 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ small_request_size_limit }}" + config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createTenantPreferences request_path: "{{ org_service_prefix }}/v2/preferences/create" @@ -4968,7 +4968,7 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ small_request_size_limit }}" + config.allowed_payload_size: "{{ small_request_size_limit }}" - name: readTenantPreferencess request_path: "{{ org_service_prefix }}/v2/preferences/read" @@ -4986,7 +4986,7 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ small_request_size_limit }}" + config.allowed_payload_size: "{{ small_request_size_limit }}" - name: generateCertificateV2 request_path: "{{ cert_service_prefix }}/v2/certs/generate" @@ -5004,7 +5004,7 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ medium_request_size_limit }}" + config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: addRegCertificateV2 request_path: "{{ cert_registry_service_prefix }}/v2/certs/add" @@ -5041,7 +5041,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - + - name: contentImportAPI request_path: "{{ content_prefix }}/v1/import" upstream_url: "{{ content_service_url }}/content/v3/import" @@ -5946,6 +5946,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + - name: contributorSearch + request_path: "{{ program_service_prefix }}/v1/contributor/search" + upstream_url: "{{ program_service_url }}/program/v1/contributor/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'userTempAdmin' + - 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: questionCreate request_path: "{{ question_prefix }}/v1/create" upstream_url: "{{ assessment_service_url }}/question/v4/create" From f5f2be566f480eeb78a4711fb262958cdeac190a Mon Sep 17 00:00:00 2001 From: Amit Priyadarshi Date: Wed, 14 Apr 2021 13:07:31 +0530 Subject: [PATCH 203/298] Issue #SB-21954 feat: Adding config properties to be removed as part of content copy (#2417) --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 7576982fcd..b8ccd7e77d 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -381,7 +381,7 @@ content { copy { invalid_statusList: ["Flagged","FlaggedDraft","FraggedReview","Retired", "Processing"] origin_data: ["name", "author", "license", "organisation"] - props_to_remove: ["downloadUrl", "artifactUrl", "variants", "createdOn", "collections", "children", "lastUpdatedOn", "SYS_INTERNAL_LAST_UPDATED_ON", "versionKey", "s3Key", "status", "pkgVersion", "toc_url", "mimeTypesCount", "contentTypesCount", "leafNodesCount", "childNodes", "prevState", "lastPublishedOn", "flagReasons", "compatibilityLevel", "size", "publishChecklist", "publishComment", "LastPublishedBy", "rejectReasons", "rejectComment", "gradeLevel", "subject", "medium", "board", "topic", "purpose", "subtopic", "contentCredits", "owner", "collaborators", "creators", "contributors", "badgeAssertions", "dialcodes", "concepts", "keywords", "reservedDialcodes", "dialcodeRequired", "leafNodes", "sYS_INTERNAL_LAST_UPDATED_ON", "prevStatus", "lastPublishedBy", "streamingUrl"] + props_to_remove: ["downloadUrl", "artifactUrl", "variants", "createdOn", "collections", "children", "lastUpdatedOn", "SYS_INTERNAL_LAST_UPDATED_ON", "versionKey", "s3Key", "status", "pkgVersion", "toc_url", "mimeTypesCount", "contentTypesCount", "leafNodesCount", "childNodes", "prevState", "lastPublishedOn", "flagReasons", "compatibilityLevel", "size", "publishChecklist", "publishComment", "LastPublishedBy", "rejectReasons", "rejectComment", "gradeLevel", "subject", "medium", "board", "topic", "purpose", "subtopic", "contentCredits", "owner", "collaborators", "creators", "contributors", "badgeAssertions", "dialcodes", "concepts", "keywords", "reservedDialcodes", "dialcodeRequired", "leafNodes", "sYS_INTERNAL_LAST_UPDATED_ON", "prevStatus", "lastPublishedBy", "streamingUrl", "boardIds", "gradeLevelIds", "subjectIds", "mediumIds", "topicsIds", "targetFWIds", "targetBoardIds", "targetGradeLevelIds", "targetSubjectIds", "targetMediumIds", "targetTopicIds", "se_boards", "se_subjects", "se_mediums", "se_gradeLevels", "se_topics", "se_FWIds", "se_boardIds", "se_subjectIds", "se_mediumIds", "se_gradeLevelIds", "se_topicIds"] } media { base_url: "{{content_media_base_url | default(proto + '://' + domain_name)}}" From 440e83caa5c5644274543852c33a6edc2bf7af32 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Fri, 16 Apr 2021 12:36:44 +0530 Subject: [PATCH 204/298] Issue #SB-22935 feat: learner service variable added (#2427) * Issue #SB-22935 feat: learner service variable added --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index d6b0b9eb4b..e730026f49 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -19,3 +19,4 @@ sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} dock_redis_host={{groups['redis1'][0]}} content_service_url=http://content-service:9000/ sunbird_program_db_pool={{ sunbird_program_db_pool }} +learner_service_url=http://player:3000/learner From 3a85816190be849a66b8c6098826034fad7a1fcf Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Wed, 21 Apr 2021 12:30:23 +0530 Subject: [PATCH 205/298] Issue #SB-23804 feat: updated config for import api (#2452) --- .../templates/assessment-service_application.conf | 11 ++++++++++- .../templates/content-service_application.conf | 10 ++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 4f2ef00987..0051f3bb1b 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -403,4 +403,13 @@ composite { search { url : "{{ sunbird_search_service_api_base_url }}/v3/search" } -} \ No newline at end of file +} + +import { + request_size_limit : 300 + output_topic_name : "{{ env_name }}.auto.creation.job.request" + required_props { + question : ["name", "code", "mimeType", "framework", "channel"] + questionset : ["name", "code", "mimeType", "framework", "channel"] + } +} diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index b8ccd7e77d..eb20b311b0 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -497,10 +497,12 @@ content.link_dialcode.max_limit=10 # Content Import API Config -content.import.request_size_limit=300 -content.import.required_props=["name","code","mimeType","primaryCategory","artifactUrl","framework"] -content.import.topic_name="{{ env_name }}.auto.creation.job.request" -content.import.remove_props=["downloadUrl","variants","previewUrl","streamingUrl","itemSets","level1Name","level1Concept","level2Name","level2Concept","level3Name","level3Concept","me_totalPlaySessionCount","me_totalTimeSpentInSec","me_totalSessionsCount","me_totalTimespent","me_totalInteractions","me_creationSessions","me_creationTimespent","me_averageInteractionsPerMin","me_averageSessionsPerDevice","me_totalDevices","me_averageTimespentPerSession","me_averageRating","me_totalDownloads","me_totalSideloads","me_totalRatings","me_totalComments","me_totalDialcode","me_totalDialcodeLinkedToContent","me_totalDialcodeAttached","me_hierarchyLevel","origin","originData","questions"] +import { + request_size_limit : 300 + output_topic_name : "{{ env_name }}.auto.creation.job.request" + required_props : ["name","code","mimeType","primaryCategory","artifactUrl","framework"] + remove_props : ["downloadUrl","variants","previewUrl","streamingUrl","itemSets","level1Name","level1Concept","level2Name","level2Concept","level3Name","level3Concept","me_totalPlaySessionCount","me_totalTimeSpentInSec","me_totalSessionsCount","me_totalTimespent","me_totalInteractions","me_creationSessions","me_creationTimespent","me_averageInteractionsPerMin","me_averageSessionsPerDevice","me_totalDevices","me_averageTimespentPerSession","me_averageRating","me_totalDownloads","me_totalSideloads","me_totalRatings","me_totalComments","me_totalDialcode","me_totalDialcodeLinkedToContent","me_totalDialcodeAttached","me_hierarchyLevel","origin","originData","questions"] +} contentTypeToPrimaryCategory { ClassroomTeachingVideo: "Explanation Content" From eaa564baf87fb9b2f36d6742f51802f7d116ef43 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Thu, 22 Apr 2021 11:45:53 +0530 Subject: [PATCH 206/298] Issue #SB-23188 fix: DOCK channel and framework read API issue fix (#2458) --- ansible/roles/kong-api/defaults/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 3ad98d933a..36d96e8213 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -2781,7 +2781,7 @@ kong_apis: - name: readChannel request_path: "{{ channel_service_prefix }}/v1/read" - upstream_url: "{{ knowledge_mw_service_url }}/v1/channel/read" + upstream_url: "{{ sunbird_learner_player_url }}/channel/v1/read" strip_request_path: true plugins: - name: cors @@ -2895,7 +2895,7 @@ kong_apis: - name: readFramework request_path: "{{ framework_service_prefix }}/v1/read" - upstream_url: "{{ knowledge_mw_service_url }}/v1/framework/read" + upstream_url: "{{ sunbird_learner_player_url }}/framework/v1/read" strip_request_path: true plugins: - name: cors From 4c99ba9391f128fdcd420f911bc25bf47cbeeca0 Mon Sep 17 00:00:00 2001 From: G33tha Date: Mon, 26 Apr 2021 12:59:54 +0530 Subject: [PATCH 207/298] removed duplicate api addRegCertificate --- ansible/roles/kong-api/defaults/main.yml | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 36d96e8213..9ba8cd9c5d 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5114,24 +5114,6 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" - - name: addRegCertificate - request_path: "{{ cert_registry_service_prefix }}/v1/certs/add" - upstream_url: "{{ cert_registry_service_url }}/certs/v1/registry/add" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'certificateCreate' - - 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: generateCertificate request_path: "{{ cert_service_prefix }}/v1/certs/generate" upstream_url: "{{ cert_service_url }}/v1/certs/generate" From f72a5bf1a11937792332356c9c64e52dba6b1b4a Mon Sep 17 00:00:00 2001 From: keshavprasadms Date: Wed, 28 Apr 2021 18:21:37 +0530 Subject: [PATCH 208/298] fix: updated include location, removed keycloak block --- .../core/nginx-public-ingress/values.j2 | 133 +----------------- 1 file changed, 1 insertion(+), 132 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index 85d686d035..eb54eff0e4 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -172,42 +172,6 @@ proxyconfig: |- proxy_set_header X-Request-ID $sb_request_id; proxy_pass http://kong; } - location /auth/ { - rewrite ^/auth/(.*) /auth/$1 break; - proxy_set_header X-Request-ID $sb_request_id; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Scheme $scheme; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_set_header Connection ""; - proxy_http_version 1.1; - proxy_pass http://keycloak; - } - # Caching keycloak static assets - location ~ /auth/resources/(.+\.(png|svg|ico|js|eot|ttf|woff|woff2|css)) { - # Enabling caching - proxy_cache_key $proxy_host$request_uri; - proxy_cache proxy_cache; - add_header X-Proxy-Cache $upstream_cache_status; - add_header X-Proxy-Cache-Date $upstream_http_date; - proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504; - proxy_cache_revalidate on; - proxy_cache_background_update on; - proxy_cache_lock on; - proxy_cache_valid 200 3600s; - rewrite ^/auth/(.*) /auth/$1 break; - proxy_set_header Connection ""; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Scheme $scheme; - proxy_set_header X-Forwarded-For {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_connect_timeout 5; - proxy_send_timeout 60; - proxy_read_timeout 70; - proxy_http_version 1.1; - proxy_pass http://keycloak; - } # This is Caching mechanism for POST requests location search location ~ /learner/data/v1/location/search { # Enabling caching @@ -858,7 +822,7 @@ nginxconfig: | keepalive 1000; } - include /etc/nginx/conf.d/*.conf; + include /etc/nginx/defaults.d/*.conf; # local caching for images and files proxy_cache_path /tmp/proxy_cache levels=1:2 keys_zone=tmp_cache:5m max_size=10m inactive=60m use_temp_path=off; proxy_cache_path /tmp/api_cache levels=1:2 keys_zone=proxy_cache:5m max_size=300m inactive=60m use_temp_path=off; @@ -880,101 +844,6 @@ nginxconfig: | } } -keycloakconf: | - server { - listen 80; - listen [::]:80; - server_name {{ merge_proxy_server_name }}; - # Limitting open connection per ip - limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; - return 301 https://{{ merge_proxy_server_name }}$request_uri; - } - server { - listen 443 ssl; - ssl_certificate /etc/secrets-merge/tls.crt; - ssl_certificate_key /etc/secrets-merge/tls.key; - server_name {{ merge_proxy_server_name }}; - # Limitting open connection per ip - limit_conn limitbyaddr {{ nginx_per_ip_connection_limit }}; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-SSL on; - proxy_set_header X-Forwarded-Proto $scheme; - ignore_invalid_headers off; #pass through headers from Jenkins which are considered invalid by Nginx server. - resolver 127.0.0.11 valid=5s; - location ~* ^/auth/(.*)/impersonation { - return 301 {{proto}}://{{ proxy_server_name }}; - } - location ~* ^/auth/realms/master { - return 301 {{proto}}://{{ proxy_server_name }}; - } - location ~* ^/auth/admin/master/console/ { - return 301 {{proto}}://{{ proxy_server_name }}; - } - location ~* ^/auth/realms/(.+)/token/introspect/ { - return 301 {{proto}}://$host/api/auth/v1/realms/$1/token/introspect; - } - location ~* ^/auth/realms/(.+)/token/ { - return 301 {{proto}}://$host/api/auth/v1/realms/$1/token/; - } - location ~* ^/auth/realms/(.+)/userinfo/ { - return 301 {{proto}}://$host/api/auth/v1/realms/$1/userinfo/; - } - location ~* ^/auth/realms/(.+)/logout/ { - return 301 {{proto}}://$host/api/auth/v1/realms/$1/logout/; - } - location ~* ^/auth/realms/(.+)/certs/ { - return 301 {{proto}}://$host/api/auth/v1/realms/$1/certs/; - } - location ~* ^/auth/realms/(.+)/clients-registrations/ { - return 301 {{proto}}://$host/api/auth/v1/realms/$1/clients-registrations/; - } - location ~* ^/auth/v1/refresh/token { - rewrite ^/auth/(.*) /auth/$1 break; - proxy_set_header Connection ""; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Scheme $scheme; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_connect_timeout 5; - proxy_send_timeout 60; - proxy_read_timeout 70; - proxy_http_version 1.1; - proxy_set_header X-Request-ID $sb_request_id; - proxy_pass http://kong; - } - location ~* ^/auth/admin/master/console/ { - return 301 {{proto}}://{{ merge_proxy_server_name }}; - } - location /auth/ { - set $target {{ keycloak_url }}; - rewrite ^/auth/(.*) /auth/$1 break; - proxy_set_header X-Request-ID $sb_request_id; - proxy_pass $target; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Scheme $scheme; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } - location / { - rewrite ^/(.*) /$1 break; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Scheme $scheme; - proxy_connect_timeout 5; - proxy_send_timeout 60; - proxy_read_timeout 70; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_set_header Connection ""; - proxy_http_version 1.1; - proxy_set_header X-Request-ID $request_id; - proxy_pass http://player; - } - } - serviceMonitor: enabled: true labels: # labels with which the prometheus choose the serviceMonitor From b24e469266f6c5ca491fbad7e90e57fd08a4da8c Mon Sep 17 00:00:00 2001 From: keshavprasadms Date: Wed, 28 Apr 2021 18:25:18 +0530 Subject: [PATCH 209/298] fix: remove ouath location block --- .../core/nginx-public-ingress/values.j2 | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 index eb54eff0e4..13646b6add 100644 --- a/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 +++ b/kubernetes/helm_charts/core/nginx-public-ingress/values.j2 @@ -303,25 +303,6 @@ proxyconfig: |- proxy_set_header X-Request-ID $sb_request_id; proxy_pass http://kong; } - # Oauth2 config - location /oauth2/ { - set $target http://oauth2-proxy.logging.svc.cluster.local; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Scheme $scheme; - proxy_set_header X-Auth-Request-Redirect $request_uri; - proxy_pass http://oauth2-proxy-service.logging.svc.cluster.local; - } - location = /oauth2/auth { - set $target http://oauth2-proxy.logging.svc.cluster.local; - proxy_set_header Host $host; - proxy_set_header X-Real-IP {{ nginx_client_public_ip_header | d('$remote_addr') }}; - proxy_set_header X-Scheme $scheme; - # nginx auth_request includes headers but not body - proxy_set_header Content-Length ""; - proxy_pass_request_body off; - proxy_pass http://oauth2-proxy-service.logging.svc.cluster.local; - } location /dashboard/ { auth_request /oauth2/auth; error_page 401 = /oauth2/sign_in; From 1f4630592adc682fc57c08ebb8d16c3426f21ba6 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Tue, 4 May 2021 20:10:15 +0530 Subject: [PATCH 210/298] Issue #SB-23188 fix: added new env variable for QuestionSet enable and disable (#2498) --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index ee8c2446d3..23db6802fc 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -128,3 +128,6 @@ sunbird_portal_url={{ sunbird_portal_url }} #Release-3.7.0 dock_program_service_url={{ dock_program_service_url }} + +#Release-3.9.0 +dock_questionSet_enable={{ dock_questionSet_enable | default('true') }} From 0d94704ff116513ad10793affef8cc10a7ec08d3 Mon Sep 17 00:00:00 2001 From: G33tha Date: Mon, 10 May 2021 12:43:42 +0530 Subject: [PATCH 211/298] updated apimanager helmcharts with godns --- .../core/apimanager/templates/deployment.yaml | 27 +++++++++++++------ .../helm_charts/core/apimanager/values.j2 | 15 +++++++++++ 2 files changed, 34 insertions(+), 8 deletions(-) diff --git a/kubernetes/helm_charts/core/apimanager/templates/deployment.yaml b/kubernetes/helm_charts/core/apimanager/templates/deployment.yaml index ad1977b9b4..7d95ded428 100755 --- a/kubernetes/helm_charts/core/apimanager/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/apimanager/templates/deployment.yaml @@ -27,7 +27,11 @@ spec: containers: - name: {{ .Chart.Name }} image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always + env: + - name: KONG_DNS_RESOLVER + value: "127.0.0.1:53" + - name: KONG_DNSMASQ + value: "off" envFrom: - configMapRef: name: {{ .Chart.Name }}-config @@ -44,12 +48,19 @@ spec: readinessProbe: {{ toYaml .Values.readinessProbe | indent 10 }} {{- end }} - lifecycle: - preStop: - exec: - command: - - kong - - quit + - name: go-dns + image: "{{ .Values.godns.repository }}:{{ .Values.godns.image_tag }}" + env: + - name: DNSMASQ_ENABLE_SEARCH + value: "true" + - name: DNSMASQ_VERBOSE + value: {{ .Values.godns.env.verbose | quote }} + - name: DNSMASQ_RCACHE + value: {{ .Values.godns.env.cache | quote }} + - name: DNSMASQ_RCACHE_TTL + value: {{ .Values.godns.env.cache_ttl | quote }} + resources: +{{ toYaml .Values.godns.resources | indent 10 }} --- apiVersion: v1 @@ -70,4 +81,4 @@ spec: port: {{ .Values.service.port }} targetPort: {{ .Values.service.targetport }} selector: - app: {{ .Chart.Name }} # metadataname of deployment + app: {{ .Chart.Name }} # metadataname of deployment \ No newline at end of file diff --git a/kubernetes/helm_charts/core/apimanager/values.j2 b/kubernetes/helm_charts/core/apimanager/values.j2 index 4270bc727b..87f9296028 100755 --- a/kubernetes/helm_charts/core/apimanager/values.j2 +++ b/kubernetes/helm_charts/core/apimanager/values.j2 @@ -26,3 +26,18 @@ strategy: maxunavailable: {{ apimanager_maxunavailable|default('25%') }} {{ apimanager_liveness_readiness | to_nice_yaml }} + +godns: + repository: {{ go_dns_repository | default('docker.io/sunbird/go-dns') }} + image_tag: {{ go_dns_image_tag | default('v1.2') }} + resources: + requests: + cpu: {{ go_dns_cpu_req | default('100m') }} + memory: {{ go_dns_mem_req | default('100Mi') }} + limits: + cpu: {{ go_dns_cpu_limit | default('500m') }} + memory: {{ go_dns_mem_limit | default('500Mi') }} + env: + verbose: {{ go_dns_verbosity | default('False') }} + cache: {{ go_dns_cache | default('1000') }} + cache_ttl: {{ go_dns_cache_ttl | default('7200') }} From 88d9f56bbeb153c11f904b942e470b94b7928e82 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Wed, 12 May 2021 12:48:54 +0530 Subject: [PATCH 212/298] Issue #SB-23401 feat: updated script for question list api (#2520) --- ansible/roles/kong-api/defaults/main.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 9ba8cd9c5d..e4310b9489 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5978,6 +5978,20 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionList + request_path: "{{ question_prefix }}/v1/list" + upstream_url: "{{ assessment_service_url }}/question/v4/list" + strip_request_path: true + plugins: + - name: cors + - "{{ statsd_pulgin }}" + - name: rate-limiting + config.policy: local + config.hour: "{{ medium_rate_limit_per_hour }}" + config.limit_by: ip + - name: request-size-limiting + config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionUpdate request_path: "{{ question_prefix }}/v1/update" upstream_url: "{{ assessment_service_url }}/question/v4/update" From ce9759a66b961b46feb8e832a011aa11a98ef5af Mon Sep 17 00:00:00 2001 From: amitpriyadarshi Date: Thu, 10 Jun 2021 16:50:56 +0530 Subject: [PATCH 213/298] Issue #SB-24310 feat: Adding framework master category validation configuration --- ansible/inventory/env/group_vars/all.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/inventory/env/group_vars/all.yml b/ansible/inventory/env/group_vars/all.yml index 7c0c444a73..dc0351c6f9 100644 --- a/ansible/inventory/env/group_vars/all.yml +++ b/ansible/inventory/env/group_vars/all.yml @@ -656,4 +656,8 @@ dp_play_http_secret_key: "mysecretdpplaysecretkey" # LMS Service vars group_activity_agg_cache_ttl: 3600 + group_activity_agg_cache_enable: false + +#master category validation enabled +master_category_validation_enabled: false \ No newline at end of file From aae904fca10800a875e4044ccc6f40da3fa737a9 Mon Sep 17 00:00:00 2001 From: amitpriyadarshi Date: Thu, 10 Jun 2021 17:05:24 +0530 Subject: [PATCH 214/298] Issue #SB-24310 feat: Adding framework master category validation configuration --- .../templates/assessment-service_application.conf | 3 +++ .../stack-sunbird/templates/content-service_application.conf | 3 +++ 2 files changed, 6 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 0051f3bb1b..d54d3f3d23 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -413,3 +413,6 @@ import { questionset : ["name", "code", "mimeType", "framework", "channel"] } } + +# Framework master category validation +master.category.validation.enabled= false diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index eb20b311b0..5271be124c 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -571,3 +571,6 @@ objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_stor # This will override all content service application configs from ansible {{content_service_config_override|d('')}} + +# Framework master category validation +master.category.validation.enabled= false From 85f911e704541e5e9d8741df97fab33cc3ffa1e4 Mon Sep 17 00:00:00 2001 From: amitpriyadarshi Date: Thu, 10 Jun 2021 21:04:06 +0530 Subject: [PATCH 215/298] Issue #SB-24310 feat: Adding framework master category validation configuration --- ansible/inventory/env/group_vars/all.yml | 3 --- ansible/roles/stack-sunbird/defaults/main.yml | 3 +++ .../templates/assessment-service_application.conf | 2 +- .../stack-sunbird/templates/content-service_application.conf | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ansible/inventory/env/group_vars/all.yml b/ansible/inventory/env/group_vars/all.yml index dc0351c6f9..0654d178fa 100644 --- a/ansible/inventory/env/group_vars/all.yml +++ b/ansible/inventory/env/group_vars/all.yml @@ -658,6 +658,3 @@ dp_play_http_secret_key: "mysecretdpplaysecretkey" group_activity_agg_cache_ttl: 3600 group_activity_agg_cache_enable: false - -#master category validation enabled -master_category_validation_enabled: false \ No newline at end of file diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 9b7566315e..941dc2a483 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -799,3 +799,6 @@ dataexhaust_super_admin_channel: "sunbird" # being used in analytics api for aut # dock program-service dock_program_service_url: "http://program-service:6000/" + +#master category validation enabled +master_category_validation_enabled: true diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index d54d3f3d23..264bcef6e6 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -415,4 +415,4 @@ import { } # Framework master category validation -master.category.validation.enabled= false +master.category.validation.enabled= {{ master_category_validation_enabled }} diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 5271be124c..3d8ca19862 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -573,4 +573,4 @@ objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_stor {{content_service_config_override|d('')}} # Framework master category validation -master.category.validation.enabled= false +master.category.validation.enabled= {{ master_category_validation_enabled }} From a4bcb265b0a7515120d21965874c6776e1ad84ef Mon Sep 17 00:00:00 2001 From: Amit Priyadarshi Date: Fri, 11 Jun 2021 11:40:16 +0530 Subject: [PATCH 216/298] SB-24310: Adding framework master category validation configuration (#2611) * Issue #SB-24310 feat: Adding framework master category validation configuration * Issue #SB-24310 feat: Adding framework master category validation configuration --- ansible/roles/stack-sunbird/defaults/main.yml | 2 +- .../stack-sunbird/templates/assessment-service_application.conf | 2 +- .../stack-sunbird/templates/content-service_application.conf | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 941dc2a483..f892a9dbd6 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -801,4 +801,4 @@ dataexhaust_super_admin_channel: "sunbird" # being used in analytics api for aut dock_program_service_url: "http://program-service:6000/" #master category validation enabled -master_category_validation_enabled: true +master_category_validation_enabled: "Yes" diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 264bcef6e6..24d4a52630 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -415,4 +415,4 @@ import { } # Framework master category validation -master.category.validation.enabled= {{ master_category_validation_enabled }} +master.category.validation.enabled="{{ master_category_validation_enabled }}" diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 3d8ca19862..ad76b679ce 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -573,4 +573,4 @@ objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_stor {{content_service_config_override|d('')}} # Framework master category validation -master.category.validation.enabled= {{ master_category_validation_enabled }} +master.category.validation.enabled="{{ master_category_validation_enabled }}" From 9f698dcf9f7485a73e0f145d6e30978da54d0d97 Mon Sep 17 00:00:00 2001 From: Amit Priyadarshi Date: Fri, 11 Jun 2021 11:52:19 +0530 Subject: [PATCH 217/298] SB-24310: Adding framework master category validation configuration (#2613) * Issue #SB-24310 feat: Adding framework master category validation configuration * Issue #SB-24310 feat: Adding framework master category validation configuration From e31e183b8482eec0a49a6e491a1ef750c3790370 Mon Sep 17 00:00:00 2001 From: Amit Priyadarshi Date: Thu, 24 Jun 2021 12:18:07 +0530 Subject: [PATCH 218/298] SB-24310: Adding framework master category validation configuration - taxonomy service (#2642) * Issue #SB-24310 feat: Adding framework master category validation configuration - taxonomy service --- .../stack-sunbird/templates/taxonomy-service_application.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf index b1b5e90ae7..dfe963ad7b 100644 --- a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf @@ -388,5 +388,8 @@ languageCode { } objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_store" +# Framework master category validation supported values are Yes/No +master.category.validation.enabled="{{ master_category_validation_enabled | default('Yes') }}" + # This will override all taxonamy service application configs from ansible {{taxonamy_service_config_override|d('')}} From e5ba4c1f2598e9c3fc7968aac24cd023cf33baca Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Fri, 25 Jun 2021 12:14:45 +0530 Subject: [PATCH 219/298] Issue #SB-25312 fix: google sign-in issue fix --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 23db6802fc..c6d6d9be38 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -131,3 +131,6 @@ dock_program_service_url={{ dock_program_service_url }} #Release-3.9.0 dock_questionSet_enable={{ dock_questionSet_enable | default('true') }} + +#release-4.0.0 +sunbird_base_proto={{sunbird_base_proto | default(proto)}} From baaacd057defa7aaca7f97c7f5a44af7fbf20a4c Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Tue, 20 Jul 2021 13:48:33 +0530 Subject: [PATCH 220/298] Issue #SB-25553 feat: opensaber service url added (#2724) * Issue #SB-25553 feat: opensaber service url added * Issue #SB-25553 fix: Added env variable for API whitelist flag --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index c6d6d9be38..428e3eff64 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -134,3 +134,8 @@ dock_questionSet_enable={{ dock_questionSet_enable | default('true') }} #release-4.0.0 sunbird_base_proto={{sunbird_base_proto | default(proto)}} + +#release-4.1.0 +opensaber_service_url={{ sunbird_opensaber_service_url | default('http://opensaber-service:8080') }} +# api whitelisting for sunbird portal +sunbird_enable_api_whitelist={{ sunbird_enable_api_whitelist | default('true') }} From 6faaa131b1e18c68027e6829823b6fb81f103e03 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Tue, 10 Aug 2021 13:12:27 +0530 Subject: [PATCH 221/298] Issue #SB-000 feat: Onboard hierarchy, itemset & assessment read APIs (#2790) * Issue #SB-000 feat: Onboard hierarchy, itemset & assessment read APIs * Issue #SB-000 feat: Onboard hierarchy, itemset & assessment read APIs --- ansible/roles/kong-api/defaults/main.yml | 55 ++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index e4310b9489..bab7705be9 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -82,6 +82,7 @@ object_category_definition_prefix: /object/category/definition dataset_service_prefix: /dataset question_prefix: /question questionset_prefix: /questionset +assessment_prefix: /assessment # Service URLs @@ -6257,3 +6258,57 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + + - name: collectionHierarchyRead + request_path: "{{ content_prefix }}/v1/hierarchy" + upstream_url: "{{ content_service_url }}/content/v3/hierarchy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: assessmentItemSetRead + request_path: "{{ assessment_prefix }}/v1/items/read" + upstream_url: "{{ learning_service_url }}/assessment/v3/items/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: assessmentItemRead + request_path: "{{ itemset_prefix }}/v1/read" + upstream_url: "{{ learning_service_url }}/itemset/v3/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" From e0441c3f95fbedf20079db2417e7d66090c516c8 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Thu, 12 Aug 2021 12:42:47 +0530 Subject: [PATCH 222/298] Env var for #SB-25924 (#2795) * Env var for #SB-25924 * Update sunbird_program.env --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index e730026f49..4381fac04d 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -20,3 +20,4 @@ dock_redis_host={{groups['redis1'][0]}} content_service_url=http://content-service:9000/ sunbird_program_db_pool={{ sunbird_program_db_pool }} learner_service_url=http://player:3000/learner +CORE_INGRESS_GATEWAY_IP: {{ core_private_ingressgateway_ip | d(private_ingressgateway_ip) }} From 0a54e8cb5cee2490dcb895b52fc46cd74cbfe228 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Thu, 12 Aug 2021 17:46:46 +0530 Subject: [PATCH 223/298] Issue #SB-26129 fix: App icon is stored as google drive url link on reading content in dock. --- .../stack-sunbird/templates/content-service_application.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index ad76b679ce..ba926395ae 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -479,6 +479,8 @@ azure_storage_key: "{{ sunbird_public_storage_account_name }}" azure_storage_secret: "{{ sunbird_public_storage_account_key }}" azure_storage_container: "{{ sunbird_content_azure_storage_container }}" +learning_content_drive_apiKey: "{{learning_content_drive_apiKey}}" + kafka { urls : "{{ kafka_urls }}" topic.send.enable : true From cfcfad9c11aae2a5402189a5e88709158573d928 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Thu, 12 Aug 2021 20:40:24 +0530 Subject: [PATCH 224/298] Update sunbird_program.env (#2798) --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 4381fac04d..4e77ae1314 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -20,4 +20,4 @@ dock_redis_host={{groups['redis1'][0]}} content_service_url=http://content-service:9000/ sunbird_program_db_pool={{ sunbird_program_db_pool }} learner_service_url=http://player:3000/learner -CORE_INGRESS_GATEWAY_IP: {{ core_private_ingressgateway_ip | d(private_ingressgateway_ip) }} +CORE_INGRESS_GATEWAY_IP={{ core_private_ingressgateway_ip | d(private_ingressgateway_ip) }} From 9bc99ad513f66766788b775d7c61558d0f6ee0af Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 17 Aug 2021 17:03:53 +0530 Subject: [PATCH 225/298] Issue #SB-26241: resolving kafka error for taxonomy service --- .../stack-sunbird/templates/taxonomy-service_application.conf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf index dfe963ad7b..2340aceecd 100644 --- a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf @@ -370,6 +370,10 @@ azure_storage_container: "{{ sunbird_content_azure_storage_container }}" installation.id: ekstep +kafka { + urls : "{{ kafka_urls }}" +} + channel { default: "in.ekstep" } From f9469c993943f4009464e05ef41466250a4aacae Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 17 Aug 2021 17:35:02 +0530 Subject: [PATCH 226/298] Issue #SB-26241: cassandra connection issue fix --- .../stack-sunbird/templates/content-service_application.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index ba926395ae..7ceb4cc1c9 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -353,6 +353,9 @@ cassandra { } } +# Consistency Level for Multi Node Cassandra cluster +cassandra.lp.consistency.level=QUORUM + collection { keyspace: "{{ cassandra_keyspace_prefix }}_hierarchy_store" cache.enable: true From 216e22f9c99833b631794d75ed0d2fe5e85deb8e Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Thu, 19 Aug 2021 12:49:25 +0530 Subject: [PATCH 227/298] Issue #SB-26264 fix: adding drive app name config --- .../stack-sunbird/templates/content-service_application.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 7ceb4cc1c9..2ce117ad40 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -482,6 +482,7 @@ azure_storage_key: "{{ sunbird_public_storage_account_name }}" azure_storage_secret: "{{ sunbird_public_storage_account_key }}" azure_storage_container: "{{ sunbird_content_azure_storage_container }}" +learning_content_drive_appName: "{{learning_content_drive_appName}}" learning_content_drive_apiKey: "{{learning_content_drive_apiKey}}" kafka { From 4d4bdca636472292cd41d216ff4547d1e9212f47 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Thu, 19 Aug 2021 12:58:09 +0530 Subject: [PATCH 228/298] Issue #SB-26264 fix: adding drive app name config (#2824) --- .../stack-sunbird/templates/content-service_application.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 7ceb4cc1c9..2ce117ad40 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -482,6 +482,7 @@ azure_storage_key: "{{ sunbird_public_storage_account_name }}" azure_storage_secret: "{{ sunbird_public_storage_account_key }}" azure_storage_container: "{{ sunbird_content_azure_storage_container }}" +learning_content_drive_appName: "{{learning_content_drive_appName}}" learning_content_drive_apiKey: "{{learning_content_drive_apiKey}}" kafka { From 07a703b5112fc194c1a1843a25bc0cbac5d21a13 Mon Sep 17 00:00:00 2001 From: Hari-1027 <82861668+Hari-1027@users.noreply.github.com> Date: Fri, 20 Aug 2021 11:20:22 +0530 Subject: [PATCH 229/298] Kafka topic addition in Env file as part of JIRA key-> SB-25750 (#2818) * Adding Kafka topic as part of JIRA key-> SB-25750 Co-authored-by: hari111191 --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 4e77ae1314..aec3aafe7a 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -16,6 +16,9 @@ telemetry_service_endpoint=v1/telemetry telemetry_service_host=http://telemetry-service:9001 sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} +sunbird_question_bulkupload_topic={{ env_name }}.av.question.bulkupload +sunbird_kafka_bulkupload_consumer_group_id={{ env_name }}.av.qstn.bulkupload +sunbird_assessment_service_base_url=http://assessment-service:9000 dock_redis_host={{groups['redis1'][0]}} content_service_url=http://content-service:9000/ sunbird_program_db_pool={{ sunbird_program_db_pool }} From 01777f0b2b4086febbebdf84d5200688c56dc1c4 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Mon, 23 Aug 2021 10:53:15 +0530 Subject: [PATCH 230/298] Issue #SB-26264 fix: reverting app Name variable --- .../stack-sunbird/templates/content-service_application.conf | 1 - 1 file changed, 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 2ce117ad40..7ceb4cc1c9 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -482,7 +482,6 @@ azure_storage_key: "{{ sunbird_public_storage_account_name }}" azure_storage_secret: "{{ sunbird_public_storage_account_key }}" azure_storage_container: "{{ sunbird_content_azure_storage_container }}" -learning_content_drive_appName: "{{learning_content_drive_appName}}" learning_content_drive_apiKey: "{{learning_content_drive_apiKey}}" kafka { From c08807b2a8a9d04eb361095ea051e1fbd2e0b390 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Mon, 23 Aug 2021 11:05:23 +0530 Subject: [PATCH 231/298] Revert "Issue #SB-26264 fix: adding drive app name config (#2824)" (#2831) This reverts commit 4d4bdca636472292cd41d216ff4547d1e9212f47. --- .../stack-sunbird/templates/content-service_application.conf | 1 - 1 file changed, 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 2ce117ad40..7ceb4cc1c9 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -482,7 +482,6 @@ azure_storage_key: "{{ sunbird_public_storage_account_name }}" azure_storage_secret: "{{ sunbird_public_storage_account_key }}" azure_storage_container: "{{ sunbird_content_azure_storage_container }}" -learning_content_drive_appName: "{{learning_content_drive_appName}}" learning_content_drive_apiKey: "{{learning_content_drive_apiKey}}" kafka { From 5ead4829f7a4506f5eebfaea3a9174e4cd45e7ac Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 24 Aug 2021 12:35:02 +0530 Subject: [PATCH 232/298] Issue #SB-26264 fix: downloading multiple google drive files in import api via service account credentials --- .../stack-sunbird/templates/content-service_application.conf | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 7ceb4cc1c9..e3588c9a17 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -482,7 +482,10 @@ azure_storage_key: "{{ sunbird_public_storage_account_name }}" azure_storage_secret: "{{ sunbird_public_storage_account_key }}" azure_storage_container: "{{ sunbird_content_azure_storage_container }}" -learning_content_drive_apiKey: "{{learning_content_drive_apiKey}}" +# Google Drive APIKEY +learning_content_drive_apiKey = "{{ learning_content_drive_apiKey }}" +auto_creator_g_service_acct_cred = "{{auto_creator_gservice_acct_cred}}" +auto_creator.gdrive.application_name=drive-download kafka { urls : "{{ kafka_urls }}" From 13edeec8015cabc45aed086801c6996274c04dbc Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 24 Aug 2021 13:43:53 +0530 Subject: [PATCH 233/298] Issue #SB-26264 fix: downloading multiple google drive files in import api via service account credentials --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index e3588c9a17..a178d7ebea 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -485,7 +485,7 @@ azure_storage_container: "{{ sunbird_content_azure_storage_container }}" # Google Drive APIKEY learning_content_drive_apiKey = "{{ learning_content_drive_apiKey }}" auto_creator_g_service_acct_cred = "{{auto_creator_gservice_acct_cred}}" -auto_creator.gdrive.application_name=drive-download +auto_creator_gdrive_application_name=drive-download kafka { urls : "{{ kafka_urls }}" From c079ae2ce0c4ce125cfd5d0eab47e8de4c5a41ae Mon Sep 17 00:00:00 2001 From: Anil Gupta Date: Tue, 24 Aug 2021 14:01:07 +0530 Subject: [PATCH 234/298] Issue #SB-26328 fix: Added the cloud storage related key for assessment-service. (#2845) --- .../templates/assessment-service_application.conf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 24d4a52630..7b50f0ffe3 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -393,6 +393,11 @@ languageCode { telugu : "te" } +cloud_storage_type: "azure" +azure_storage_key: "{{ sunbird_public_storage_account_name }}" +azure_storage_secret: "{{ sunbird_public_storage_account_key }}" +azure_storage_container: "{{ sunbird_content_azure_storage_container }}" + kafka { urls : "{{ kafka_urls }}" topic.send.enable : true From 72bdacd36807076f6e8eca8e8b3d1d40e22e8678 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 24 Aug 2021 20:45:41 +0530 Subject: [PATCH 235/298] Issue #SB-26264 fix: downloading multiple google drive files in import api via service account credentials (#2851) --- .../stack-sunbird/templates/content-service_application.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index a178d7ebea..c8c5265bcb 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -485,7 +485,7 @@ azure_storage_container: "{{ sunbird_content_azure_storage_container }}" # Google Drive APIKEY learning_content_drive_apiKey = "{{ learning_content_drive_apiKey }}" auto_creator_g_service_acct_cred = "{{auto_creator_gservice_acct_cred}}" -auto_creator_gdrive_application_name=drive-download +auto_creator_gdrive_application_name="drive-download" kafka { urls : "{{ kafka_urls }}" From 86fe61a7432d70c586ce9a0f9acfd6b9340e14ab Mon Sep 17 00:00:00 2001 From: Hari-1027 <82861668+Hari-1027@users.noreply.github.com> Date: Wed, 25 Aug 2021 10:54:51 +0530 Subject: [PATCH 236/298] adding 2 api endpoints as part of JIRA key-> SB-25750 (#2849) Co-authored-by: hari111191 --- ansible/roles/kong-api/defaults/main.yml | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index bab7705be9..0bd3c9b302 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6312,3 +6312,39 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + + - name: questionBulkUpload + uris: "{{ question_prefix }}/v1/bulkUpload" + upstream_url: "{{ program_service_url }}/question/v1/bulkUpload" + strip_uri: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: questionBulkUploadStatus + uris: "{{ question_prefix }}/v1/bulkUploadStatus" + upstream_url: "{{ program_service_url }}/question/v1/bulkUploadStatus" + strip_uri: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" From fae2a3ebd1f00f261a645af2540e0893b1eb0676 Mon Sep 17 00:00:00 2001 From: Hari-1027 <82861668+Hari-1027@users.noreply.github.com> Date: Wed, 25 Aug 2021 14:41:30 +0530 Subject: [PATCH 237/298] adding 2 apis as part of JIRA key-> SB-25750 in corrent kong format (#2853) Co-authored-by: hari111191 --- ansible/roles/kong-api/defaults/main.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 0bd3c9b302..3e4e4c31a8 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6314,9 +6314,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: questionBulkUpload - uris: "{{ question_prefix }}/v1/bulkUpload" + request_path: "{{ question_prefix }}/v1/bulkUpload" upstream_url: "{{ program_service_url }}/question/v1/bulkUpload" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors @@ -6332,9 +6332,9 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: questionBulkUploadStatus - uris: "{{ question_prefix }}/v1/bulkUploadStatus" + request_path: "{{ question_prefix }}/v1/bulkUploadStatus" upstream_url: "{{ program_service_url }}/question/v1/bulkUploadStatus" - strip_uri: true + strip_request_path: true plugins: - name: jwt - name: cors From f3c825e88fd7e2ddab4613820353d1a13a5cff4d Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 31 Aug 2021 11:32:24 +0530 Subject: [PATCH 238/298] Issue #SB-26264 fix: Reverting configuration (#2855) * Issue #SB-26264 fix: downloading multiple google drive files in import api via service account credentials * Issue #SB-26264 fix: Reverting configuration Revrting configuration as the solution has been removed from content-service and has been move to auto-creator job. --- .../stack-sunbird/templates/content-service_application.conf | 2 -- 1 file changed, 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index c8c5265bcb..24bdce1b77 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -484,8 +484,6 @@ azure_storage_container: "{{ sunbird_content_azure_storage_container }}" # Google Drive APIKEY learning_content_drive_apiKey = "{{ learning_content_drive_apiKey }}" -auto_creator_g_service_acct_cred = "{{auto_creator_gservice_acct_cred}}" -auto_creator_gdrive_application_name="drive-download" kafka { urls : "{{ kafka_urls }}" From bd684a7f4d4a04a218993b373c155092101b3080 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Fri, 17 Sep 2021 13:43:51 +0530 Subject: [PATCH 239/298] Issue #SB-26764 fix: SSO issue in VDN (#2894) --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 428e3eff64..d8d01aeca0 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -139,3 +139,6 @@ sunbird_base_proto={{sunbird_base_proto | default(proto)}} opensaber_service_url={{ sunbird_opensaber_service_url | default('http://opensaber-service:8080') }} # api whitelisting for sunbird portal sunbird_enable_api_whitelist={{ sunbird_enable_api_whitelist | default('true') }} + +#release-4.1.0 +crypto_encryption_key_external={{crypto_encryption_key_external|default("")}} From 7beca6f401e224ec974b0dfaa6241451089e42eb Mon Sep 17 00:00:00 2001 From: Anil Gupta Date: Mon, 27 Sep 2021 17:31:50 +0530 Subject: [PATCH 240/298] Issue #SB-26662 chore: MAX_ASSET_FILE_SIZE_LIMIT set to 150MB from 20MB --- .../stack-sunbird/templates/content-service_application.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 24bdce1b77..7204f4db93 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -402,8 +402,8 @@ redis { #--Maximum Content Package File Size Limit in Bytes (2GGB) MAX_CONTENT_PACKAGE_FILE_SIZE_LIMIT=2000000000 -#--Maximum Asset File Size Limit in Bytes (20 MB) -MAX_ASSET_FILE_SIZE_LIMIT=20971520 +#--Maximum Asset File Size Limit in Bytes (150 MB) +MAX_ASSET_FILE_SIZE_LIMIT=157286400 #--No of Retry While File Download Fails RETRY_ASSET_DOWNLOAD_COUNT=1 From 5277b8aa0bac05a2f809d98c4304a025e145037e Mon Sep 17 00:00:00 2001 From: Anil Gupta Date: Mon, 27 Sep 2021 17:35:03 +0530 Subject: [PATCH 241/298] Issue #SB-26662 chore: MAX_ASSET_FILE_SIZE_LIMIT set to 150MB from 20MB (#2923) --- .../stack-sunbird/templates/content-service_application.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 24bdce1b77..7204f4db93 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -402,8 +402,8 @@ redis { #--Maximum Content Package File Size Limit in Bytes (2GGB) MAX_CONTENT_PACKAGE_FILE_SIZE_LIMIT=2000000000 -#--Maximum Asset File Size Limit in Bytes (20 MB) -MAX_ASSET_FILE_SIZE_LIMIT=20971520 +#--Maximum Asset File Size Limit in Bytes (150 MB) +MAX_ASSET_FILE_SIZE_LIMIT=157286400 #--No of Retry While File Download Fails RETRY_ASSET_DOWNLOAD_COUNT=1 From 321faafbfc5bc8e82b7f563ec328026ab4376f2e Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 6 Oct 2021 10:13:55 +0530 Subject: [PATCH 242/298] Issue #SB-26662 feat: file upload size limits (#2934) --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index d8d01aeca0..09abe44e70 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -142,3 +142,7 @@ sunbird_enable_api_whitelist={{ sunbird_enable_api_whitelist | default('true') } #release-4.1.0 crypto_encryption_key_external={{crypto_encryption_key_external|default("")}} + +#release-4.4.0 +dock_default_file_size={{ dock_default_file_size | default(150) }} +dock_default_video_size={{ dock_default_video_size | default(15000) }} From 5795e086773183ff4c7827332623b30d9d9c9dc9 Mon Sep 17 00:00:00 2001 From: Anil Gupta Date: Mon, 11 Oct 2021 12:55:31 +0530 Subject: [PATCH 243/298] Issue #SB-23374 chore: Added the kong-api mapping for asset related APIs. --- ansible/roles/kong-api/defaults/main.yml | 107 +++++++++++++++++++++++ 1 file changed, 107 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 3e4e4c31a8..bde804c907 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5241,6 +5241,113 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + - name: createAsset + request_path: "{{ asset_prefix }}/v1/create" + upstream_url: "{{ content_service_url }}/asset/v4/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: updateAsset + request_path: "{{ asset_prefix }}/v1/update" + upstream_url: "{{ content_service_url }}/asset/v4/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: readAsset + request_path: "{{ asset_prefix }}/v1/read" + upstream_url: "{{ content_service_url }}/asset/v4/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'anonymousContentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: uploadAsset + request_path: "{{ asset_prefix }}/v1/upload" + upstream_url: "{{ content_service_url }}/asset/v4/upload" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: uploadUrlAsset + request_path: "{{ asset_prefix }}/v1/upload/url" + upstream_url: "{{ content_service_url }}/asset/v4/upload/url" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: retireAsset + request_path: "{{ asset_prefix }}/v1/retire" + upstream_url: "{{ content_service_url }}/asset/v4/retire" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" #####Dock API's ##### From d0410d43d4d491c4e00c6b4982d4a78bfc14ba86 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Mon, 11 Oct 2021 15:21:28 +0530 Subject: [PATCH 244/298] Issue SB-26667 chore: Refresh Token config --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 09abe44e70..edece087da 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -15,7 +15,7 @@ sunbird_api_auth_token={{sunbird_api_auth_token}} sunbird_enable_permission_check=1 sunbird_cassandra_urls={{sunbird_cassandra_urls}} sunbird_session_store_type={{sunbird_session_store_type}} -AZURE_STORAGE_ACCOUNT={{sunbird_public_storage_account_name}} +AZURE_STORAGE_ACCOUNT={{sunbird_public_storage_account_name}} AZURE_STORAGE_KEY={{sunbird_public_storage_account_key}} sunbird_dataservice_url={{sunbird_dataservice_url}} sunbird_telemetry_packet_size={{sunbird_telemetry_packet_size}} @@ -146,3 +146,5 @@ crypto_encryption_key_external={{crypto_encryption_key_external|default("")}} #release-4.4.0 dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} +sunbird_kong_refresh_token_api= {{ dock_sunbird_kong_refresh_token_api }} +use_sunbird_kong_token= {{ dock_use_sunbird_kong_token | default('true') }} From fdba4ecf309f401cab5f9905367924e5818d8b9e Mon Sep 17 00:00:00 2001 From: Anil Gupta Date: Mon, 11 Oct 2021 15:52:21 +0530 Subject: [PATCH 245/298] Issue #SB-23374 chore: Added the kong-api mapping for asset related APIs. --- ansible/roles/kong-api/defaults/main.yml | 213 ++++++++++++----------- 1 file changed, 107 insertions(+), 106 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index bde804c907..c49e97cda6 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -80,6 +80,7 @@ auth_service_prefix: /auth object_category_prefix: /object/category object_category_definition_prefix: /object/category/definition dataset_service_prefix: /dataset +asset_prefix: /asset question_prefix: /question questionset_prefix: /questionset assessment_prefix: /assessment @@ -5242,112 +5243,112 @@ kong_apis: config.allowed_payload_size: "{{ small_request_size_limit }}" - name: createAsset - request_path: "{{ asset_prefix }}/v1/create" - upstream_url: "{{ content_service_url }}/asset/v4/create" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentCreate' - - 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: "{{ medium_request_size_limit }}" - - - name: updateAsset - request_path: "{{ asset_prefix }}/v1/update" - upstream_url: "{{ content_service_url }}/asset/v4/update" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentUpdate' - - 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: "{{ medium_request_size_limit }}" - - - name: readAsset - request_path: "{{ asset_prefix }}/v1/read" - upstream_url: "{{ content_service_url }}/asset/v4/read" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'anonymousContentAccess' - - 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: "{{ medium_request_size_limit }}" - - - name: uploadAsset - request_path: "{{ asset_prefix }}/v1/upload" - upstream_url: "{{ content_service_url }}/asset/v4/upload" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentCreate' - - 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: "{{ medium_request_size_limit }}" - - - name: uploadUrlAsset - request_path: "{{ asset_prefix }}/v1/upload/url" - upstream_url: "{{ content_service_url }}/asset/v4/upload/url" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentCreate' - - 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: "{{ medium_request_size_limit }}" - - - name: retireAsset - request_path: "{{ asset_prefix }}/v1/retire" - upstream_url: "{{ content_service_url }}/asset/v4/retire" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentAdmin' - - 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: "{{ medium_request_size_limit }}" + request_path: "{{ asset_prefix }}/v1/create" + upstream_url: "{{ content_service_url }}/asset/v4/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: updateAsset + request_path: "{{ asset_prefix }}/v1/update" + upstream_url: "{{ content_service_url }}/asset/v4/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: readAsset + request_path: "{{ asset_prefix }}/v1/read" + upstream_url: "{{ content_service_url }}/asset/v4/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'anonymousContentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: uploadAsset + request_path: "{{ asset_prefix }}/v1/upload" + upstream_url: "{{ content_service_url }}/asset/v4/upload" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: uploadUrlAsset + request_path: "{{ asset_prefix }}/v1/upload/url" + upstream_url: "{{ content_service_url }}/asset/v4/upload/url" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: retireAsset + request_path: "{{ asset_prefix }}/v1/retire" + upstream_url: "{{ content_service_url }}/asset/v4/retire" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" #####Dock API's ##### From c5708c759996704b2577a42a2a3e6aa76c9d0d34 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Mon, 11 Oct 2021 15:52:31 +0530 Subject: [PATCH 246/298] Issue SB-26667 chore: Refresh Token config --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index edece087da..50c28a88b8 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -146,5 +146,5 @@ crypto_encryption_key_external={{crypto_encryption_key_external|default("")}} #release-4.4.0 dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} -sunbird_kong_refresh_token_api= {{ dock_sunbird_kong_refresh_token_api }} -use_sunbird_kong_token= {{ dock_use_sunbird_kong_token | default('true') }} +sunbird_kong_refresh_token_api={{ dock_sunbird_kong_refresh_token_api }} +use_sunbird_kong_token={{ dock_use_sunbird_kong_token | default('true') }} From 378312d884e82f62360c98cc81de4608b8aa1173 Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Mon, 11 Oct 2021 15:53:47 +0530 Subject: [PATCH 247/298] Issue SB-26667 chore: Refresh Token config --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 50c28a88b8..6a8437a5a8 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -146,5 +146,5 @@ crypto_encryption_key_external={{crypto_encryption_key_external|default("")}} #release-4.4.0 dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} -sunbird_kong_refresh_token_api={{ dock_sunbird_kong_refresh_token_api }} -use_sunbird_kong_token={{ dock_use_sunbird_kong_token | default('true') }} +sunbird_kong_refresh_token_api={{dock_sunbird_kong_refresh_token_api}} +use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} From 7e8c3dcddf4a35718babde42c10c04e4ffe8f721 Mon Sep 17 00:00:00 2001 From: Anil Gupta Date: Mon, 11 Oct 2021 16:00:56 +0530 Subject: [PATCH 248/298] Issue #SB-23374 chore: Added the kong-api mapping for asset related APIs. --- ansible/roles/kong-api/defaults/main.yml | 144 +++++++++++------------ 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index c49e97cda6..e328832cea 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5247,108 +5247,108 @@ kong_apis: upstream_url: "{{ content_service_url }}/asset/v4/create" strip_request_path: true plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentCreate' - - 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: "{{ medium_request_size_limit }}" + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" - name: updateAsset request_path: "{{ asset_prefix }}/v1/update" upstream_url: "{{ content_service_url }}/asset/v4/update" strip_request_path: true plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentUpdate' - - 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: "{{ medium_request_size_limit }}" + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" - name: readAsset request_path: "{{ asset_prefix }}/v1/read" upstream_url: "{{ content_service_url }}/asset/v4/read" strip_request_path: true plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'anonymousContentAccess' - - 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: "{{ medium_request_size_limit }}" + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'anonymousContentAccess' + - 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: "{{ medium_request_size_limit }}" - name: uploadAsset request_path: "{{ asset_prefix }}/v1/upload" upstream_url: "{{ content_service_url }}/asset/v4/upload" strip_request_path: true plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentCreate' - - 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: "{{ medium_request_size_limit }}" + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" - name: uploadUrlAsset request_path: "{{ asset_prefix }}/v1/upload/url" upstream_url: "{{ content_service_url }}/asset/v4/upload/url" strip_request_path: true plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentCreate' - - 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: "{{ medium_request_size_limit }}" + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" - name: retireAsset request_path: "{{ asset_prefix }}/v1/retire" upstream_url: "{{ content_service_url }}/asset/v4/retire" strip_request_path: true plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentAdmin' - - 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: "{{ medium_request_size_limit }}" + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" #####Dock API's ##### From 751a19863b076ddca10ddba576d84473ddc7522c Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Tue, 12 Oct 2021 10:42:35 +0530 Subject: [PATCH 249/298] Issue SB-26667 chore: Refresh Token config --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 6a8437a5a8..53629dee3e 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -146,5 +146,5 @@ crypto_encryption_key_external={{crypto_encryption_key_external|default("")}} #release-4.4.0 dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} -sunbird_kong_refresh_token_api={{dock_sunbird_kong_refresh_token_api}} +sunbird_kong_refresh_token_api="https://{{sunbird_domain_name}}/auth/v1/refresh/token" use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} From 9255df0c3ab1711140b157efd95038cf661a352c Mon Sep 17 00:00:00 2001 From: Amol Ghatol Date: Wed, 13 Oct 2021 10:23:37 +0530 Subject: [PATCH 250/298] Issue SB-26667 chore: Refresh Token config --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 53629dee3e..6435d24d17 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -146,5 +146,5 @@ crypto_encryption_key_external={{crypto_encryption_key_external|default("")}} #release-4.4.0 dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} -sunbird_kong_refresh_token_api="https://{{sunbird_domain_name}}/auth/v1/refresh/token" +sunbird_kong_refresh_token_api=https://{{sunbird_domain_name}}/auth/v1/refresh/token use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} From a49b05f2ad8e96ac5042db5b3ba5f0e5f3cd807e Mon Sep 17 00:00:00 2001 From: Shiva Rakshith <80666319+shiva-rakshith@users.noreply.github.com> Date: Wed, 20 Oct 2021 11:35:37 +0530 Subject: [PATCH 251/298] Added questionReject API (#2962) --- ansible/roles/kong-api/defaults/main.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index e328832cea..2225bcd902 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6173,6 +6173,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionReject + request_path: "{{ question_prefix }}/v1/reject" + upstream_url: "{{ assessment_service_url }}/question/v4/reject" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + - name: questionSetCreate request_path: "{{ questionset_prefix }}/v1/create" upstream_url: "{{ assessment_service_url }}/questionset/v4/create" From 5aa0247919fc8cd2d05ce3dc95943f248ed7ef7d Mon Sep 17 00:00:00 2001 From: Shiva Rakshith <80666319+shiva-rakshith@users.noreply.github.com> Date: Wed, 20 Oct 2021 12:22:57 +0530 Subject: [PATCH 252/298] SB-25735 - sourcing - Added kong-api entries for private read api's of content, collection, question, questionset and search (#2961) --- ansible/roles/kong-api/defaults/main.yml | 91 ++++++++++++++++++++++++ 1 file changed, 91 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 2225bcd902..16638f3507 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -43,6 +43,7 @@ learner_private_route_prefix: /private private_content_prefix: /private/content device_prefix: /v3/device content_prefix: /content +collection_prefix: /collection tickets_prefix: /tickets course_service_prefix: /course itemset_prefix: /itemset @@ -411,6 +412,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + - name: compositePrivateSearch + request_path: "{{ composite_service_prefix }}/v1/private/search" + upstream_url: "{{ knowledge_mw_service_url }}/v3/private/search" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: contentBadgeLink request_path: "{{ badge_service_prefix }}/v1/content/link" upstream_url: "{{ lms_service_url }}/v1/content/link" @@ -2809,6 +2828,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" + - name: contentPrivateRead + request_path: "{{ content_prefix }}/v1/private/read" + upstream_url: "{{ content_service_url }}/content/v4/private/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: readContentState request_path: "{{ course_service_prefix }}/v1/content/state/read" upstream_url: "{{ lms_service_url }}/v1/content/state/read" @@ -6087,6 +6124,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionPrivateRead + request_path: "{{ question_prefix }}/v1/private/read" + upstream_url: "{{ assessment_service_url }}/question/v4/private/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + - name: questionList request_path: "{{ question_prefix }}/v1/list" upstream_url: "{{ assessment_service_url }}/question/v4/list" @@ -6223,6 +6278,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionSetPrivateRead + request_path: "{{ questionset_prefix }}/v1/private/read" + upstream_url: "{{ assessment_service_url }}/questionset/v4/private/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + - name: questionSetUpdate request_path: "{{ questionset_prefix }}/v1/update" upstream_url: "{{ assessment_service_url }}/questionset/v4/update" @@ -6403,6 +6476,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: collectionPrivateRead + request_path: "{{ collection_prefix }}/v1/private/read" + upstream_url: "{{ content_service_url }}/collection/v4/private/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + - name: assessmentItemSetRead request_path: "{{ assessment_prefix }}/v1/items/read" upstream_url: "{{ learning_service_url }}/assessment/v3/items/read" From 6f108d9e8c7911c2389790cfd71e5f1ace96eb11 Mon Sep 17 00:00:00 2001 From: Vaibhav Bhuva Date: Wed, 10 Nov 2021 14:43:32 +0530 Subject: [PATCH 253/298] Issue #SB-23374 feat: added sunbird_google_oauth_client_email and sunbird_google_oauth_private_key --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index aec3aafe7a..a0808ae9d4 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -24,3 +24,5 @@ content_service_url=http://content-service:9000/ sunbird_program_db_pool={{ sunbird_program_db_pool }} learner_service_url=http://player:3000/learner CORE_INGRESS_GATEWAY_IP={{ core_private_ingressgateway_ip | d(private_ingressgateway_ip) }} +sunbird_google_oauth_client_email={{ sunbird_google_oauth_client_email }} +sunbird_google_oauth_private_key={{ sunbird_google_oauth_private_key }} From 151cbaf0dc622280f7693841c9f6644e4844e53e Mon Sep 17 00:00:00 2001 From: Vaibhav Bhuva Date: Fri, 12 Nov 2021 17:32:15 +0530 Subject: [PATCH 254/298] Issue #SB-23374 fix: creating Kafka topic for QuML bulk upload as part of JIRA key-> SB-23374 --- ansible/roles/setup-kafka/defaults/main.yml | 8 ++++++++ ansible/roles/setup-kafka/tasks/main.yml | 9 +++++++++ .../roles/stack-sunbird/templates/sunbird_program.env | 1 + 3 files changed, 18 insertions(+) diff --git a/ansible/roles/setup-kafka/defaults/main.yml b/ansible/roles/setup-kafka/defaults/main.yml index 8a5a797bca..4772ec1bb8 100644 --- a/ansible/roles/setup-kafka/defaults/main.yml +++ b/ansible/roles/setup-kafka/defaults/main.yml @@ -1,5 +1,7 @@ env: dev +av_kafka_topic_create: false + processing_kafka_overriden_topics: - name: lms.audit.events retention_time: 172800000 @@ -28,3 +30,9 @@ processing_kafka_topics: num_of_partitions: 1 replication_factor: 1 + +av_service_topics: + - name: av.question.bulkupload + retention_time: 172800000 + replication_factor: 1 + num_of_partitions: 1 diff --git a/ansible/roles/setup-kafka/tasks/main.yml b/ansible/roles/setup-kafka/tasks/main.yml index b5811b969b..f450e0b9b4 100644 --- a/ansible/roles/setup-kafka/tasks/main.yml +++ b/ansible/roles/setup-kafka/tasks/main.yml @@ -12,3 +12,12 @@ when: kafka_id=="1" and item.retention_time is defined tags: - processing-kafka + + +name: create topics + command: /opt/kafka/bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic {{env_name}}.{{item.name}} --partitions {{ item.num_of_partitions }} --replication-factor {{ item.replication_factor }} + with_items: "{{av_service_topics}}" + ignore_errors: true + when: kafka_id=="1" and av_kafka_topic_create + tags: + - processing-kafka \ No newline at end of file diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index a0808ae9d4..483915f3cb 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -15,6 +15,7 @@ opensaber_service_url={{ sunbird_opensaber_service_url}} telemetry_service_endpoint=v1/telemetry telemetry_service_host=http://telemetry-service:9001 sunbird_kafka_host={{groups['sunbird-processing-cluster-kafka']|join(':9092,')}}:9092 +dock_kafka_host={{groups['processing-cluster-kafka']|join(':9092,')}}:9092 sunbird_auto_creation_topic={{ sunbird_auto_creation_topic }} sunbird_question_bulkupload_topic={{ env_name }}.av.question.bulkupload sunbird_kafka_bulkupload_consumer_group_id={{ env_name }}.av.qstn.bulkupload From b952e7b230913a1a1b5f86856540be7288548425 Mon Sep 17 00:00:00 2001 From: Vaibhav Bhuva Date: Fri, 12 Nov 2021 18:49:59 +0530 Subject: [PATCH 255/298] Issue #SB-23374 fix: creating Kafka topic for QuML bulk upload as part of JIRA key-> SB-23374 --- ansible/roles/setup-kafka/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/setup-kafka/tasks/main.yml b/ansible/roles/setup-kafka/tasks/main.yml index f450e0b9b4..78868bcce4 100644 --- a/ansible/roles/setup-kafka/tasks/main.yml +++ b/ansible/roles/setup-kafka/tasks/main.yml @@ -14,7 +14,7 @@ - processing-kafka -name: create topics +- name: create topics command: /opt/kafka/bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic {{env_name}}.{{item.name}} --partitions {{ item.num_of_partitions }} --replication-factor {{ item.replication_factor }} with_items: "{{av_service_topics}}" ignore_errors: true From ee2b38575fbf21c162b61e35855cc72c30575ee2 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Thu, 9 Dec 2021 10:40:47 +0530 Subject: [PATCH 256/298] Issue #SB-25501 feat: SB-25499, SB-25500, SB-25501 Content, Collection, Asset v4 APIs on-boarding (#3044) Co-authored-by: Jayaprakash8887 --- ansible/roles/kong-api/defaults/main.yml | 562 +++++++++++++++++++++++ 1 file changed, 562 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 16638f3507..e24a926bf2 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -5369,6 +5369,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: copyAsset + request_path: "{{ asset_prefix }}/v1/copy" + upstream_url: "{{ content_service_url }}/asset/v4/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + - name: retireAsset request_path: "{{ asset_prefix }}/v1/retire" upstream_url: "{{ content_service_url }}/asset/v4/retire" @@ -6565,3 +6583,547 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + +#SB-25501 Content v4 APIs on-boarding + + - name: createContentV2 + request_path: "{{ content_prefix }}/v2/create" + upstream_url: "{{ content_service_url }}/content/v4/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: updateContentV2 + request_path: "{{ content_prefix }}/v2/update" + upstream_url: "{{ content_service_url }}/content/v4/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: readContentV2 + request_path: "{{ content_prefix }}/v2/read" + upstream_url: "{{ content_service_url }}/content/v4/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + - 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: uploadUrlContentV2 + request_path: "{{ content_prefix }}/v2/upload/url" + upstream_url: "{{ content_service_url }}/content/v4/upload/url" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: uploadContentV2 + request_path: "{{ content_prefix }}/v2/upload" + upstream_url: "{{ content_service_url }}/content/v4/upload" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: copyContentV2 + request_path: "{{ content_prefix }}/v2/copy" + upstream_url: "{{ content_service_url }}/content/v4/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: dialcodeLinkContentV2 + request_path: "{{ content_prefix }}/v2/dialcode/link" + upstream_url: "{{ content_service_url }}/content/v4/dialcode/link" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: importContentV2 + request_path: "{{ content_prefix }}/v2/import" + upstream_url: "{{ content_service_url }}/content/v4/import" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: flagContentV2 + request_path: "{{ content_prefix }}/v2/flag" + upstream_url: "{{ content_service_url }}/content/v4/flag" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: acceptFlagContentV2 + request_path: "{{ content_prefix }}/v2/flag/accept" + upstream_url: "{{ content_service_url }}/content/v4/flag/accept" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: discardContentV2 + request_path: "{{ content_prefix }}/v2/discard" + upstream_url: "{{ content_service_url }}/content/v4/discard" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: retireContentV2 + request_path: "{{ content_prefix }}/v2/retire" + upstream_url: "{{ content_service_url }}/content/v4/retire" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: reviewContentV2 + request_path: "{{ content_prefix }}/v2/review" + upstream_url: "{{ content_service_url }}/content/v4/review" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: rejectContentV2 + request_path: "{{ content_prefix }}/v2/reject" + upstream_url: "{{ content_service_url }}/content/v4/reject" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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 }}" + +#SB-25499 Collection v4 APIs on-boarding + + - name: collectionCreate + request_path: "{{ collection_prefix }}/v1/create" + upstream_url: "{{ content_service_url }}/collection/v4/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionRead + request_path: "{{ collection_prefix }}/v1/read" + upstream_url: "{{ content_service_url }}/collection/v4/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'anonymousContentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionUpdate + request_path: "{{ collection_prefix }}/v1/update" + upstream_url: "{{ content_service_url }}/collection/v4/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionFlag + request_path: "{{ collection_prefix }}/v1/flag" + upstream_url: "{{ content_service_url }}/collection/v4/flag" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionDiscard + request_path: "{{ collection_prefix }}/v1/discard" + upstream_url: "{{ content_service_url }}/collection/v4/discard" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionRetire + request_path: "{{ collection_prefix }}/v1/retire" + upstream_url: "{{ content_service_url }}/collection/v4/retire" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionHierarchyAdd + request_path: "{{ collection_prefix }}/v1/hierarchy/add" + upstream_url: "{{ content_service_url }}/collection/v4/hierarchy/add" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionHierarchyRemove + request_path: "{{ collection_prefix }}/v1/hierarchy/remove" + upstream_url: "{{ content_service_url }}/collection/v4/hierarchy/remove" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionHierarchyUpdate + request_path: "{{ collection_prefix }}/v1/hierarchy/update" + upstream_url: "{{ content_service_url }}/collection/v4/hierarchy/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionHierarchyRead + request_path: "{{ collection_prefix }}/v1/hierarchy" + upstream_url: "{{ content_service_url }}/collection/v4/hierarchy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'anonymousContentAccess' + - 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: "{{ medium_request_size_limit }}" + + + - name: collectionDialcodeLink + request_path: "{{ collection_prefix }}/v1/dialcode/link" + upstream_url: "{{ content_service_url }}/collection/v4/dialcode/link" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentUpdate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionCopy + request_path: "{{ collection_prefix }}/v1/copy" + upstream_url: "{{ content_service_url }}/collection/v4/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionImport + request_path: "{{ collection_prefix }}/v1/import" + upstream_url: "{{ content_service_url }}/collection/v4/import" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionExport + request_path: "{{ collection_prefix }}/v1/export" + upstream_url: "{{ content_service_url }}/collection/v4/export" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAccess' + - 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: "{{ medium_request_size_limit }}" + + - name: collectionReject + request_path: "{{ collection_prefix }}/v1/reject" + upstream_url: "{{ content_service_url }}/collection/v4/reject" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: acceptCollectionFlag + request_path: "{{ collection_prefix }}/v1/flag/accept" + upstream_url: "{{ content_service_url }}/collection/v4/flag/accept" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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 }}" \ No newline at end of file From c303f1f6fb36fa0006ed982d462d0e04d2a2e36a Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Thu, 9 Dec 2021 11:49:55 +0530 Subject: [PATCH 257/298] Issue #SB-25501 feat: SB-25499, SB-25500, SB-25501 Content, Collection, Asset v4 APIs on-boarding (#3047) * Issue #SB-25501 feat: SB-25499, SB-25500, SB-25501 Content, Collection, Asset v4 APIs on-boarding * Issue #SB-25501 feat: SB-25499, SB-25500, SB-25501 Content, Collection, Asset v4 APIs on-boarding * Issue #SB-25501 feat: SB-25499, SB-25500, SB-25501 Content, Collection, Asset v4 APIs on-boarding Co-authored-by: Jayaprakash8887 --- ansible/roles/kong-api/defaults/main.yml | 32 ++++++++++++------------ 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index e24a926bf2..bb39acf6b3 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -7092,22 +7092,22 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - name: collectionReject - request_path: "{{ collection_prefix }}/v1/reject" - upstream_url: "{{ content_service_url }}/collection/v4/reject" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentAdmin' - - 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 }}" + request_path: "{{ collection_prefix }}/v1/reject" + upstream_url: "{{ content_service_url }}/collection/v4/reject" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: acceptCollectionFlag From 34b91892587112ca835528b006bdb650e1909f25 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Thu, 9 Dec 2021 12:46:52 +0530 Subject: [PATCH 258/298] Issue #SB-25501 feat: SB-25499, SB-25500, SB-25501 Content, Collection, Asset v4 APIs on-boarding (#3052) * Issue #SB-25501 feat: SB-25499, SB-25500, SB-25501 Content, Collection, Asset v4 APIs on-boarding Co-authored-by: Jayaprakash8887 --- ansible/roles/kong-api/defaults/main.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index bb39acf6b3..d420c216d4 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6627,10 +6627,8 @@ kong_apis: upstream_url: "{{ content_service_url }}/content/v4/read" strip_request_path: true plugins: - - name: jwt - name: cors - "{{ statsd_pulgin }}" - - name: acl - name: rate-limiting config.policy: local config.hour: "{{ medium_rate_limit_per_hour }}" From 1132d8f50995280aa2e1d901dd8575265f10cbdf Mon Sep 17 00:00:00 2001 From: Keshav Prasad Date: Wed, 15 Dec 2021 12:16:38 +0530 Subject: [PATCH 259/298] Release 4.4.1 vdn (#3078) * fix: adding log4j env property injection (#3070) * fix: add _JAVA_OPTIONS (#3073) * fix: add _JAVA_OPTIONS, cleanup of charts (#3074) --- .../helm_charts/core/adminutils/Chart.yaml | 5 -- .../core/adminutils/templates/configmap.yaml | 22 ----- .../core/adminutils/templates/deployment.yaml | 68 --------------- .../helm_charts/core/adminutils/values.j2 | 53 ------------ .../helm_charts/core/analytics/Chart.yaml | 5 -- .../core/analytics/templates/deployment.yaml | 78 ----------------- .../helm_charts/core/analytics/values.j2 | 32 ------- .../core/assessment/templates/deployment.yaml | 2 + kubernetes/helm_charts/core/badger/Chart.yaml | 5 -- .../core/badger/templates/deployment.yaml | 63 -------------- kubernetes/helm_charts/core/badger/values.j2 | 25 ------ .../core/cert/templates/deployment.yaml | 2 + .../certregistry/templates/deployment.yaml | 2 + .../core/content/templates/deployment.yaml | 2 + kubernetes/helm_charts/core/groups/Chart.yaml | 5 -- .../core/groups/templates/configmap.yaml | 11 --- .../core/groups/templates/deployment.yaml | 72 ---------------- kubernetes/helm_charts/core/groups/values.j2 | 31 ------- .../helm_charts/core/learner/.helmignore | 22 ----- .../helm_charts/core/learner/Chart.yaml | 5 -- .../core/learner/templates/_helpers.tpl | 45 ---------- .../core/learner/templates/configmap.yaml | 11 --- .../core/learner/templates/deployment.yaml | 80 ----------------- kubernetes/helm_charts/core/learner/values.j2 | 31 ------- kubernetes/helm_charts/core/lms/Chart.yaml | 5 -- .../core/lms/templates/configmap.yaml | 11 --- .../core/lms/templates/deployment.yaml | 85 ------------------- kubernetes/helm_charts/core/lms/values.j2 | 31 ------- .../core/mvc/templates/deployment.yaml | 3 + .../helm_charts/core/nodebb/.helmignore | 22 ----- kubernetes/helm_charts/core/nodebb/Chart.yaml | 5 -- .../core/nodebb/templates/_helpers.tpl | 45 ---------- .../core/nodebb/templates/configmap.yaml | 1 - .../core/nodebb/templates/deployment.yaml | 85 ------------------- kubernetes/helm_charts/core/nodebb/values.j2 | 27 ------ .../helm_charts/core/notification/Chart.yaml | 5 -- .../notification/templates/configmap.yaml | 10 --- .../notification/templates/deployment.yaml | 59 ------------- .../helm_charts/core/notification/values.j2 | 65 -------------- .../core/opensaber/templates/deployment.yaml | 3 + kubernetes/helm_charts/core/report/Chart.yaml | 5 -- .../core/report/templates/_helpers.tpl | 45 ---------- .../core/report/templates/configmap.yaml | 10 --- .../core/report/templates/deployment.yaml | 59 ------------- kubernetes/helm_charts/core/report/values.j2 | 26 ------ .../core/search/templates/deployment.yaml | 2 + .../core/taxonomy/templates/deployment.yaml | 2 + .../core/telemetry-dp-logstash/Chart.yaml | 5 -- .../templates/deployment.yaml | 66 -------------- .../core/telemetry-dp-logstash/values.j2 | 23 ----- .../templates/deployment.yaml | 3 + .../core/telemetrydplogstash/values.j2 | 23 ----- .../helm_charts/core/userorg/Chart.yaml | 5 -- .../core/userorg/templates/configmap.yaml | 10 --- .../core/userorg/templates/deployment.yaml | 59 ------------- kubernetes/helm_charts/core/userorg/values.j2 | 25 ------ 56 files changed, 21 insertions(+), 1486 deletions(-) delete mode 100644 kubernetes/helm_charts/core/adminutils/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/adminutils/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/adminutils/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/adminutils/values.j2 delete mode 100644 kubernetes/helm_charts/core/analytics/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/analytics/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/analytics/values.j2 delete mode 100755 kubernetes/helm_charts/core/badger/Chart.yaml delete mode 100755 kubernetes/helm_charts/core/badger/templates/deployment.yaml delete mode 100755 kubernetes/helm_charts/core/badger/values.j2 delete mode 100644 kubernetes/helm_charts/core/groups/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/groups/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/groups/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/groups/values.j2 delete mode 100644 kubernetes/helm_charts/core/learner/.helmignore delete mode 100644 kubernetes/helm_charts/core/learner/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/learner/templates/_helpers.tpl delete mode 100644 kubernetes/helm_charts/core/learner/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/learner/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/learner/values.j2 delete mode 100644 kubernetes/helm_charts/core/lms/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/lms/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/lms/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/lms/values.j2 delete mode 100644 kubernetes/helm_charts/core/nodebb/.helmignore delete mode 100644 kubernetes/helm_charts/core/nodebb/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/nodebb/templates/_helpers.tpl delete mode 100644 kubernetes/helm_charts/core/nodebb/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/nodebb/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/nodebb/values.j2 delete mode 100644 kubernetes/helm_charts/core/notification/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/notification/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/notification/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/notification/values.j2 delete mode 100644 kubernetes/helm_charts/core/report/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/report/templates/_helpers.tpl delete mode 100644 kubernetes/helm_charts/core/report/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/report/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/report/values.j2 delete mode 100644 kubernetes/helm_charts/core/telemetry-dp-logstash/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/telemetry-dp-logstash/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/telemetry-dp-logstash/values.j2 delete mode 100644 kubernetes/helm_charts/core/telemetrydplogstash/values.j2 delete mode 100644 kubernetes/helm_charts/core/userorg/Chart.yaml delete mode 100644 kubernetes/helm_charts/core/userorg/templates/configmap.yaml delete mode 100644 kubernetes/helm_charts/core/userorg/templates/deployment.yaml delete mode 100644 kubernetes/helm_charts/core/userorg/values.j2 diff --git a/kubernetes/helm_charts/core/adminutils/Chart.yaml b/kubernetes/helm_charts/core/adminutils/Chart.yaml deleted file mode 100644 index 29e0228e6a..0000000000 --- a/kubernetes/helm_charts/core/adminutils/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: adminutils -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/adminutils/templates/configmap.yaml b/kubernetes/helm_charts/core/adminutils/templates/configmap.yaml deleted file mode 100644 index 0d2fd83ac2..0000000000 --- a/kubernetes/helm_charts/core/adminutils/templates/configmap.yaml +++ /dev/null @@ -1,22 +0,0 @@ -apiVersion: v1 -data: - {{- range $key, $val := .Values.adminutilenv }} - {{ $key }}: {{ $val }} - {{- end }} -kind: ConfigMap -metadata: - creationTimestamp: null - name: {{ .Chart.Name }}-config - namespace: {{ .Values.namespace }} - ---- -{{- $keys := .Files.Glob "keys/*" }} -{{ if $keys }} -apiVersion: v1 -kind: Secret -metadata: - name: private-keys -type: Opaque -data: -{{ (.Files.Glob "keys/*").AsSecrets | indent 2 }} -{{ end }} diff --git a/kubernetes/helm_charts/core/adminutils/templates/deployment.yaml b/kubernetes/helm_charts/core/adminutils/templates/deployment.yaml deleted file mode 100644 index ddda161393..0000000000 --- a/kubernetes/helm_charts/core/adminutils/templates/deployment.yaml +++ /dev/null @@ -1,68 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} -{{- $keys := .Files.Glob "keys/*" }} -{{- if $keys }} - volumeMounts: - - mountPath: /keys/ - name: rsa-keys - volumes: - - name: rsa-keys - secret: - secretName: private-keys -{{ end }} - ---- -apiVersion: v1 -kind: Service -metadata: - name: adminutil - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/adminutils/values.j2 b/kubernetes/helm_charts/core/adminutils/values.j2 deleted file mode 100644 index 9f0b00bc8b..0000000000 --- a/kubernetes/helm_charts/core/adminutils/values.j2 +++ /dev/null @@ -1,53 +0,0 @@ -### Default variable file for cert-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -replicaCount: {{adminutil_replicacount|default(1)}} -repository: {{adminutil_repository|default('adminutil')}} -image_tag: {{image_tag}} -resources: - requests: - cpu: {{adminutil_cpu_req|default('100m')}} - memory: {{adminutil_mem_req|default('100Mi')}} - limits: - cpu: {{adminutil_cpu_limit|default('1000m')}} - memory: {{adminutil_memory_limit|default('1024Mi')}} -network: - port: 4000 - targetport: 4000 -strategy: - type: RollingUpdate - maxsurge: {{ adminutil_maxsurge|default('25%') }} - maxunavailable: {{ adminutil_maxunavailable|default('25%') }} - -{{ adminutils_liveness_readiness | to_nice_yaml }} - -adminutilenv: - JAVA_OPTS: "-Xms{{adminutil__initial_heap_size|default('256m')}} -Xmx{{adminutil__max_heap_size|default('256m')}}" - SERVER_PORT: '"{{adminutil__port|default('4000')}}"' - AM_ADMIN_API_ENDPOINT: "http://kong.{{namespace}}.svc.cluster.local:8001" - SPRING_PROFILES_ACTIVE: {{adminutil__spring_profile|default('production')}} - DEFAULT_CONSUMER_GROUP: {{adminutil__default_consumer_group|default('contentUser')}} - ENDPOINTS_HEALTH_ID: {{adminutil__health_id|default('apihealth')}} - ENDPOINTS_HEALTH_SENSITIVE: '"{{adminutil__is_health_sensitive|default('false')}}"' - ENDPOINTS_METRICS_ID: {{adminutil__metrics_id|default('metrics')}} - ENDPOINTS_METRICS_SENSITIVE: '"{{adminutil__is_metrics_sensitive|default('false')}}"' - AM_ADMIN_API_KEYS: "device,access" - AM_ADMIN_API_DEVICE_BASEPATH: "/keys/" - AM_ADMIN_API_DEVICE_KEYPREFIX: '"{{ adminutil__device_keyprefix }}"' - AM_ADMIN_API_DEVICE_KEYSTART: '"{{ adminutil__device_keystart }}"' - AM_ADMIN_API_DEVICE_KEYCOUNT: '"{{ adminutil__device_keycount }}"' - AM_ADMIN_API_ACCESS_BASEPATH: "/keys/" - AM_ADMIN_API_ACCESS_KEYPREFIX: '"{{ adminutil__access_keyprefix }}"' - AM_ADMIN_API_ACCESS_KEYSTART: '"{{ adminutil__access_keystart }}"' - AM_ADMIN_API_ACCESS_KEYCOUNT: '"{{ adminutil__access_keycount }}"' - REFRESH_TOKEN_PUBLIC_BASEPATH: "/keys/" - REFRESH_TOKEN_PUBLIC_KEYPREFIX: '"{{ adminutil_refresh_token_public_key_prefix }}"' - REFRESH_TOKEN_KID: '"{{ adminutil_refresh_token_public_key_kid }}"' - REFRESH_TOKEN_DOMAIN: '"{{ keycloak_auth_server_url }}/realms/{{ keycloak_realm }}"' - REFRESH_TOKEN_PRELOAD: '"{{ adminutil_refresh_token_preload }}"' - ACCESS_TOKEN_VALIDITY: '"{{ adminutil_access_token_validity }}"' - REFRESH_TOKEN_OFFLINE_VALIDITY: '"{{ adminutil_refresh_token_offline_validity }}"' - REFRESH_TOKEN_LOG_OLDER_THAN: '"{{ adminutil_refresh_token_log_older_than }}"' diff --git a/kubernetes/helm_charts/core/analytics/Chart.yaml b/kubernetes/helm_charts/core/analytics/Chart.yaml deleted file mode 100644 index fad12b63fe..0000000000 --- a/kubernetes/helm_charts/core/analytics/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: analytics -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/analytics/templates/deployment.yaml b/kubernetes/helm_charts/core/analytics/templates/deployment.yaml deleted file mode 100644 index 54c4f9ab1c..0000000000 --- a/kubernetes/helm_charts/core/analytics/templates/deployment.yaml +++ /dev/null @@ -1,78 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - volumes: - - name: {{ .Chart.Name }}-config - configMap: - name: {{ .Chart.Name }}-config - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - env: - - name: JAVA_OPTIONS - value: {{ .Values.env.javaoptions | quote }} - - name: MIN_HEAP - value: {{ .Values.env.min_heap | quote }} - - name: MAX_HEAP - value: {{ .Values.env.max_heap | quote }} - - name: azure_storage_secret - value: {{ .Values.env.azure_private_account_secret | quote }} - - name: azure_storage_key - value: {{ .Values.env.azure_private_account_name | quote }} - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - volumeMounts: - - name: {{ .Chart.Name }}-config - mountPath: /home/analytics/application.conf - subPath: analytics_api_service.conf - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/analytics/values.j2 b/kubernetes/helm_charts/core/analytics/values.j2 deleted file mode 100644 index ab93c86762..0000000000 --- a/kubernetes/helm_charts/core/analytics/values.j2 +++ /dev/null @@ -1,32 +0,0 @@ -### Default variable file for cert-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -env: - javaoptions: {{analytics_java_mem_limit|default('-Xmx600m')}} - min_heap: {{analytics_min_heap_limit|default('-Xms1g')}} - max_heap: {{analytics_max_heap_limit|default('-Xmx2g')}} - azure_private_account_secret: {{ sunbird_private_storage_account_key }} - azure_private_account_name: {{ sunbird_private_storage_account_name }} - -replicaCount: {{analytics_replicacount|default(1)}} -repository: {{analytics_repository|default('sunbird-analytics-service')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{analytics_cpu_req|default('100m')}} - memory: {{analytics_mem_req|default('100Mi')}} - limits: - cpu: {{analytics_cpu_limit|default('1')}} - memory: {{analytics_mem_limit|default('1024Mi')}} -network: - port: 9000 - targetport: 9000 -strategy: - type: RollingUpdate - maxsurge: {{ analytics_maxsurge|default('25%') }} - maxunavailable: {{ analytics_maxunavailable|default('25%') }} - -{{ analytics_liveness_readiness | to_nice_yaml }} diff --git a/kubernetes/helm_charts/core/assessment/templates/deployment.yaml b/kubernetes/helm_charts/core/assessment/templates/deployment.yaml index 5f353c55f4..2a3d0a263f 100644 --- a/kubernetes/helm_charts/core/assessment/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/assessment/templates/deployment.yaml @@ -38,6 +38,8 @@ spec: env: - name: JAVA_OPTIONS value: {{ .Values.env.javaoptions | quote }} + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true envFrom: - configMapRef: name: {{ .Chart.Name }}-config diff --git a/kubernetes/helm_charts/core/badger/Chart.yaml b/kubernetes/helm_charts/core/badger/Chart.yaml deleted file mode 100755 index c87735cf96..0000000000 --- a/kubernetes/helm_charts/core/badger/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: badger -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/badger/templates/deployment.yaml b/kubernetes/helm_charts/core/badger/templates/deployment.yaml deleted file mode 100755 index b3fbc36ca0..0000000000 --- a/kubernetes/helm_charts/core/badger/templates/deployment.yaml +++ /dev/null @@ -1,63 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - volumes: - - name: {{ .Chart.Name }}-config - configMap: - name: {{ .Chart.Name }}-config - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - volumeMounts: - - name: {{ .Chart.Name }}-config - mountPath: /badger/code/apps/mainsite/settings_local.py - subPath: settings_local.py - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/badger/values.j2 b/kubernetes/helm_charts/core/badger/values.j2 deleted file mode 100755 index f98f766523..0000000000 --- a/kubernetes/helm_charts/core/badger/values.j2 +++ /dev/null @@ -1,25 +0,0 @@ -### Default variable file for badger-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -replicaCount: {{badger_replicacount|default(1)}} -repository: {{badger_repository|default('badger')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{badger_cpu_req|default('100m')}} - memory: {{badger_mem_req|default('100Mi')}} - limits: - cpu: {{badger_cpu_limit|default('500m')}} - memory: {{badger_mem_limit|default('500Mi')}} -network: - port: 8004 - targetport: 8004 -strategy: - type: RollingUpdate - maxsurge: {{ badger_maxsurge|default('25%') }} - maxunavailable: {{ badger_maxunavailable|default('25%') }} - -{{ badger_liveness_readiness | to_nice_yaml }} diff --git a/kubernetes/helm_charts/core/cert/templates/deployment.yaml b/kubernetes/helm_charts/core/cert/templates/deployment.yaml index 0d1e794d05..577cda9abf 100644 --- a/kubernetes/helm_charts/core/cert/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/cert/templates/deployment.yaml @@ -31,6 +31,8 @@ spec: env: - name: JAVA_OPTIONS value: {{ .Values.env.javaoptions | quote }} + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true envFrom: - configMapRef: name: {{ .Chart.Name }}-config diff --git a/kubernetes/helm_charts/core/certregistry/templates/deployment.yaml b/kubernetes/helm_charts/core/certregistry/templates/deployment.yaml index bcfa950e39..885383e196 100644 --- a/kubernetes/helm_charts/core/certregistry/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/certregistry/templates/deployment.yaml @@ -31,6 +31,8 @@ spec: env: - name: JAVA_OPTIONS value: {{ .Values.env.javaoptions | quote }} + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true envFrom: - configMapRef: name: {{ .Chart.Name }}-config diff --git a/kubernetes/helm_charts/core/content/templates/deployment.yaml b/kubernetes/helm_charts/core/content/templates/deployment.yaml index 714521a201..4b9efc53d9 100644 --- a/kubernetes/helm_charts/core/content/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/content/templates/deployment.yaml @@ -38,6 +38,8 @@ spec: env: - name: JAVA_OPTIONS value: {{ .Values.env.javaoptions | quote }} + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true envFrom: - configMapRef: name: {{ .Chart.Name }}-config diff --git a/kubernetes/helm_charts/core/groups/Chart.yaml b/kubernetes/helm_charts/core/groups/Chart.yaml deleted file mode 100644 index abf54a22ec..0000000000 --- a/kubernetes/helm_charts/core/groups/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: groups -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/groups/templates/configmap.yaml b/kubernetes/helm_charts/core/groups/templates/configmap.yaml deleted file mode 100644 index 810570ef9a..0000000000 --- a/kubernetes/helm_charts/core/groups/templates/configmap.yaml +++ /dev/null @@ -1,11 +0,0 @@ ---- -{{- $keys := .Files.Glob "keys/*" }} -{{ if $keys }} -apiVersion: v1 -kind: Secret -metadata: - name: groups-access-keys -type: Opaque -data: -{{ (.Files.Glob "keys/*").AsSecrets | indent 2 }} -{{ end }} diff --git a/kubernetes/helm_charts/core/groups/templates/deployment.yaml b/kubernetes/helm_charts/core/groups/templates/deployment.yaml deleted file mode 100644 index 3f12a33460..0000000000 --- a/kubernetes/helm_charts/core/groups/templates/deployment.yaml +++ /dev/null @@ -1,72 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - env: - - name: JAVA_OPTIONS - value: {{ .Values.env.javaoptions | quote }} - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} -{{- $keys := .Files.Glob "keys/*" }} -{{- if $keys }} - volumeMounts: - - mountPath: {{ .Values.groups_device_basepath }} - name: access-keys - volumes: - - name: access-keys - secret: - secretName: groups-access-keys -{{ end }} - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/groups/values.j2 b/kubernetes/helm_charts/core/groups/values.j2 deleted file mode 100644 index 43f1928a6f..0000000000 --- a/kubernetes/helm_charts/core/groups/values.j2 +++ /dev/null @@ -1,31 +0,0 @@ -### Default variable file for groups-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - - -env: - javaoptions: {{groups_java_mem_limit|default('-Xmx500m')}} - -replicaCount: {{groups_replicacount|default(1)}} -repository: {{groups_repository|default('groups_service')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{groups_cpu_req|default('100m')}} - memory: {{groups_mem_req|default('300Mi')}} - limits: - cpu: {{groups_cpu_limit|default('1')}} - memory: {{groups_mem_limit|default('1024Mi')}} -network: - port: 9000 - targetport: 9000 -strategy: - type: RollingUpdate - maxsurge: {{ groups_maxsurge|default('25%') }} - maxunavailable: {{ groups_maxunavailable|default('25%') }} - -{{ groups_liveness_readiness | to_nice_yaml }} - -groups_device_basepath: {{ groups_device_basepath | default('/keys/') }} diff --git a/kubernetes/helm_charts/core/learner/.helmignore b/kubernetes/helm_charts/core/learner/.helmignore deleted file mode 100644 index 50af031725..0000000000 --- a/kubernetes/helm_charts/core/learner/.helmignore +++ /dev/null @@ -1,22 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*~ -# Various IDEs -.project -.idea/ -*.tmproj -.vscode/ diff --git a/kubernetes/helm_charts/core/learner/Chart.yaml b/kubernetes/helm_charts/core/learner/Chart.yaml deleted file mode 100644 index d2c54a936b..0000000000 --- a/kubernetes/helm_charts/core/learner/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: learner -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/learner/templates/_helpers.tpl b/kubernetes/helm_charts/core/learner/templates/_helpers.tpl deleted file mode 100644 index 420ba79439..0000000000 --- a/kubernetes/helm_charts/core/learner/templates/_helpers.tpl +++ /dev/null @@ -1,45 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "learner.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "learner.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "learner.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "learner.labels" -}} -app.kubernetes.io/name: {{ include "learner.name" . }} -helm.sh/chart: {{ include "learner.chart" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} diff --git a/kubernetes/helm_charts/core/learner/templates/configmap.yaml b/kubernetes/helm_charts/core/learner/templates/configmap.yaml deleted file mode 100644 index f6dacc41b4..0000000000 --- a/kubernetes/helm_charts/core/learner/templates/configmap.yaml +++ /dev/null @@ -1,11 +0,0 @@ ---- -{{- $keys := .Files.Glob "keys/*" }} -{{ if $keys }} -apiVersion: v1 -kind: Secret -metadata: - name: learner-access-keys -type: Opaque -data: -{{ (.Files.Glob "keys/*").AsSecrets | indent 2 }} -{{ end }} diff --git a/kubernetes/helm_charts/core/learner/templates/deployment.yaml b/kubernetes/helm_charts/core/learner/templates/deployment.yaml deleted file mode 100644 index 81117a28ff..0000000000 --- a/kubernetes/helm_charts/core/learner/templates/deployment.yaml +++ /dev/null @@ -1,80 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - env: - - name: JAVA_OPTIONS - value: {{ .Values.env.javaoptions | quote }} - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - volumeMounts: - - name: {{ .Chart.Name }}-xml-config - mountPath: /home/sunbird/learner/learning-service-1.0-SNAPSHOT/config/logback.xml - subPath: learner-service_logback.xml -{{- $keys := .Files.Glob "keys/*" }} -{{- if $keys }} - - mountPath: {{ .Values.learner_device_basepath }} - name: access-keys -{{- end }} - volumes: - - name: {{ .Chart.Name }}-xml-config - configMap: - name: {{ .Chart.Name }}-xml-config -{{- $keys := .Files.Glob "keys/*" }} -{{- if $keys }} - - name: access-keys - secret: - secretName: learner-access-keys -{{- end }} ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/learner/values.j2 b/kubernetes/helm_charts/core/learner/values.j2 deleted file mode 100644 index 0faa781ea6..0000000000 --- a/kubernetes/helm_charts/core/learner/values.j2 +++ /dev/null @@ -1,31 +0,0 @@ - -### Default variable file for learner-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -env: - javaoptions: {{learner_java_mem_limit|default('-Xmx600m')}} - -replicaCount: {{learner_replicacount|default(1)}} -repository: {{learner_repository|default('learner_service')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{learner_cpu_req|default('100m')}} - memory: {{learner_mem_req|default('100Mi')}} - limits: - cpu: {{learner_cpu_limit|default('1')}} - memory: {{learner_mem_limit|default('1024Mi')}} -network: - port: 9000 - targetport: 9000 -strategy: - type: RollingUpdate - maxsurge: {{ learner_maxsurge|default('25%') }} - maxunavailable: {{ learner_maxunavailable|default('25%') }} - -{{ learner_liveness_readiness | to_nice_yaml }} - -learner_device_basepath: {{ learner_device_basepath | default('/keys/') }} diff --git a/kubernetes/helm_charts/core/lms/Chart.yaml b/kubernetes/helm_charts/core/lms/Chart.yaml deleted file mode 100644 index 5ebad80661..0000000000 --- a/kubernetes/helm_charts/core/lms/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: lms -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/lms/templates/configmap.yaml b/kubernetes/helm_charts/core/lms/templates/configmap.yaml deleted file mode 100644 index 07d61ad084..0000000000 --- a/kubernetes/helm_charts/core/lms/templates/configmap.yaml +++ /dev/null @@ -1,11 +0,0 @@ ---- -{{- $keys := .Files.Glob "keys/*" }} -{{ if $keys }} -apiVersion: v1 -kind: Secret -metadata: - name: lms-access-keys -type: Opaque -data: -{{ (.Files.Glob "keys/*").AsSecrets | indent 2 }} -{{ end }} diff --git a/kubernetes/helm_charts/core/lms/templates/deployment.yaml b/kubernetes/helm_charts/core/lms/templates/deployment.yaml deleted file mode 100644 index 1c797c37eb..0000000000 --- a/kubernetes/helm_charts/core/lms/templates/deployment.yaml +++ /dev/null @@ -1,85 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - volumes: - - name: {{ .Chart.Name }}-xml-config - configMap: - name: {{ .Chart.Name }}-xml-config - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - env: - - name: JAVA_OPTIONS - value: {{ .Values.env.javaoptions | quote }} - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - volumeMounts: - - name: {{ .Chart.Name }}-xml-config - mountPath: /home/sunbird/lms/lms-service-1.0-SNAPSHOT/config/logback.xml - subPath: lms-service_logback.xml -{{- $keys := .Files.Glob "keys/*" }} -{{- if $keys }} - - mountPath: {{ .Values.lms_device_basepath }} - name: access-keys -{{- end }} - volumes: - - name: {{ .Chart.Name }}-xml-config - configMap: - name: {{ .Chart.Name }}-xml-config -{{- $keys := .Files.Glob "keys/*" }} -{{- if $keys }} - - name: access-keys - secret: - secretName: lms-access-keys -{{- end }} - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/lms/values.j2 b/kubernetes/helm_charts/core/lms/values.j2 deleted file mode 100644 index 0714daad99..0000000000 --- a/kubernetes/helm_charts/core/lms/values.j2 +++ /dev/null @@ -1,31 +0,0 @@ -### Default variable file for lms-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - - -env: - javaoptions: {{lms_java_mem_limit|default('-Xmx600m')}} - -replicaCount: {{lms_replicacount|default(1)}} -repository: {{lms_repository|default('lms_service')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{lms_cpu_req|default('100m')}} - memory: {{lms_mem_req|default('100Mi')}} - limits: - cpu: {{lms_cpu_limit|default('1')}} - memory: {{lms_mem_limit|default('1024Mi')}} -network: - port: 9005 - targetport: 9000 -strategy: - type: RollingUpdate - maxsurge: {{ lms_maxsurge|default('25%') }} - maxunavailable: {{ lms_maxunavailable|default('25%') }} - -{{ lms_liveness_readiness | to_nice_yaml }} - -lms_device_basepath: {{ lms_device_basepath | default('/keys/') }} diff --git a/kubernetes/helm_charts/core/mvc/templates/deployment.yaml b/kubernetes/helm_charts/core/mvc/templates/deployment.yaml index 625b0ef12b..98fca71e2f 100644 --- a/kubernetes/helm_charts/core/mvc/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/mvc/templates/deployment.yaml @@ -38,6 +38,9 @@ spec: envFrom: - configMapRef: name: {{ .Chart.Name }}-config + env: + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true resources: {{ toYaml .Values.resources | indent 10 }} ports: diff --git a/kubernetes/helm_charts/core/nodebb/.helmignore b/kubernetes/helm_charts/core/nodebb/.helmignore deleted file mode 100644 index 50af031725..0000000000 --- a/kubernetes/helm_charts/core/nodebb/.helmignore +++ /dev/null @@ -1,22 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*~ -# Various IDEs -.project -.idea/ -*.tmproj -.vscode/ diff --git a/kubernetes/helm_charts/core/nodebb/Chart.yaml b/kubernetes/helm_charts/core/nodebb/Chart.yaml deleted file mode 100644 index 92b3d1bb77..0000000000 --- a/kubernetes/helm_charts/core/nodebb/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: nodebb -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/nodebb/templates/_helpers.tpl b/kubernetes/helm_charts/core/nodebb/templates/_helpers.tpl deleted file mode 100644 index 83b59b74a2..0000000000 --- a/kubernetes/helm_charts/core/nodebb/templates/_helpers.tpl +++ /dev/null @@ -1,45 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "print.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "print.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "print.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "print.labels" -}} -app.kubernetes.io/name: {{ include "print.name" . }} -helm.sh/chart: {{ include "print.chart" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} diff --git a/kubernetes/helm_charts/core/nodebb/templates/configmap.yaml b/kubernetes/helm_charts/core/nodebb/templates/configmap.yaml deleted file mode 100644 index bdec29c8db..0000000000 --- a/kubernetes/helm_charts/core/nodebb/templates/configmap.yaml +++ /dev/null @@ -1 +0,0 @@ -# This file will get replaced at runtime diff --git a/kubernetes/helm_charts/core/nodebb/templates/deployment.yaml b/kubernetes/helm_charts/core/nodebb/templates/deployment.yaml deleted file mode 100644 index b25dd6987a..0000000000 --- a/kubernetes/helm_charts/core/nodebb/templates/deployment.yaml +++ /dev/null @@ -1,85 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - volumes: - - name: nodebb-config-json - configMap: - name: nodebb-config-json - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - volumeMounts: - - name: nodebb-config-json - mountPath: /usr/src/app/config.json - subPath: config.json - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: nodebb-config-json -data: - config.json: |- - { - "url": "{{ .Values.nodebb_url }}", - "secret": "100101", - "database": "redis", - "port": "4567", - "redis": { - "host": "{{ .Values.redis_nodebb_host }}", - "port": 6379, - "username": "", - "password": "", - "database": "0" - } - } - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.port }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/nodebb/values.j2 b/kubernetes/helm_charts/core/nodebb/values.j2 deleted file mode 100644 index b5cbc5fd9b..0000000000 --- a/kubernetes/helm_charts/core/nodebb/values.j2 +++ /dev/null @@ -1,27 +0,0 @@ -#jinja2:lstrip_blocks: True - -### Default variable file for nodebb-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -replicaCount: {{nodebb_replicacount|default(1)}} -repository: {{nodebb_repository|default('nodebb')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{nodebb_cpu_req|default('50m')}} - memory: {{nodebb_mem_req|default('50Mi')}} - limits: - cpu: {{nodebb_cpu_limit|default('1')}} - memory: {{nodebb_mem_limit|default('1024Mi')}} -network: - port: 4567 -strategy: - type: RollingUpdate - maxsurge: {{ nodebb_maxsurge|default('25%') }} - maxunavailable: {{ nodebb_maxunavailable|default('25%') }} - -nodebb_url: {{ sunbird_nodebb_url }} -redis_nodebb_host: {{ redis_nodebb_host }} diff --git a/kubernetes/helm_charts/core/notification/Chart.yaml b/kubernetes/helm_charts/core/notification/Chart.yaml deleted file mode 100644 index e4f958f07c..0000000000 --- a/kubernetes/helm_charts/core/notification/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: notification -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/notification/templates/configmap.yaml b/kubernetes/helm_charts/core/notification/templates/configmap.yaml deleted file mode 100644 index 2ebdaf39bd..0000000000 --- a/kubernetes/helm_charts/core/notification/templates/configmap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -#apiVersion: v1 -#data: -# {{- range $key, $val := .Values.notificationenv }} -# {{ $key }}: {{ $val }} -# {{- end }} -#kind: ConfigMap -#metadata: -# creationTimestamp: null -# name: {{ .Chart.Name }}-config -# namespace: {{ .Values.namespace }} diff --git a/kubernetes/helm_charts/core/notification/templates/deployment.yaml b/kubernetes/helm_charts/core/notification/templates/deployment.yaml deleted file mode 100644 index a825905405..0000000000 --- a/kubernetes/helm_charts/core/notification/templates/deployment.yaml +++ /dev/null @@ -1,59 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/notification/values.j2 b/kubernetes/helm_charts/core/notification/values.j2 deleted file mode 100644 index a37b1c8d72..0000000000 --- a/kubernetes/helm_charts/core/notification/values.j2 +++ /dev/null @@ -1,65 +0,0 @@ -### Default variable file for enc-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -replicaCount: {{notification_replicacount|default(1)}} -repository: {{notification_repository|default('notification_service')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{notification_cpu_req|default('50m')}} - memory: {{notification_mem_req|default('50Mi')}} - limits: - cpu: {{notification_cpu_limit|default('1')}} - memory: {{notification_mem_limit|default('500Mi')}} -network: - port: 9012 - targetport: 9000 -strategy: - type: RollingUpdate - maxsurge: {{ notification_maxsurge|default('25%') }} - maxunavailable: {{ notification_maxunavailable|default('25%') }} - -notification: - readinessprobe: - enabled: true - livenessprobe: - enabled: true - readinessProbe: - httpGet: - path: /health - port: 9000 - initialDelaySeconds: 30 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 5 - successThreshold: 1 - livenessProbe: - httpGet: - path: /service/health - port: 9000 - initialDelaySeconds: 60 - periodSeconds: 10 - -notification: - readinessprobe: - enabled: true - livenessprobe: - enabled: true - readinessProbe: - httpGet: - path: /health - port: 9000 - initialDelaySeconds: 30 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 5 - successThreshold: 1 - livenessProbe: - httpGet: - path: /service/health - port: 9000 - initialDelaySeconds: 60 - periodSeconds: 10 diff --git a/kubernetes/helm_charts/core/opensaber/templates/deployment.yaml b/kubernetes/helm_charts/core/opensaber/templates/deployment.yaml index 13c47c4b8b..374662b7fb 100644 --- a/kubernetes/helm_charts/core/opensaber/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/opensaber/templates/deployment.yaml @@ -31,6 +31,9 @@ spec: envFrom: - configMapRef: name: {{ .Chart.Name }}-config + env: + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true resources: {{ toYaml .Values.resources | indent 10 }} ports: diff --git a/kubernetes/helm_charts/core/report/Chart.yaml b/kubernetes/helm_charts/core/report/Chart.yaml deleted file mode 100644 index 3ef91a05f7..0000000000 --- a/kubernetes/helm_charts/core/report/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: report -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/report/templates/_helpers.tpl b/kubernetes/helm_charts/core/report/templates/_helpers.tpl deleted file mode 100644 index 5902058431..0000000000 --- a/kubernetes/helm_charts/core/report/templates/_helpers.tpl +++ /dev/null @@ -1,45 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "telemetry.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "telemetry.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "telemetry.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "telemetry.labels" -}} -app.kubernetes.io/name: {{ include "telemetry.name" . }} -helm.sh/chart: {{ include "telemetry.chart" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} diff --git a/kubernetes/helm_charts/core/report/templates/configmap.yaml b/kubernetes/helm_charts/core/report/templates/configmap.yaml deleted file mode 100644 index 00fdbaa0c2..0000000000 --- a/kubernetes/helm_charts/core/report/templates/configmap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -#apiVersion: v1 -#data: -# {{- range $key, $val := .Values.telemetryenv }} -# {{ $key }}: {{ $val }} -# {{- end }} -#kind: ConfigMap -#metadata: -# creationTimestamp: null -# name: {{ .Chart.Name }}-config -# namespace: {{ .Values.namespace }} diff --git a/kubernetes/helm_charts/core/report/templates/deployment.yaml b/kubernetes/helm_charts/core/report/templates/deployment.yaml deleted file mode 100644 index a825905405..0000000000 --- a/kubernetes/helm_charts/core/report/templates/deployment.yaml +++ /dev/null @@ -1,59 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Chart.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/report/values.j2 b/kubernetes/helm_charts/core/report/values.j2 deleted file mode 100644 index d4c73485c8..0000000000 --- a/kubernetes/helm_charts/core/report/values.j2 +++ /dev/null @@ -1,26 +0,0 @@ - -### variables for report service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -replicaCount: {{report_replicacount|default(1)}} -repository: {{report_repository|default('report-service')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{report_cpu_req|default('100m')}} - memory: {{report_mem_req|default('100Mi')}} - limits: - cpu: {{report_cpu_limit|default('1')}} - memory: {{report_mem_limit|default('1024Mi')}} -network: - port: 3030 - targetport: 3030 -strategy: - type: RollingUpdate - maxsurge: {{ report_maxsurge|default('25%') }} - maxunavailable: {{ report_maxunavailable|default('25%') }} - -{{ report_liveness_readiness | to_nice_yaml }} diff --git a/kubernetes/helm_charts/core/search/templates/deployment.yaml b/kubernetes/helm_charts/core/search/templates/deployment.yaml index 34293c1afa..a41ce6cada 100644 --- a/kubernetes/helm_charts/core/search/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/search/templates/deployment.yaml @@ -38,6 +38,8 @@ spec: env: - name: JAVA_OPTIONS value: {{ .Values.env.javaoptions | quote }} + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true envFrom: - configMapRef: name: {{ .Chart.Name }}-config diff --git a/kubernetes/helm_charts/core/taxonomy/templates/deployment.yaml b/kubernetes/helm_charts/core/taxonomy/templates/deployment.yaml index 6c45087c07..1461b6e1f2 100644 --- a/kubernetes/helm_charts/core/taxonomy/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/taxonomy/templates/deployment.yaml @@ -38,6 +38,8 @@ spec: env: - name: JAVA_OPTIONS value: {{ .Values.env.javaoptions | quote }} + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true envFrom: - configMapRef: name: {{ .Chart.Name }}-config diff --git a/kubernetes/helm_charts/core/telemetry-dp-logstash/Chart.yaml b/kubernetes/helm_charts/core/telemetry-dp-logstash/Chart.yaml deleted file mode 100644 index 3760b5476d..0000000000 --- a/kubernetes/helm_charts/core/telemetry-dp-logstash/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: telemetry-logstash-dock -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/telemetry-dp-logstash/templates/deployment.yaml b/kubernetes/helm_charts/core/telemetry-dp-logstash/templates/deployment.yaml deleted file mode 100644 index 6f584f7d25..0000000000 --- a/kubernetes/helm_charts/core/telemetry-dp-logstash/templates/deployment.yaml +++ /dev/null @@ -1,66 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Release.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - volumes: - - name: {{ .Release.Name }}-config - configMap: - name: {{ .Release.Name }}-config - containers: - - name: {{ .Release.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - envFrom: - - configMapRef: - name: {{ .Release.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - volumeMounts: - - name: {{ .Release.Name }}-config - mountPath: /etc/telemetry-logstash.conf - ---- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Release.Name }}-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Release.Name }} -spec: - ports: - - name: http-{{ .Release.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Release.Name }} diff --git a/kubernetes/helm_charts/core/telemetry-dp-logstash/values.j2 b/kubernetes/helm_charts/core/telemetry-dp-logstash/values.j2 deleted file mode 100644 index d6e104f35f..0000000000 --- a/kubernetes/helm_charts/core/telemetry-dp-logstash/values.j2 +++ /dev/null @@ -1,23 +0,0 @@ -### Default variable file for cert-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: sunbird - -replicaCount: {{telemetry_logstash_replicacount|default(1)}} -repository: 'telemetry_logstash' -image_tag: 5.6-alpine -resources: - requests: - cpu: {{telemetry_logstash_cpu_req|default('100m')}} - memory: {{telemetry_logstash_mem_req|default('100Mi')}} - limits: - cpu: {{telemetry_logstash_cpu_limit|default('1')}} - memory: {{telemetry_logstash_mem_limit|default('1024Mi')}} -network: - port: 5044 - targetport: 5044 -strategy: - type: RollingUpdate - maxsurge: {{ telemetry_logstash_maxsurge|default('25%') }} - maxunavailable: {{ telemetry_logstash_maxunavailable|default('25%') }} diff --git a/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml b/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml index cedc0aa4be..d1abb281b9 100644 --- a/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml +++ b/kubernetes/helm_charts/core/telemetry-logstash-dock/templates/deployment.yaml @@ -35,6 +35,9 @@ spec: envFrom: - configMapRef: name: {{ .Release.Name }}-config + env: + - name: _JAVA_OPTIONS + value: -Dlog4j2.formatMsgNoLookups=true resources: {{ toYaml .Values.resources | indent 10 }} ports: diff --git a/kubernetes/helm_charts/core/telemetrydplogstash/values.j2 b/kubernetes/helm_charts/core/telemetrydplogstash/values.j2 deleted file mode 100644 index d6e104f35f..0000000000 --- a/kubernetes/helm_charts/core/telemetrydplogstash/values.j2 +++ /dev/null @@ -1,23 +0,0 @@ -### Default variable file for cert-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: sunbird - -replicaCount: {{telemetry_logstash_replicacount|default(1)}} -repository: 'telemetry_logstash' -image_tag: 5.6-alpine -resources: - requests: - cpu: {{telemetry_logstash_cpu_req|default('100m')}} - memory: {{telemetry_logstash_mem_req|default('100Mi')}} - limits: - cpu: {{telemetry_logstash_cpu_limit|default('1')}} - memory: {{telemetry_logstash_mem_limit|default('1024Mi')}} -network: - port: 5044 - targetport: 5044 -strategy: - type: RollingUpdate - maxsurge: {{ telemetry_logstash_maxsurge|default('25%') }} - maxunavailable: {{ telemetry_logstash_maxunavailable|default('25%') }} diff --git a/kubernetes/helm_charts/core/userorg/Chart.yaml b/kubernetes/helm_charts/core/userorg/Chart.yaml deleted file mode 100644 index c7c993ab63..0000000000 --- a/kubernetes/helm_charts/core/userorg/Chart.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -appVersion: "1.0" -description: A Helm chart for Kubernetes -name: userorg -version: 0.1.0 diff --git a/kubernetes/helm_charts/core/userorg/templates/configmap.yaml b/kubernetes/helm_charts/core/userorg/templates/configmap.yaml deleted file mode 100644 index 94fd443c77..0000000000 --- a/kubernetes/helm_charts/core/userorg/templates/configmap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -#apiVersion: v1 -#data: -# {{- range $key, $val := .Values.userorgenv }} -# {{ $key }}: {{ $val }} -# {{- end }} -#kind: ConfigMap -#metadata: -# creationTimestamp: null -# name: {{ .Chart.Name }}-config -# namespace: {{ .Values.namespace }} diff --git a/kubernetes/helm_charts/core/userorg/templates/deployment.yaml b/kubernetes/helm_charts/core/userorg/templates/deployment.yaml deleted file mode 100644 index d3f83edaf7..0000000000 --- a/kubernetes/helm_charts/core/userorg/templates/deployment.yaml +++ /dev/null @@ -1,59 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Chart.Name }} - namespace: {{ .Values.namespace }} - annotations: - reloader.stakater.com/auto: "true" -spec: - replicas: {{ .Values.replicaCount }} - strategy: - rollingUpdate: - maxSurge: {{ .Values.strategy.maxsurge }} - maxUnavailable: {{ .Values.strategy.maxunavailable }} - selector: - matchLabels: - app: {{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Chart.Name }} - spec: -{{- if .Values.imagepullsecrets }} - imagePullSecrets: - - name: {{ .Values.imagepullsecrets }} -{{- end }} - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.dockerhub }}/{{ .Values.repository }}:{{ .Values.image_tag }}" - imagePullPolicy: Always - envFrom: - - configMapRef: - name: {{ .Chart.Name }}-config - resources: -{{ toYaml .Values.resources | indent 10 }} - ports: - - containerPort: {{ .Values.network.port }} - {{- if .Values.healthcheck }} - livenessProbe: -{{ toYaml .Values.livenessProbe | indent 10 }} - readinessProbe: -{{ toYaml .Values.readinessProbe | indent 10 }} - {{- end }} - ---- -apiVersion: v1 -kind: Service -metadata: - name: user-org-service - namespace: {{ .Values.namespace }} - labels: - app: {{ .Chart.Name }} -spec: - ports: - - name: http-{{ .Chart.Name }} - protocol: TCP - port: {{ .Values.network.targetport }} - selector: - app: {{ .Chart.Name }} diff --git a/kubernetes/helm_charts/core/userorg/values.j2 b/kubernetes/helm_charts/core/userorg/values.j2 deleted file mode 100644 index 6508b4d132..0000000000 --- a/kubernetes/helm_charts/core/userorg/values.j2 +++ /dev/null @@ -1,25 +0,0 @@ -### Default variable file for userorg-service ### - -namespace: {{ namespace }} -imagepullsecrets: {{ imagepullsecrets }} -dockerhub: {{ dockerhub }} - -replicaCount: {{userorg_replicacount|default(1)}} -repository: {{userorg_repository|default('user_org_service')}} -image_tag: {{ image_tag }} -resources: - requests: - cpu: {{userorg_cpu_req|default('100m')}} - memory: {{userorg_mem_req|default('100Mi')}} - limits: - cpu: {{userorg_cpu_limit|default('1')}} - memory: {{userorg_mem_limit|default('1024Mi')}} -network: - port: 9008 - targetport: 9000 -strategy: - type: RollingUpdate - maxsurge: {{ userorg_maxsurge|default('25%') }} - maxunavailable: {{ userorg_maxunavailable|default('25%') }} - -{{ userorg_liveness_readiness | to_nice_yaml }} From 4aab1c9c7a4788002e9aa39c4d95b8c19d0f024e Mon Sep 17 00:00:00 2001 From: Keshav Prasad Date: Thu, 16 Dec 2021 17:14:11 +0530 Subject: [PATCH 260/298] fix: mandatory requirement for kuberenets 1.22+ as --dry-run=client (#3082) --- kubernetes/ansible/bootstrap.yaml | 2 +- kubernetes/ansible/bootstrap_minimal.yaml | 2 +- kubernetes/ansible/roles/deploy-player/tasks/main.yml | 2 +- kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/kubernetes/ansible/bootstrap.yaml b/kubernetes/ansible/bootstrap.yaml index 02cafaeb6d..0fa7e0acfe 100644 --- a/kubernetes/ansible/bootstrap.yaml +++ b/kubernetes/ansible/bootstrap.yaml @@ -39,7 +39,7 @@ - name: "Tagging {{ namespace }} to enable istio" shell: "kubectl label namespaces {{ namespace }} istio-injection=enabled --overwrite" - name: Creating docker secrets - shell: "kubectl create secret docker-registry {{ imagepullsecrets }} --namespace {{ namespace }} --docker-server {{ vault_docker_registry_url }} --docker-username {{ vault_docker_registry_user }} --docker-password {{ vault_docker_registry_password }} --dry-run -o=yaml | kubectl apply -f -" + shell: "kubectl create secret docker-registry {{ imagepullsecrets }} --namespace {{ namespace }} --docker-server {{ vault_docker_registry_url }} --docker-username {{ vault_docker_registry_user }} --docker-password {{ vault_docker_registry_password }} --dry-run=client -o=yaml | kubectl apply -f -" - name: Installing reloader for configmaps reload shell: helm upgrade --install --atomic reloader ../helm_charts/core/reloader --namespace "{{ namespace }}" -f /tmp/helm_vars.yaml roles: diff --git a/kubernetes/ansible/bootstrap_minimal.yaml b/kubernetes/ansible/bootstrap_minimal.yaml index 1a6420dcd0..302e4a1eab 100644 --- a/kubernetes/ansible/bootstrap_minimal.yaml +++ b/kubernetes/ansible/bootstrap_minimal.yaml @@ -30,7 +30,7 @@ - logging ignore_errors: yes - name: Creating docker secrets - shell: "kubectl create secret docker-registry {{ imagepullsecrets }} --namespace {{ namespace }} --docker-server {{ vault_docker_registry_url }} --docker-username {{ vault_docker_registry_user }} --docker-password {{ vault_docker_registry_password }} --dry-run -o=yaml | kubectl apply -f -" + shell: "kubectl create secret docker-registry {{ imagepullsecrets }} --namespace {{ namespace }} --docker-server {{ vault_docker_registry_url }} --docker-username {{ vault_docker_registry_user }} --docker-password {{ vault_docker_registry_password }} --dry-run=client -o=yaml | kubectl apply -f -" when: imagepullsecrets|length > 0 - name: Creating domain ssl shell: diff --git a/kubernetes/ansible/roles/deploy-player/tasks/main.yml b/kubernetes/ansible/roles/deploy-player/tasks/main.yml index fb4076534a..a0f019a17f 100644 --- a/kubernetes/ansible/roles/deploy-player/tasks/main.yml +++ b/kubernetes/ansible/roles/deploy-player/tasks/main.yml @@ -30,7 +30,7 @@ dest: "{{role_path}}/templates/{{ release_name }}.env" - name: create configmap - shell: "kubectl create configmap player-config --from-env-file={{role_path}}/templates/{{ release_name }}.env -n {{namespace}} --dry-run -o=yaml | kubectl apply -f -" + shell: "kubectl create configmap player-config --from-env-file={{role_path}}/templates/{{ release_name }}.env -n {{namespace}} --dry-run=client -o=yaml | kubectl apply -f -" - name: helm install and upgrade shell: helm upgrade --install --atomic --timeout 10m {{ release_name }} {{ chart_path }} -n {{namespace}} diff --git a/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml b/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml index 95b651e36e..b46a4971cb 100644 --- a/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml +++ b/kubernetes/ansible/roles/sunbird-deploy/tasks/main.yml @@ -10,13 +10,13 @@ with_items: "{{service_env[release_name]}}" - name: create env configmap - shell: find "{{role_path}}/templates/" -iname "*.env" -exec /bin/bash -c "ls {}; kubectl create configmap {{ release_name }}-config --from-env-file={} -n {{namespace}} --dry-run -o=yaml | kubectl apply -f - " \; + shell: find "{{role_path}}/templates/" -iname "*.env" -exec /bin/bash -c "ls {}; kubectl create configmap {{ release_name }}-config --from-env-file={} -n {{namespace}} --dry-run=client -o=yaml | kubectl apply -f - " \; - name: create aplication configmap - shell: find "{{role_path}}/templates/" -iname "*.conf" -exec /bin/bash -c "ls {}; kubectl create configmap {{ release_name }}-config --from-file={} -n {{namespace}} --dry-run -o=yaml | kubectl apply -f - " \; + shell: find "{{role_path}}/templates/" -iname "*.conf" -exec /bin/bash -c "ls {}; kubectl create configmap {{ release_name }}-config --from-file={} -n {{namespace}} --dry-run=client -o=yaml | kubectl apply -f - " \; - name: create xml configmap - shell: find "{{role_path}}/templates/" -iname "*.xml" -exec /bin/bash -c "ls {}; kubectl create configmap {{ release_name }}-xml-config --from-file={} -n {{namespace}} --dry-run -o=yaml | kubectl apply -f - " \; + shell: find "{{role_path}}/templates/" -iname "*.xml" -exec /bin/bash -c "ls {}; kubectl create configmap {{ release_name }}-xml-config --from-file={} -n {{namespace}} --dry-run=client -o=yaml | kubectl apply -f - " \; - name: Load role to decrypt private keys, copy to helm chart and encrypt private keys include_role: From cf21dce2682816e139e9a77d05d7686ef62e0802 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Thu, 16 Dec 2021 17:37:29 +0530 Subject: [PATCH 261/298] Issue SB-26880 feat: contextual help config (#3085) --- ansible/roles/stack-sunbird/defaults/main.yml | 3 +++ ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 + 2 files changed, 4 insertions(+) diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index f892a9dbd6..7dba5e0db3 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -802,3 +802,6 @@ dock_program_service_url: "http://program-service:6000/" #master category validation enabled master_category_validation_enabled: "Yes" + +#sourcing portal +contextual_help_config: '{"sourcing":{"manageUsers":{"url":"/sourcing/help","header":"Inviting users will allow you to assign them roles for projects","message":"You can invite users to your organization by clicking on Invite Users and sharing an invitation link with them"}},"contribute":{"manageUsers":{"url":"/contribute/help","header":"Inviting users will allow you to assign them roles for projects","message":"You can invite users to your organization by clicking on Invite Users and sharing an invitation link with them"}}}' diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index 483915f3cb..e79dbe6449 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -27,3 +27,4 @@ learner_service_url=http://player:3000/learner CORE_INGRESS_GATEWAY_IP={{ core_private_ingressgateway_ip | d(private_ingressgateway_ip) }} sunbird_google_oauth_client_email={{ sunbird_google_oauth_client_email }} sunbird_google_oauth_private_key={{ sunbird_google_oauth_private_key }} +sunbird_contextual_help_config={{ contextual_help_config }} From f7d5ce4522aa9e0a1d48906e84fb325103f3c06f Mon Sep 17 00:00:00 2001 From: vaishali Date: Tue, 21 Dec 2021 15:04:27 +0530 Subject: [PATCH 262/298] Issue #sb-26530 feat: onBoarding form APIs --- ansible/roles/kong-api/defaults/main.yml | 59 ++++++++++++++++++- ansible/roles/kong-consumer/defaults/main.yml | 7 +++ 2 files changed, 63 insertions(+), 3 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index d420c216d4..1fe20b87e7 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6547,7 +6547,7 @@ kong_apis: config.limit_by: credential - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" - + - name: questionBulkUpload request_path: "{{ question_prefix }}/v1/bulkUpload" upstream_url: "{{ program_service_url }}/question/v1/bulkUpload" @@ -7107,7 +7107,6 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" - - name: acceptCollectionFlag request_path: "{{ collection_prefix }}/v1/flag/accept" upstream_url: "{{ content_service_url }}/collection/v4/flag/accept" @@ -7124,4 +7123,58 @@ kong_apis: config.hour: "{{ medium_rate_limit_per_hour }}" config.limit_by: credential - name: request-size-limiting - config.allowed_payload_size: "{{ small_request_size_limit }}" \ No newline at end of file + config.allowed_payload_size: "{{ small_request_size_limit }}" + + - name: createForm + request_path: "{{ program_service_prefix }}/v1/form/create" + upstream_url: "{{ program_service_url }}/program/v1/form/create" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'appAdmin' + - 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: updateForm + request_path: "{{ program_service_prefix }}/v1/form/update" + upstream_url: "{{ program_service_url }}/program/v1/form/update" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'appAdmin' + - 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: readForm + request_path: "{{ program_service_prefix }}/v1/form/read" + upstream_url: "{{ program_service_url }}/program/v1/form/read" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'programAccess' + - 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 }}" diff --git a/ansible/roles/kong-consumer/defaults/main.yml b/ansible/roles/kong-consumer/defaults/main.yml index 4eed3e4088..7e6f307db1 100644 --- a/ansible/roles/kong-consumer/defaults/main.yml +++ b/ansible/roles/kong-consumer/defaults/main.yml @@ -84,6 +84,13 @@ kong_all_consumer_groups: - druidReportAdmin - dataCreate - frameworkAccess + - programCreate + - programUpdate + - programAdmin + - programAccess + - nominationCreate + - nominationUpdate + - nominationAdmin kong_consumers: - username: api-admin From 04dd768538de57b4b94e5e7a1732060389a1c2ae Mon Sep 17 00:00:00 2001 From: vaishali Date: Wed, 22 Dec 2021 11:32:49 +0530 Subject: [PATCH 263/298] Issue #0 fix: fixed indentation --- ansible/roles/kong-api/defaults/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 1fe20b87e7..6bb019da18 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -7143,7 +7143,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -- name: updateForm + - name: updateForm request_path: "{{ program_service_prefix }}/v1/form/update" upstream_url: "{{ program_service_url }}/program/v1/form/update" strip_request_path: true @@ -7161,7 +7161,7 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ small_request_size_limit }}" -- name: readForm + - name: readForm request_path: "{{ program_service_prefix }}/v1/form/read" upstream_url: "{{ program_service_url }}/program/v1/form/read" strip_request_path: true From b5f7118ee9100f63dcf237afb873169ed461140f Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 22 Dec 2021 11:51:27 +0530 Subject: [PATCH 264/298] Issue SB-26880 feat: contextual help config --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 6435d24d17..55a9302f19 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -148,3 +148,6 @@ dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} sunbird_kong_refresh_token_api=https://{{sunbird_domain_name}}/auth/v1/refresh/token use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} + +#release-4.6.0 +sunbird_contextual_help_config={{ contextual_help_config }} From 483e6954ce7007947290d0c00d0214849e78e562 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 22 Dec 2021 11:51:56 +0530 Subject: [PATCH 265/298] Issue SB-26880 feat: contextual help config --- ansible/roles/stack-sunbird/templates/sunbird_program.env | 1 - 1 file changed, 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_program.env b/ansible/roles/stack-sunbird/templates/sunbird_program.env index e79dbe6449..483915f3cb 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_program.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_program.env @@ -27,4 +27,3 @@ learner_service_url=http://player:3000/learner CORE_INGRESS_GATEWAY_IP={{ core_private_ingressgateway_ip | d(private_ingressgateway_ip) }} sunbird_google_oauth_client_email={{ sunbird_google_oauth_client_email }} sunbird_google_oauth_private_key={{ sunbird_google_oauth_private_key }} -sunbird_contextual_help_config={{ contextual_help_config }} From cba80b92c836547eb79e9b6ce9ebe1e3d84dc343 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 28 Dec 2021 09:55:14 +0530 Subject: [PATCH 266/298] Issue #SB-25499 feat: added collection review API (#3099) --- ansible/roles/kong-api/defaults/main.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 6bb019da18..689379c86a 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -7089,6 +7089,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: collectionReview + request_path: "{{ collection_prefix }}/v1/review" + upstream_url: "{{ content_service_url }}/collection/v4/review" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: collectionReject request_path: "{{ collection_prefix }}/v1/reject" upstream_url: "{{ content_service_url }}/collection/v4/reject" From d70033fccdcd1298aa04e4ff2d44c5add7b9b722 Mon Sep 17 00:00:00 2001 From: Jayaprakash8887 Date: Tue, 28 Dec 2021 12:22:45 +0530 Subject: [PATCH 267/298] Issue #SB-25499 feat: removal of dialcode link api ref (#3101) --- ansible/roles/kong-api/defaults/main.yml | 36 ------------------------ 1 file changed, 36 deletions(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index 689379c86a..b4ab5dff4a 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6690,24 +6690,6 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" - - name: dialcodeLinkContentV2 - request_path: "{{ content_prefix }}/v2/dialcode/link" - upstream_url: "{{ content_service_url }}/content/v4/dialcode/link" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentUpdate' - - 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: "{{ medium_request_size_limit }}" - - name: importContentV2 request_path: "{{ content_prefix }}/v2/import" upstream_url: "{{ content_service_url }}/content/v4/import" @@ -7017,24 +6999,6 @@ kong_apis: config.allowed_payload_size: "{{ medium_request_size_limit }}" - - name: collectionDialcodeLink - request_path: "{{ collection_prefix }}/v1/dialcode/link" - upstream_url: "{{ content_service_url }}/collection/v4/dialcode/link" - strip_request_path: true - plugins: - - name: jwt - - name: cors - - "{{ statsd_pulgin }}" - - name: acl - config.whitelist: - - 'contentUpdate' - - 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: "{{ medium_request_size_limit }}" - - name: collectionCopy request_path: "{{ collection_prefix }}/v1/copy" upstream_url: "{{ content_service_url }}/collection/v4/copy" From 90aff364a82b9ef779299ec743cad2586d723820 Mon Sep 17 00:00:00 2001 From: Vaibhav Date: Tue, 28 Dec 2021 14:27:56 +0530 Subject: [PATCH 268/298] Issue #SB-26381 feat: added sunbird accessibility guidelines url config (#3103) --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 55a9302f19..554a1be92f 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -151,3 +151,4 @@ use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} #release-4.6.0 sunbird_contextual_help_config={{ contextual_help_config }} +sunbird_accessibility_guidelines_url={{ sunbird_accessibility_guidelines_url | default("") }} From 3efa867cd4fdd658ae82067ea96b1d50eb336fca Mon Sep 17 00:00:00 2001 From: Anil Gupta Date: Thu, 30 Dec 2021 19:04:48 +0530 Subject: [PATCH 269/298] Issue #SB-28190 chore: Updated the config for media base url. (#3110) * Issue #SB-28190 chore: Updated the config for media base url. * Issue #SB-28190 chore: Updated the config for media base url. --- ansible/inventory/env/group_vars/all.yml | 1 + .../stack-sunbird/templates/content-service_application.conf | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ansible/inventory/env/group_vars/all.yml b/ansible/inventory/env/group_vars/all.yml index 0654d178fa..52572e92e5 100644 --- a/ansible/inventory/env/group_vars/all.yml +++ b/ansible/inventory/env/group_vars/all.yml @@ -200,6 +200,7 @@ sunbird_data_service_api_key: "{{ core_vault_sunbird_ekstep_api_key }}" sunbird_content_service_api_base_url: "http://{{sunbird_swarm_manager_lb_ip}}:9002" sunbird_user_service_api_base_url: "http://{{sunbird_swarm_manager_lb_ip}}:9000" sunbird_group_service_api_base_url: "http://groups-service:9000" +plugin_media_base_url: "{{proto}}://{{domain_name}}" #API Manager kong_postgres_port: 5432 diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 7204f4db93..777c18171e 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -387,7 +387,7 @@ content { props_to_remove: ["downloadUrl", "artifactUrl", "variants", "createdOn", "collections", "children", "lastUpdatedOn", "SYS_INTERNAL_LAST_UPDATED_ON", "versionKey", "s3Key", "status", "pkgVersion", "toc_url", "mimeTypesCount", "contentTypesCount", "leafNodesCount", "childNodes", "prevState", "lastPublishedOn", "flagReasons", "compatibilityLevel", "size", "publishChecklist", "publishComment", "LastPublishedBy", "rejectReasons", "rejectComment", "gradeLevel", "subject", "medium", "board", "topic", "purpose", "subtopic", "contentCredits", "owner", "collaborators", "creators", "contributors", "badgeAssertions", "dialcodes", "concepts", "keywords", "reservedDialcodes", "dialcodeRequired", "leafNodes", "sYS_INTERNAL_LAST_UPDATED_ON", "prevStatus", "lastPublishedBy", "streamingUrl", "boardIds", "gradeLevelIds", "subjectIds", "mediumIds", "topicsIds", "targetFWIds", "targetBoardIds", "targetGradeLevelIds", "targetSubjectIds", "targetMediumIds", "targetTopicIds", "se_boards", "se_subjects", "se_mediums", "se_gradeLevels", "se_topics", "se_FWIds", "se_boardIds", "se_subjectIds", "se_mediumIds", "se_gradeLevelIds", "se_topicIds"] } media { - base_url: "{{content_media_base_url | default(proto + '://' + domain_name)}}" + base.url: "{{content_media_base_url | default(proto + '://' + domain_name)}}" } } @@ -580,3 +580,5 @@ objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_stor # Framework master category validation master.category.validation.enabled="{{ master_category_validation_enabled }}" + +plugin.media.base.url="{{ plugin_media_base_url }}" From d2c8c2c6dad9065bfaf3387d55d620dfae204507 Mon Sep 17 00:00:00 2001 From: Keshav Prasad Date: Mon, 3 Jan 2022 10:49:20 +0530 Subject: [PATCH 270/298] Merge release 4.5.0 vdn to 4.6.0 vdn (#3120) * fix: adding log4j env property injection (#3070) * fix: add _JAVA_OPTIONS (#3073) * fix: add _JAVA_OPTIONS, cleanup of charts (#3074) * ansible updates to add log4j env to service file in vdn env (#3076) * Issue #SB-26446: Env vars for transcript (#3055) * Issue #SB-28194 fix: bulk upload name & description length added as a configuration (#3118) Co-authored-by: Akhil <30873558+saiakhil46@users.noreply.github.com> Co-authored-by: Amol Ghatol Co-authored-by: Kartheek Palla --- ansible/roles/cassandra/tasks/main.yml | 18 ++++++++++++++++++ .../roles/cassandra/templates/override.conf.j2 | 2 ++ .../templates/systemd/elasticsearch.j2 | 1 + .../es6/templates/systemd/elasticsearch.j2 | 1 + .../templates/keycloak-service.j2 | 2 +- .../log-es6/templates/systemd/elasticsearch.j2 | 1 + .../logstash/templates/logstash.service.j2 | 1 + .../stack-sunbird/templates/sunbird_player.env | 7 +++++++ 8 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 ansible/roles/cassandra/templates/override.conf.j2 diff --git a/ansible/roles/cassandra/tasks/main.yml b/ansible/roles/cassandra/tasks/main.yml index 34a0527be2..96571be2b9 100755 --- a/ansible/roles/cassandra/tasks/main.yml +++ b/ansible/roles/cassandra/tasks/main.yml @@ -60,6 +60,24 @@ pause: seconds: 10 +- name: Make sure systemd destination dir exists + file: + path: "/etc/systemd/system/cassandra.service.d" + state: directory + mode: "755" + +- name: Copy specific cassandra Systemd config file + template: + src: "override.conf.j2" + dest: "/etc/systemd/system/cassandra.service.d/override.conf" + owner: root + group: cassandra + mode: "644" + force: yes + +- name: Force systemd to reread configs + systemd: daemon_reload=yes + - name: Restart Cassandra now service: name: cassandra diff --git a/ansible/roles/cassandra/templates/override.conf.j2 b/ansible/roles/cassandra/templates/override.conf.j2 new file mode 100644 index 0000000000..8e17e59547 --- /dev/null +++ b/ansible/roles/cassandra/templates/override.conf.j2 @@ -0,0 +1,2 @@ +[Service] +Environment="_JAVA_OPTIONS='-Dlog4j2.formatMsgNoLookups=true'" diff --git a/ansible/roles/elasticsearch/templates/systemd/elasticsearch.j2 b/ansible/roles/elasticsearch/templates/systemd/elasticsearch.j2 index dafae587f0..75cfbf618c 100755 --- a/ansible/roles/elasticsearch/templates/systemd/elasticsearch.j2 +++ b/ansible/roles/elasticsearch/templates/systemd/elasticsearch.j2 @@ -5,6 +5,7 @@ Wants=network-online.target After=network-online.target [Service] +Environment="_JAVA_OPTIONS='-Dlog4j2.formatMsgNoLookups=true'" Environment=ES_HOME={{es_home}} Environment=CONF_DIR={{conf_dir}} Environment=DATA_DIR={{ data_dirs | array_to_str }} diff --git a/ansible/roles/es6/templates/systemd/elasticsearch.j2 b/ansible/roles/es6/templates/systemd/elasticsearch.j2 index 8bd5545c02..1c32b1f5a3 100644 --- a/ansible/roles/es6/templates/systemd/elasticsearch.j2 +++ b/ansible/roles/es6/templates/systemd/elasticsearch.j2 @@ -5,6 +5,7 @@ Wants=network-online.target After=network-online.target [Service] +Environment="_JAVA_OPTIONS='-Dlog4j2.formatMsgNoLookups=true'" Environment=ES_HOME={{es_home}} Environment=CONF_DIR={{conf_dir}} Environment=ES_PATH_CONF={{conf_dir}} diff --git a/ansible/roles/keycloak-provision/templates/keycloak-service.j2 b/ansible/roles/keycloak-provision/templates/keycloak-service.j2 index b11aff94bf..eaa3c9a4d3 100644 --- a/ansible/roles/keycloak-provision/templates/keycloak-service.j2 +++ b/ansible/roles/keycloak-provision/templates/keycloak-service.j2 @@ -1,7 +1,7 @@ #!/bin/bash keycloakuser=keycloak keycloakpath=/opt/keycloak/bin - +_JAVA_OPTIONS='-Dlog4j2.formatMsgNoLookups=true' # Normal output log LOGOUT=/var/log/keycloak.out.log # Error output log diff --git a/ansible/roles/log-es6/templates/systemd/elasticsearch.j2 b/ansible/roles/log-es6/templates/systemd/elasticsearch.j2 index 8bd5545c02..1c32b1f5a3 100644 --- a/ansible/roles/log-es6/templates/systemd/elasticsearch.j2 +++ b/ansible/roles/log-es6/templates/systemd/elasticsearch.j2 @@ -5,6 +5,7 @@ Wants=network-online.target After=network-online.target [Service] +Environment="_JAVA_OPTIONS='-Dlog4j2.formatMsgNoLookups=true'" Environment=ES_HOME={{es_home}} Environment=CONF_DIR={{conf_dir}} Environment=ES_PATH_CONF={{conf_dir}} diff --git a/ansible/roles/logstash/templates/logstash.service.j2 b/ansible/roles/logstash/templates/logstash.service.j2 index 2438bd78ad..fa46eddc16 100644 --- a/ansible/roles/logstash/templates/logstash.service.j2 +++ b/ansible/roles/logstash/templates/logstash.service.j2 @@ -2,6 +2,7 @@ Description=logstash Daemon [Service] +Environment="_JAVA_OPTIONS='-Dlog4j2.formatMsgNoLookups=true'" Type=simple User={{learner_user}} Group={{learner_user}} diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 554a1be92f..1feab26a9b 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -148,6 +148,13 @@ dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} sunbird_kong_refresh_token_api=https://{{sunbird_domain_name}}/auth/v1/refresh/token use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} +sunbird_transcript_supported_languages={{sunbird_transcript_supported_languages | default('English, Hindi, Assamese, Bengali, Gujarati, Kannada, Malayalam, Marathi, Nepali, Odia, Punjabi, Tamil, Telugu, Urdu, Sanskrit, Maithili, Munda, Santali, Juang, Ho, Oriya')}} +sunbird_transcript_file_format={{sunbird_transcript_file_format | default('srt')}} +sunbird_transcript_required={{sunbird_transcript_required | default('false')}} + +#release-4.5.0 +sunbird_bulk_upload_name_length={{ sunbird_bulk_upload_name_length | default('50') }} +sunbird_bulk_upload_description_length={{ sunbird_bulk_upload_description_length | default('500') }} #release-4.6.0 sunbird_contextual_help_config={{ contextual_help_config }} From e2fe51545ce63e199563ad9b8e245d423d85ba00 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 12 Jan 2022 19:02:30 +0530 Subject: [PATCH 271/298] Issue #000: Env vars for collection children limits --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 1feab26a9b..2549270caa 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -159,3 +159,5 @@ sunbird_bulk_upload_description_length={{ sunbird_bulk_upload_description_length #release-4.6.0 sunbird_contextual_help_config={{ contextual_help_config }} sunbird_accessibility_guidelines_url={{ sunbird_accessibility_guidelines_url | default("") }} +sunbird_collection_children_limit= {{ sunbird_collection_children_limit | default(1200)}} +sunbird_questionset_children_limit= {{ sunbird_questionset_children_limit | default(500)}} From 4ec7dcf3b5acccd0aa84f78cd6d4c3c4212c5730 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 12 Jan 2022 19:26:05 +0530 Subject: [PATCH 272/298] Issue #SB-26662 fix: Env vars for collection children limits --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 2549270caa..ff125071d6 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -159,5 +159,5 @@ sunbird_bulk_upload_description_length={{ sunbird_bulk_upload_description_length #release-4.6.0 sunbird_contextual_help_config={{ contextual_help_config }} sunbird_accessibility_guidelines_url={{ sunbird_accessibility_guidelines_url | default("") }} -sunbird_collection_children_limit= {{ sunbird_collection_children_limit | default(1200)}} -sunbird_questionset_children_limit= {{ sunbird_questionset_children_limit | default(500)}} +sunbird_collection_children_limit={{ sunbird_collection_children_limit | default(1200)}} +sunbird_questionset_children_limit={{ sunbird_questionset_children_limit | default(500)}} From 64b791ec3ac8883ebdbc33d57b3695cb2b80937c Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 12 Jan 2022 19:31:54 +0530 Subject: [PATCH 273/298] Issue #SB-26662 fix: Env vars for collection children limits --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index ff125071d6..d431e6e313 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -159,5 +159,5 @@ sunbird_bulk_upload_description_length={{ sunbird_bulk_upload_description_length #release-4.6.0 sunbird_contextual_help_config={{ contextual_help_config }} sunbird_accessibility_guidelines_url={{ sunbird_accessibility_guidelines_url | default("") }} -sunbird_collection_children_limit={{ sunbird_collection_children_limit | default(1200)}} -sunbird_questionset_children_limit={{ sunbird_questionset_children_limit | default(500)}} +sunbird_collection_children_limit={{ sunbird_collection_children_limit | default(1200) }} +sunbird_questionset_children_limit={{ sunbird_questionset_children_limit | default(500) }} From b35c93ea17ab43375afccea27ac93d82ad3083bc Mon Sep 17 00:00:00 2001 From: Manoj Singh Rawat Date: Thu, 31 Mar 2022 19:38:36 +0530 Subject: [PATCH 274/298] change upstream URL for private search (#3270) --- ansible/roles/kong-api/defaults/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index b4ab5dff4a..fbc54fe81f 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -100,6 +100,7 @@ lms_service_url: "http://lms-service:9000" cert_service_url: "http://cert-service:9000" cert_registry_service_url: "http://cert-registry-service:9000" content_service_url: "http://content-service:9000" +search_service_url: "http://search-service:9000" report_service_url: "http://report-service:3030" opensaber_service_url: "http://opensaber-service:8080" program_service_url: "http://program-service:6000" @@ -414,7 +415,7 @@ kong_apis: - name: compositePrivateSearch request_path: "{{ composite_service_prefix }}/v1/private/search" - upstream_url: "{{ knowledge_mw_service_url }}/v3/private/search" + upstream_url: "{{ search_service_url }}/v3/private/search" strip_request_path: true plugins: - name: jwt From af864fca70266fd637af6f56973811553e819902 Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Fri, 8 Apr 2022 13:06:14 +0530 Subject: [PATCH 275/298] Issue #SB-29466 feat: enabled cache for question & questionset (#3283) --- .../templates/assessment-service_application.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 7b50f0ffe3..2100885425 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -421,3 +421,6 @@ import { # Framework master category validation master.category.validation.enabled="{{ master_category_validation_enabled }}" + +question.cache.enable=true +questionset.cache.enable=true From 026c117e2821d089a426342ddd0b90a2f43f5866 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Thu, 19 May 2022 13:09:04 +0530 Subject: [PATCH 276/298] default value updated for transcript_supported_languages --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index d431e6e313..0e345e29dc 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -148,7 +148,7 @@ dock_default_file_size={{ dock_default_file_size | default(150) }} dock_default_video_size={{ dock_default_video_size | default(15000) }} sunbird_kong_refresh_token_api=https://{{sunbird_domain_name}}/auth/v1/refresh/token use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} -sunbird_transcript_supported_languages={{sunbird_transcript_supported_languages | default('English, Hindi, Assamese, Bengali, Gujarati, Kannada, Malayalam, Marathi, Nepali, Odia, Punjabi, Tamil, Telugu, Urdu, Sanskrit, Maithili, Munda, Santali, Juang, Ho, Oriya')}} +sunbird_transcript_supported_languages={{sunbird_transcript_supported_languages | default('[{"language":"English","languageCode":"en"},{"language":"Hindi","languageCode":"hi"},{"language":"Assamese","languageCode":"as"},{"language":"Bengali","languageCode":"bn"},{"language":"Gujarati","languageCode":"gu"},{"language":"Kannada","languageCode":"ka"},{"language":"Marathi","languageCode":"mr"},{"language":"Odia","languageCode":"or"},{"language":"Tamil","languageCode":"ta"},{"language":"Telugu","languageCode":"te"}]')}} sunbird_transcript_file_format={{sunbird_transcript_file_format | default('srt')}} sunbird_transcript_required={{sunbird_transcript_required | default('false')}} From 6bd12ee5ec1d418901f2c25a24cb757fc2573206 Mon Sep 17 00:00:00 2001 From: Joffin Joy <35325730+joffinjoy@users.noreply.github.com> Date: Thu, 19 May 2022 17:18:24 +0530 Subject: [PATCH 277/298] Issue #SB-29145 feat: Added QuestionSet & Question Copy APIs (#3337) --- ansible/roles/kong-api/defaults/main.yml | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index fbc54fe81f..ce7f4f3db8 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6265,6 +6265,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionCopy + request_path: "{{ question_prefix }}/v1/copy" + upstream_url: "{{ assessment_service_url }}/question/v4/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + - name: questionSetCreate request_path: "{{ questionset_prefix }}/v1/create" upstream_url: "{{ assessment_service_url }}/questionset/v4/create" @@ -6477,6 +6495,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionsetCopy + request_path: "{{ questionset_prefix }}/v1/copy" + upstream_url: "{{ assessment_service_url }}/questionset/v4/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + - name: collectionHierarchyRead request_path: "{{ content_prefix }}/v1/hierarchy" upstream_url: "{{ content_service_url }}/content/v3/hierarchy" From c6a9dd53f0c313acef345279b6155fe5529bc07f Mon Sep 17 00:00:00 2001 From: Joffin Joy <35325730+joffinjoy@users.noreply.github.com> Date: Fri, 20 May 2022 14:48:43 +0530 Subject: [PATCH 278/298] Release 4.9.0 vdn (#3340) --- ansible/roles/kong-api/defaults/main.yml | 36 +++++++++++++++++++ .../assessment-service_application.conf | 10 ++++++ 2 files changed, 46 insertions(+) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index fbc54fe81f..ce7f4f3db8 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -6265,6 +6265,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionCopy + request_path: "{{ question_prefix }}/v1/copy" + upstream_url: "{{ assessment_service_url }}/question/v4/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + - name: questionSetCreate request_path: "{{ questionset_prefix }}/v1/create" upstream_url: "{{ assessment_service_url }}/questionset/v4/create" @@ -6477,6 +6495,24 @@ kong_apis: - name: request-size-limiting config.allowed_payload_size: "{{ medium_request_size_limit }}" + - name: questionsetCopy + request_path: "{{ questionset_prefix }}/v1/copy" + upstream_url: "{{ assessment_service_url }}/questionset/v4/copy" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentCreate' + - 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: "{{ medium_request_size_limit }}" + - name: collectionHierarchyRead request_path: "{{ content_prefix }}/v1/hierarchy" upstream_url: "{{ content_service_url }}/content/v3/hierarchy" diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 2100885425..4da96e6f0a 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -424,3 +424,13 @@ master.category.validation.enabled="{{ master_category_validation_enabled }}" question.cache.enable=true questionset.cache.enable=true +assessment.copy.origin_data=["name", "author", "license", "organisation"] +assessment.copy.props_to_remove=["downloadUrl", "artifactUrl", "variants", + "createdOn", "collections", "children", "lastUpdatedOn", "SYS_INTERNAL_LAST_UPDATED_ON", + "versionKey", "s3Key", "status", "pkgVersion", "toc_url", "mimeTypesCount", + "contentTypesCount", "leafNodesCount", "childNodes", "prevState", "lastPublishedOn", + "flagReasons", "compatibilityLevel", "size", "publishChecklist", "publishComment", + "LastPublishedBy", "rejectReasons", "rejectComment", "gradeLevel", "subject", + "medium", "board", "topic", "purpose", "subtopic", "contentCredits", + "owner", "collaborators", "creators", "contributors", "badgeAssertions", "dialcodes", + "concepts", "keywords", "reservedDialcodes", "dialcodeRequired", "leafNodes", "sYS_INTERNAL_LAST_UPDATED_ON", "prevStatus", "lastPublishedBy", "streamingUrl"] \ No newline at end of file From 4adc22b0fe7583aa42e230471e0b3f9b25c7b8ae Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Fri, 3 Jun 2022 12:43:26 +0530 Subject: [PATCH 279/298] Issue #sb-000: default value updated for transcript_file_format (#3364) --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 0e345e29dc..31c383acd0 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -149,7 +149,7 @@ dock_default_video_size={{ dock_default_video_size | default(15000) }} sunbird_kong_refresh_token_api=https://{{sunbird_domain_name}}/auth/v1/refresh/token use_sunbird_kong_token={{dock_use_sunbird_kong_token | default('true')}} sunbird_transcript_supported_languages={{sunbird_transcript_supported_languages | default('[{"language":"English","languageCode":"en"},{"language":"Hindi","languageCode":"hi"},{"language":"Assamese","languageCode":"as"},{"language":"Bengali","languageCode":"bn"},{"language":"Gujarati","languageCode":"gu"},{"language":"Kannada","languageCode":"ka"},{"language":"Marathi","languageCode":"mr"},{"language":"Odia","languageCode":"or"},{"language":"Tamil","languageCode":"ta"},{"language":"Telugu","languageCode":"te"}]')}} -sunbird_transcript_file_format={{sunbird_transcript_file_format | default('srt')}} +sunbird_transcript_file_format={{sunbird_transcript_file_format | default('vtt')}} sunbird_transcript_required={{sunbird_transcript_required | default('false')}} #release-4.5.0 From 12ea6721c903f42c02eb3d42070f09bd1547deea Mon Sep 17 00:00:00 2001 From: Kumar Gauraw Date: Wed, 17 Aug 2022 12:11:42 +0530 Subject: [PATCH 280/298] Issue #SB-29145 feat: updated config for copy api --- .../templates/assessment-service_application.conf | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index 2100885425..203ed891f2 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -424,3 +424,14 @@ master.category.validation.enabled="{{ master_category_validation_enabled }}" question.cache.enable=true questionset.cache.enable=true + +assessment.copy.origin_data=["name", "author", "license", "organisation"] +assessment.copy.props_to_remove=["downloadUrl", "artifactUrl", "variants", + "createdOn", "collections", "children", "lastUpdatedOn", "SYS_INTERNAL_LAST_UPDATED_ON", + "versionKey", "s3Key", "status", "pkgVersion", "toc_url", "mimeTypesCount", + "contentTypesCount", "leafNodesCount", "childNodes", "prevState", "lastPublishedOn", + "flagReasons", "compatibilityLevel", "size", "publishChecklist", "publishComment", + "LastPublishedBy", "rejectReasons", "rejectComment", "gradeLevel", "subject", + "medium", "board", "topic", "purpose", "subtopic", "contentCredits", + "owner", "collaborators", "creators", "contributors", "badgeAssertions", "dialcodes", + "concepts", "keywords", "reservedDialcodes", "dialcodeRequired", "leafNodes", "sYS_INTERNAL_LAST_UPDATED_ON", "prevStatus", "lastPublishedBy", "streamingUrl"] From 3c178983a77dffcf1bc7ac70a5baf179c7427981 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Thu, 18 Aug 2022 11:38:12 +0530 Subject: [PATCH 281/298] colud storage provider value taking from env --- ansible/roles/stack-sunbird/templates/sunbird_player.env | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index 31c383acd0..c075b87e3a 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -161,3 +161,6 @@ sunbird_contextual_help_config={{ contextual_help_config }} sunbird_accessibility_guidelines_url={{ sunbird_accessibility_guidelines_url | default("") }} sunbird_collection_children_limit={{ sunbird_collection_children_limit | default(1200) }} sunbird_questionset_children_limit={{ sunbird_questionset_children_limit | default(500) }} + +#release-5.0.0 +sunbird_cloud_storage_provider={{ sunbird_cloud_storage_provider | default('AZURE') }} From ad4cba0445b7d478fc1e152358d7a3a16f350b38 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 23 Nov 2022 15:09:54 +0530 Subject: [PATCH 282/298] Issue #CO-140 fix: Added CSP related changes in coKreat portal env --- .../roles/stack-sunbird/templates/sunbird_player.env | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index c075b87e3a..e4e93e7758 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -163,4 +163,14 @@ sunbird_collection_children_limit={{ sunbird_collection_children_limit | default sunbird_questionset_children_limit={{ sunbird_questionset_children_limit | default(500) }} #release-5.0.0 -sunbird_cloud_storage_provider={{ sunbird_cloud_storage_provider | default('AZURE') }} +sunbird_cloud_storage_provider={{ sunbird_cloud_storage_provider | default('azure') }} + +#release-5.1.0 +sunbird_send_reminder_enabled={{sunbird_send_reminder_enabled | default('false')}} +# Cloud Storage Config release-5.1.0 +sunbird_cloud_storage_key: "{{cloud_private_storage_accountname | default("")}}" +sunbird_cloud_storage_secret: "{{cloud_private_storage_secret | default("")}}" +sunbird_cloud_storage_container: "{{cloud_storage_public_bucketname | default("")}}" +sunbird_cloud_report_container: "{{cloud_storage_privatereports_bucketname | default("reports")}}" +sunbird_cloud_storage_region: {{cloud_private_storage_region | default("")}} +sunbird_gcloud_project_id: {{cloud_public_storage_project | default("")}} \ No newline at end of file From aebda8fdd3d821952dccec5d5644cdbbca736f81 Mon Sep 17 00:00:00 2001 From: Kartheek Palla Date: Wed, 23 Nov 2022 15:11:39 +0530 Subject: [PATCH 283/298] Issue #CO-140 fix: Added CSP related changes in coKreat portal env --- .../roles/stack-sunbird/templates/sunbird_player.env | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ansible/roles/stack-sunbird/templates/sunbird_player.env b/ansible/roles/stack-sunbird/templates/sunbird_player.env index e4e93e7758..f1566adc49 100644 --- a/ansible/roles/stack-sunbird/templates/sunbird_player.env +++ b/ansible/roles/stack-sunbird/templates/sunbird_player.env @@ -168,9 +168,9 @@ sunbird_cloud_storage_provider={{ sunbird_cloud_storage_provider | default('azur #release-5.1.0 sunbird_send_reminder_enabled={{sunbird_send_reminder_enabled | default('false')}} # Cloud Storage Config release-5.1.0 -sunbird_cloud_storage_key: "{{cloud_private_storage_accountname | default("")}}" -sunbird_cloud_storage_secret: "{{cloud_private_storage_secret | default("")}}" -sunbird_cloud_storage_container: "{{cloud_storage_public_bucketname | default("")}}" -sunbird_cloud_report_container: "{{cloud_storage_privatereports_bucketname | default("reports")}}" -sunbird_cloud_storage_region: {{cloud_private_storage_region | default("")}} -sunbird_gcloud_project_id: {{cloud_public_storage_project | default("")}} \ No newline at end of file +sunbird_cloud_storage_key={{cloud_private_storage_accountname | default("")}} +sunbird_cloud_storage_secret={{cloud_private_storage_secret | default("")}} +sunbird_cloud_storage_container={{cloud_storage_public_bucketname | default("")}} +sunbird_cloud_report_container={{cloud_storage_privatereports_bucketname | default("reports")}} +sunbird_cloud_storage_region={{cloud_private_storage_region | default("")}} +sunbird_gcloud_project_id={{cloud_public_storage_project | default("")}} \ No newline at end of file From 25ff75943ab42ef926f3109e452fa2b79ccbb13a Mon Sep 17 00:00:00 2001 From: anilgupta Date: Wed, 14 Dec 2022 11:03:24 +0530 Subject: [PATCH 284/298] Issue #KN-439 chore: Mering the changes from release-5.2.0-knowlg to release-5.1.0-vdn --- ansible/roles/stack-sunbird/defaults/main.yml | 4 +++ .../content-service_application.conf | 28 +++++++++++++++---- .../taxonomy-service_application.conf | 17 ++++++++--- 3 files changed, 40 insertions(+), 9 deletions(-) diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index 7dba5e0db3..b8d811d853 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -805,3 +805,7 @@ master_category_validation_enabled: "Yes" #sourcing portal contextual_help_config: '{"sourcing":{"manageUsers":{"url":"/sourcing/help","header":"Inviting users will allow you to assign them roles for projects","message":"You can invite users to your organization by clicking on Invite Users and sharing an invitation link with them"}},"contribute":{"manageUsers":{"url":"/contribute/help","header":"Inviting users will allow you to assign them roles for projects","message":"You can invite users to your organization by clicking on Invite Users and sharing an invitation link with them"}}}' + +cloudstorage_relative_path_prefix_content: "CONTENT_STORAGE_BASE_PATH" +cloudstorage_relative_path_prefix_dial: "DIAL_STORAGE_BASE_PATH" +cloudstorage_metadata_list: '["appIcon", "artifactUrl", "posterImage", "previewUrl", "thumbnail", "assetsMap", "certTemplate", "itemSetPreviewUrl", "grayScaleAppIcon", "sourceURL", "variants", "downloadUrl", "streamingUrl", "toc_url", "data", "question", "solutions", "editorState", "media", "pdfUrl"]' \ No newline at end of file diff --git a/ansible/roles/stack-sunbird/templates/content-service_application.conf b/ansible/roles/stack-sunbird/templates/content-service_application.conf index 777c18171e..e1da424fda 100644 --- a/ansible/roles/stack-sunbird/templates/content-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/content-service_application.conf @@ -378,7 +378,7 @@ content { } h5p { library { - path: "https://s3.ap-south-1.amazonaws.com/ekstep-public-prod/content/templates/h5p-library-latest.zip" + path: "{{ h5p_library_path | default('https://sunbirddev.blob.core.windows.net/sunbird-content-dev/h5p-standalone-1.3.4.zip') }}" } } copy { @@ -477,10 +477,11 @@ composite { url : "{{ sunbird_search_service_api_base_url }}/v3/search" } } -cloud_storage_type: "azure" -azure_storage_key: "{{ sunbird_public_storage_account_name }}" -azure_storage_secret: "{{ sunbird_public_storage_account_key }}" -azure_storage_container: "{{ sunbird_content_azure_storage_container }}" +cloud_storage_type: "{{ cloud_service_provider }}" +cloud_storage_key: "{{ cloud_public_storage_accountname }}" +cloud_storage_secret: "{{ cloud_public_storage_secret }}" +cloud_storage_endpoint: "{{ cloud_public_storage_endpoint }}" +cloud_storage_container: "{{ cloud_storage_content_bucketname }}" # Google Drive APIKEY learning_content_drive_apiKey = "{{ learning_content_drive_apiKey }}" @@ -489,6 +490,7 @@ kafka { urls : "{{ kafka_urls }}" topic.send.enable : true topics.instruction : "{{ env_name }}.learning.job.request" + publish.request.topic : "{{ env_name }}.publish.job.request" } # DIAL Link Config @@ -496,8 +498,16 @@ dial_service { api { base_url : "{{ sunbird_dial_repo_api_base_url }}" auth_key : "{{ sunbird_dial_repo_api_key }}" + search : "/dialcode/v3/search" + generate : "/dialcode/v3/generate" } } + +reserve_dialcode { + mimeType : ["application/vnd.ekstep.content-collection"] + max_count : 250 +} + content.link_dialcode.validation=true content.link_dialcode.max_limit=10 @@ -582,3 +592,11 @@ objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_stor master.category.validation.enabled="{{ master_category_validation_enabled }}" plugin.media.base.url="{{ plugin_media_base_url }}" + +cloudstorage { + metadata.replace_absolute_path={{ cloudstorage_replace_absolute_path | default('false') }} + relative_path_prefix={{ cloudstorage_relative_path_prefix_content }} + metadata.list={{ cloudstorage_metadata_list }} + read_base_path="{{ cloudstorage_base_path }}" + write_base_path={{ valid_cloudstorage_base_urls }} +} \ No newline at end of file diff --git a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf index 2340aceecd..5ae198c7b2 100644 --- a/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/taxonomy-service_application.conf @@ -363,10 +363,11 @@ platform { } # Cloud Storage Config -cloud_storage_type: "azure" -azure_storage_key: "{{ sunbird_public_storage_account_name }}" -azure_storage_secret: "{{ sunbird_public_storage_account_key }}" -azure_storage_container: "{{ sunbird_content_azure_storage_container }}" +cloud_storage_type: "{{ cloud_service_provider }}" +cloud_storage_key: "{{ cloud_public_storage_accountname }}" +cloud_storage_secret: "{{ cloud_public_storage_secret }}" +cloud_storage_endpoint: "{{ cloud_public_storage_endpoint }}" +cloud_storage_container: "{{ cloud_storage_content_bucketname }}" installation.id: ekstep @@ -395,5 +396,13 @@ objectcategorydefinition.keyspace="{{ cassandra_keyspace_prefix }}_category_stor # Framework master category validation supported values are Yes/No master.category.validation.enabled="{{ master_category_validation_enabled | default('Yes') }}" +cloudstorage { + metadata.replace_absolute_path={{ cloudstorage_replace_absolute_path | default('false') }} + relative_path_prefix={{ cloudstorage_relative_path_prefix_content }} + metadata.list={{ cloudstorage_metadata_list }} + read_base_path="{{ cloudstorage_base_path }}" + write_base_path={{ valid_cloudstorage_base_urls }} +} + # This will override all taxonamy service application configs from ansible {{taxonamy_service_config_override|d('')}} From 116d52d9bff177c247beef0f481cfc47af14cc43 Mon Sep 17 00:00:00 2001 From: santhosh-tg Date: Thu, 15 Dec 2022 11:43:11 +0530 Subject: [PATCH 285/298] Update assessment service with CSP vars --- .../templates/assessment-service_application.conf | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf index d5dd6e5630..76cab4c4c4 100644 --- a/ansible/roles/stack-sunbird/templates/assessment-service_application.conf +++ b/ansible/roles/stack-sunbird/templates/assessment-service_application.conf @@ -434,3 +434,15 @@ assessment.copy.props_to_remove=["downloadUrl", "artifactUrl", "variants", "medium", "board", "topic", "purpose", "subtopic", "contentCredits", "owner", "collaborators", "creators", "contributors", "badgeAssertions", "dialcodes", "concepts", "keywords", "reservedDialcodes", "dialcodeRequired", "leafNodes", "sYS_INTERNAL_LAST_UPDATED_ON", "prevStatus", "lastPublishedBy", "streamingUrl"] + +## CSP changes + +cloud_storage_container: "{{ cloud_storage_content_bucketname }}" + +cloudstorage { + metadata.replace_absolute_path={{ cloudstorage_replace_absolute_path | default('false') }} + metadata.list={{ cloudstorage_metadata_list }} + relative_path_prefix="{{ cloudstorage_relative_path_prefix | default('CLOUD_STORAGE_BASE_PATH') }}" + read_base_path="{{ cloudstorage_base_path }}" + write_base_path={{ valid_cloudstorage_base_urls }} +} From 16a4b4a61321d044dbe60c77bdae15eb9978e287 Mon Sep 17 00:00:00 2001 From: santhosh-tg <93243580+santhosh-tg@users.noreply.github.com> Date: Thu, 22 Dec 2022 12:08:19 +0530 Subject: [PATCH 286/298] Release 5.1.0 vdn - CSP changes (#3680) * Add CSP specific roles and playbook updates --- ansible/artifacts-download.yml | 40 ++- ansible/artifacts-upload.yml | 41 ++- ansible/assets-upload.yml | 75 +++++- ansible/deploy-plugins.yml | 246 +++++++++++++++--- ansible/desktop-faq-upload.yml | 224 +++++++++++++++- ansible/kp_upload-schema.yml | 43 ++- ansible/roles/aws-cli/defaults/main.yml | 1 + ansible/roles/aws-cli/tasks/main.yml | 24 ++ .../roles/aws-cloud-storage/defaults/main.yml | 3 + .../aws-cloud-storage/tasks/delete-folder.yml | 9 + .../roles/aws-cloud-storage/tasks/delete.yml | 9 + .../aws-cloud-storage/tasks/download.yml | 9 + .../roles/aws-cloud-storage/tasks/main.yml | 18 ++ .../aws-cloud-storage/tasks/upload-folder.yml | 9 + .../roles/aws-cloud-storage/tasks/upload.yml | 9 + ansible/roles/azure-cli/tasks/main.yml | 31 ++- .../azure-cloud-storage/defaults/main.yml | 72 +++++ .../tasks/blob-delete-batch-no-poll.yml | 5 + .../tasks/blob-delete-batch.yml | 5 + .../tasks/blob-download.yml | 5 + .../tasks/blob-upload-batch-no-poll.yml | 5 + .../tasks/blob-upload-batch.yml | 11 + .../azure-cloud-storage/tasks/blob-upload.yml | 11 + .../tasks/container-create.yml | 8 + .../tasks/delete-using-azcopy.yml | 17 ++ .../roles/azure-cloud-storage/tasks/main.yml | 21 ++ .../tasks/upload-using-azcopy.yml | 23 ++ ansible/roles/cert-templates/tasks/main.yml | 60 +++-- ansible/roles/gcloud-cli/tasks/main.yml | 19 ++ .../roles/gcp-cloud-storage/defaults/main.yml | 49 ++++ .../tasks/delete-batch-no-poll.yml | 6 + .../gcp-cloud-storage/tasks/delete-batch.yml | 11 + .../gcp-cloud-storage/tasks/download.yml | 11 + .../gcp-cloud-storage/tasks/gcloud-auth.yml | 14 + .../gcp-cloud-storage/tasks/gcloud-revoke.yml | 8 + .../roles/gcp-cloud-storage/tasks/main.yml | 20 ++ .../tasks/upload-batch-no-poll.yml | 5 + .../gcp-cloud-storage/tasks/upload-batch.yml | 11 + .../roles/gcp-cloud-storage/tasks/upload.yml | 11 + ansible/upload-schemas.yml | 43 ++- 40 files changed, 1132 insertions(+), 110 deletions(-) create mode 100644 ansible/roles/aws-cli/defaults/main.yml create mode 100644 ansible/roles/aws-cli/tasks/main.yml create mode 100644 ansible/roles/aws-cloud-storage/defaults/main.yml create mode 100644 ansible/roles/aws-cloud-storage/tasks/delete-folder.yml create mode 100644 ansible/roles/aws-cloud-storage/tasks/delete.yml create mode 100644 ansible/roles/aws-cloud-storage/tasks/download.yml create mode 100644 ansible/roles/aws-cloud-storage/tasks/main.yml create mode 100644 ansible/roles/aws-cloud-storage/tasks/upload-folder.yml create mode 100644 ansible/roles/aws-cloud-storage/tasks/upload.yml create mode 100644 ansible/roles/azure-cloud-storage/defaults/main.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/blob-delete-batch-no-poll.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/blob-delete-batch.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/blob-download.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/blob-upload-batch-no-poll.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/blob-upload-batch.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/blob-upload.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/container-create.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/delete-using-azcopy.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/main.yml create mode 100644 ansible/roles/azure-cloud-storage/tasks/upload-using-azcopy.yml create mode 100644 ansible/roles/gcloud-cli/tasks/main.yml create mode 100644 ansible/roles/gcp-cloud-storage/defaults/main.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/delete-batch-no-poll.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/delete-batch.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/download.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/gcloud-auth.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/gcloud-revoke.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/main.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/upload-batch-no-poll.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/upload-batch.yml create mode 100644 ansible/roles/gcp-cloud-storage/tasks/upload.yml diff --git a/ansible/artifacts-download.yml b/ansible/artifacts-download.yml index feb78219b8..46167180e4 100644 --- a/ansible/artifacts-download.yml +++ b/ansible/artifacts-download.yml @@ -3,8 +3,38 @@ become: yes vars_files: - "{{inventory_dir}}/secrets.yml" - environment: - AZURE_STORAGE_ACCOUNT: "{{ sunbird_artifact_storage_account_name }}" - AZURE_STORAGE_SAS_TOKEN: "{{ sunbird_artifact_storage_account_sas }}" - roles: - - artifacts-download-azure + tasks: + - name: download artifact from azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-download.yml + vars: + blob_container_name: "{{ cloud_storage_artifacts_bucketname }}" + blob_file_name: "{{ artifact }}" + local_file_or_folder_path: "{{ artifact_path }}" + storage_account_name: "{{ cloud_artifact_storage_accountname }}" + storage_account_key: "{{ cloud_artifact_storage_secret }}" + when: cloud_service_provider == "azure" + + - name: download artifact from gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: download.yml + vars: + gcp_bucket_name: "{{ cloud_storage_artifacts_bucketname }}" + gcp_path: "{{ artifact }}" + local_file_or_folder_path: "{{ artifact_path }}" + when: cloud_service_provider == "gcloud" + + - name: download artifact from aws s3 + include_role: + name: aws-cloud-storage + tasks_from: download.yml + vars: + local_file_or_folder_path: "{{ artifact_path }}" + s3_bucket_name: "{{ cloud_storage_artifacts_bucketname }}" + s3_path: "{{ artifact }}" + aws_default_region: "{{ cloud_public_storage_region }}" + aws_access_key_id: "{{ cloud_artifact_storage_accountname }}" + aws_secret_access_key: "{{ cloud_artifact_storage_secret }}" + when: cloud_service_provider == "aws" diff --git a/ansible/artifacts-upload.yml b/ansible/artifacts-upload.yml index 772ec2cca4..3bdbe73017 100644 --- a/ansible/artifacts-upload.yml +++ b/ansible/artifacts-upload.yml @@ -3,8 +3,39 @@ become: yes vars_files: - "{{inventory_dir}}/secrets.yml" - environment: - AZURE_STORAGE_ACCOUNT: "{{ sunbird_artifact_storage_account_name }}" - AZURE_STORAGE_SAS_TOKEN: "{{ sunbird_artifact_storage_account_sas }}" - roles: - - artifacts-upload-azure + tasks: + - name: upload artifact to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload.yml + vars: + blob_container_name: "{{ cloud_storage_artifacts_bucketname }}" + container_public_access: "off" + blob_file_name: "{{ artifact }}" + local_file_or_folder_path: "{{ artifact_path }}" + storage_account_name: "{{ cloud_artifact_storage_accountname }}" + storage_account_key: "{{ cloud_artifact_storage_secret }}" + when: cloud_service_provider == "azure" + + - name: upload artifact to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload.yml + vars: + gcp_bucket_name: "{{ cloud_storage_artifacts_bucketname }}" + gcp_path: "{{ artifact }}" + local_file_or_folder_path: "{{ artifact_path }}" + when: cloud_service_provider == "gcloud" + + - name: upload artifact to aws s3 + include_role: + name: aws-cloud-storage + tasks_from: upload.yml + vars: + local_file_or_folder_path: "{{ artifact_path }}" + s3_bucket_name: "{{ cloud_storage_artifacts_bucketname }}" + s3_path: "{{ artifact }}" + aws_default_region: "{{ cloud_public_storage_region }}" + aws_access_key_id: "{{ cloud_artifact_storage_accountname }}" + aws_secret_access_key: "{{ cloud_artifact_storage_secret }}" + when: cloud_service_provider == "aws" diff --git a/ansible/assets-upload.yml b/ansible/assets-upload.yml index b356cf9362..09e7df6ceb 100644 --- a/ansible/assets-upload.yml +++ b/ansible/assets-upload.yml @@ -1,8 +1,75 @@ --- - hosts: localhost - vars: - ansible_connection: local vars_files: - ['{{inventory_dir}}/secrets.yml', 'secrets/{{env}}.yml'] - roles: - - assets-upload-azure + # Azure + tasks: + - name: this block consists of tasks related to azure storage + block: + - name: set common azure variables + set_fact: + blob_container_name: "{{ cloud_storage_playercdn_bucketname }}" + container_public_access: "container" + blob_container_folder_path: "" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + + - name: delete files and folders from azure storage using azcopy + include_role: + name: azure-cloud-storage + tasks_from: delete-using-azcopy.yml + + - name: upload batch of files to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + local_file_or_folder_path: "{{ assets }}" + when: cloud_service_provider == "azure" + +##### AWS + - name: this block consists of tasks related to aws storage + block: + - name: set common aws variables + set_fact: + s3_bucket_name: "{{ cloud_storage_playercdn_bucketname }}" + s3_path: "" + aws_default_region: "{{ cloud_public_storage_region }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + + - name: delete files and folders from s3 + include_role: + name: aws-cloud-storage + tasks_from: delete-folder.yml + + - name: upload batch of files to s3 + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + local_file_or_folder_path: "{{ assets }}" + when: cloud_service_provider == "aws" + + #GCP + - name: this block consists of tasks related to azure storage + block: + - name: set common gcloud variables + set_fact: + gcp_bucket_name: "{{ cloud_storage_playercdn_bucketname }}" + gcp_path: "" + file_delete_pattern: "" + + + - name: delete files and folders from gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: delete-batch.yml + + - name: upload batch of files to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + local_file_or_folder_path: "{{ assets }}/*" + when: cloud_service_provider == "gcloud" diff --git a/ansible/deploy-plugins.yml b/ansible/deploy-plugins.yml index cd2b5b512b..a78ce1c640 100644 --- a/ansible/deploy-plugins.yml +++ b/ansible/deploy-plugins.yml @@ -1,54 +1,222 @@ - hosts: local - become: yes gather_facts: no vars_files: - "{{inventory_dir}}/secrets.yml" - environment: - AZURE_STORAGE_ACCOUNT: "{{ sunbird_public_storage_account_name }}" - AZURE_STORAGE_SAS_TOKEN: "{{ sunbird_public_storage_account_sas }}" tasks: - name: rename env_domain in preview_cdn.html for CDN shell: | - echo "{{sunbird_portal_preview_cdn_url}}" - sed -i 's|cdn_url|{{sunbird_portal_preview_cdn_url}}|g' "{{currentws}}"/ansible/preview/preview_cdn.html + echo "{{ sunbird_portal_preview_cdn_url }}" + sed -i 's|cdn_url|{{ sunbird_portal_preview_cdn_url }}|g' "{{ currentws }}"/ansible/preview/preview_cdn.html when: sunbird_portal_preview_cdn_url is defined tags: - preview - - name: delete batch - shell: | - azcopy rm "https://{{ sunbird_public_storage_account_name }}.blob.core.windows.net/{{ plugin_container_name }}/{{ folder_name }}{{sunbird_public_storage_account_sas}}" --recursive=true - async: 3600 - poll: 10 - tags: - - content-editor - - collection-editor - - generic-editor - - preview + - name: this block consists of tasks related to azure storage + block: + - name: set common azure variables + set_fact: + blob_container_name: "{{ cloud_storage_content_bucketname }}" + container_public_access: "container" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + tags: + - always + no_log: True - - name: upload batch - command: "az storage blob upload-batch --destination {{ plugin_container_name }}/{{ folder_name }} --source {{ source_name }}" - async: 3600 - poll: 10 - tags: - - content-editor - - collection-editor - - generic-editor - - preview - - editor - - core-plugins + - block: + - name: delete files and folders from azure storage using azcopy + include_role: + name: azure-cloud-storage + tasks_from: delete-using-azcopy.yml + vars: + blob_container_folder_path: "/{{ folder_name }}" + tags: + - content-editor + - collection-editor + - generic-editor + - preview + + - block: + - name: upload batch of files to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + blob_container_folder_path: "/{{ folder_name }}" + local_file_or_folder_path: "{{ source_name }}" + tags: + - content-editor + - collection-editor + - generic-editor + - preview + - editor + - core-plugins + + - block: + - name: upload file to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload.yml + vars: + blob_file_name: "artefacts/content-player/content-player-{{ player_version_number }}.zip" + local_file_or_folder_path: "{{ source_file_name }}" + tags: + - preview + + - block: + - name: delete and re-upload plugins + include_role: + name: azure-cloud-storage + tasks_from: "{{ item[0] }}" + vars: + blob_delete_pattern: "content-plugins/{{ item[1] }}/*" + blob_container_folder_path: "/content-plugins/{{ item[1] }}" + local_file_or_folder_path: "{{ source_folder }}/{{ item[1] }}" + with_nested: + - ['blob-delete-batch-no-poll.yml', 'blob-upload-batch-no-poll.yml'] + - "{{ lookup('file', plugins_to_delete_and_upload).split('\n') }}" + tags: + - plugins + when: cloud_service_provider == "azure" + +### GCP tasks #### + - name: this block consists of tasks related to gcloud storage + block: + - name: set common gcloud variables + set_fact: + gcp_bucket_name: "{{ cloud_storage_content_bucketname }}" + gcp_path: "" + + tags: + - always + - block: + - name: delete files and folders from gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: delete-batch.yml + vars: + file_delete_pattern: "{{ folder_name }}" + tags: + - content-editor + - collection-editor + - generic-editor + - preview + + - block: + - name: upload batch of files to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + gcp_path: "{{ folder_name }}" + local_file_or_folder_path: "{{ source_name }}" + tags: + - content-editor + - collection-editor + - generic-editor + - preview + - editor + - core-plugins + + - block: + - name: upload file to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload.yml + vars: + gcp_path: "artefacts/content-player/content-player-{{ player_version_number }}.zip" + local_file_or_folder_path: "{{ source_file_name }}" + tags: + - preview - - name: upload file - command: "az storage blob upload --container-name {{ plugin_container_name }} --file {{ source_file_name }} --name artefacts/content-player/content-player-{{ player_version_number }}.zip" - async: 3600 - poll: 10 - tags: - - preview + - block: + - name: Authenticate to gcloud + include_role: + name: gcp-cloud-storage + tasks_from: gcloud-auth.yml - - name: run az_copy.sh - shell: "bash {{ az_file_path }} {{ plugin_container_name }} {{ source_file }}" - async: 3600 - poll: 10 - tags: - - plugins + - name: delete and re-upload plugins + include_role: + name: gcp-cloud-storage + tasks_from: "{{ item[0] }}" + vars: + file_delete_pattern: "content-plugins/{{ item[1] }}/*" + gcp_path: "content-plugins/{{ item[1] }}" + local_file_or_folder_path: "{{ source_folder }}/{{ item[1] }}" + with_nested: + - ['delete-batch-no-poll.yml', 'upload-batch-no-poll.yml'] + - "{{ lookup('file', plugins_to_delete_and_upload).split('\n') }}" + + - name: Revoke gcloud access + include_role: + name: gcp-cloud-storage + tasks_from: gcloud-revoke.yml + tags: + - plugins + when: cloud_service_provider == "gcloud" + +################################### AWS tasks ######################### + - name: this block consists of tasks related to aws s3 + block: + - name: set common aws variables + set_fact: + aws_default_region: "{{ cloud_public_storage_region }}" + s3_bucket_name: "{{ cloud_storage_content_bucketname }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + tags: + - always + + - block: + - name: delete files and folders from s3 + include_role: + name: aws-cloud-storage + tasks_from: delete-folder.yml + vars: + s3_path: "{{ folder_name }}" + tags: + - content-editor + - collection-editor + - generic-editor + - preview + + - block: + - name: upload folder to s3 + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + s3_path: "{{ folder_name }}" + local_file_or_folder_path: "{{ source_name }}" + tags: + - content-editor + - collection-editor + - generic-editor + - preview + - editor + - core-plugins + + - block: + - name: upload file to s3 + include_role: + name: aws-cloud-storage + tasks_from: upload.yml + vars: + s3_path: "artefacts/content-player/content-player-{{ player_version_number }}.zip" + local_file_or_folder_path: "{{ source_file_name }}" + tags: + - preview + + - block: + - name: run the s3_copy.sh script + shell: "bash {{ s3_file_path }} {{ source_file }} {{ cloud_public_storage_accountname }}" + async: 3600 + poll: 10 + environment: + AWS_DEFAULT_REGION: "{{ aws_default_region }}" + AWS_ACCESS_KEY_ID: "{{ aws_access_key_id }}" + AWS_SECRET_ACCESS_KEY: "{{ aws_secret_access_key }}" + tags: + - plugins + when: cloud_service_provider == "aws" diff --git a/ansible/desktop-faq-upload.yml b/ansible/desktop-faq-upload.yml index fecfea0ec8..3683202043 100644 --- a/ansible/desktop-faq-upload.yml +++ b/ansible/desktop-faq-upload.yml @@ -1,16 +1,214 @@ ---- - hosts: localhost - become: yes vars_files: - "{{inventory_dir}}/secrets.yml" - vars: - artifacts_container: "{{desktop_container}}" - artifact: "{{destination_path}}" - artifact_path: "{{playbook_dir}}/../private/utils/Desktop/{{env_name}}/faq-en.json" - environment: - AZURE_STORAGE_ACCOUNT: "{{ sunbird_public_storage_account_name }}" - AZURE_STORAGE_KEY: "{{ sunbird_public_storage_account_key }}" - roles: - - artifacts-upload-azure - tags: - - upload-desktop-faq + tasks: + - name: this block consists of tasks related to azure storage + block: + - name: set common azure variables + set_fact: + blob_container_name: "" + blob_file_name: "{{ destination_path }}" + blob_container_folder_path: "/{{ destination_path }}" + local_file_or_folder_path: "{{ playbook_dir }}/../{{ src_file_path }}" + tags: + - always + + - block: + - name: upload file to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload.yml + vars: + container_public_access: "container" + blob_container_name: "{{ cloud_storage_public_bucketname }}" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-desktop-faq + + - block: + - name: upload file to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload.yml + vars: + container_public_access: "off" + blob_container_name: "{{ cloud_storage_label_bucketname }}" + storage_account_name: "{{ cloud_private_storage_accountname }}" + storage_account_key: "{{ cloud_private_storage_secret }}" + tags: + - upload-label + + - block: + - name: upload batch of files to azure storage - chatbot + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + container_public_access: "container" + blob_container_name: "{{ cloud_storage_chatbot_bucketname }}" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-chatbot-config + + - block: + - name: upload batch of files to azure storage - csv-template + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + container_public_access: "container" + blob_container_name: "{{ cloud_storage_sourcing_bucketname }}" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-csv-template + + - block: + - name: upload batch of files to azure storage - discussion-ui + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + container_public_access: "container" + blob_container_name: "{{ cloud_storage_discussionui_bucketname }}" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-discussion-ui + when: cloud_service_provider == "azure" + +### GCP tasks ### + - name: this block consists of tasks related to gcloud storage + block: + - name: set common gcloud variables + set_fact: + gcp_path: "{{ destination_path }}" + local_file_or_folder_path: "{{ playbook_dir }}/../{{ src_file_path }}" + tags: + - always + + - block: + - name: upload file to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload.yml + vars: + gcp_bucket_name: "{{ cloud_storage_public_bucketname }}" + tags: + - upload-desktop-faq + + - block: + - name: upload file to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload.yml + vars: + gcp_bucket_name: "{{ cloud_storage_label_bucketname }}" + tags: + - upload-label + + - block: + - name: upload batch of files to gcloud storage - chatbot + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + gcp_bucket_name: "{{ cloud_storage_chatbot_bucketname }}" + tags: + - upload-chatbot-config + + - block: + - name: upload batch of files to gcloud storage - csv-template + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + gcp_bucket_name: "{{ cloud_storage_sourcing_bucketname }}" + tags: + - upload-csv-template + + - block: + - name: upload batch of files to gcloud storage - discussion-ui + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + gcp_bucket_name: "{{ cloud_storage_discussionui_bucketname }}" + tags: + - upload-discussion-ui + when: cloud_service_provider == "gcloud" + +######################## AWS tasks ######################################### + + - name: this block consists of tasks related to aws s3 + block: + - name: set common aws variables + set_fact: + aws_default_region: "{{ cloud_public_storage_region }}" + local_file_or_folder_path: "{{ playbook_dir }}/../{{ src_file_path }}" + s3_path: "{{ destination_path }}" + tags: + - always + + - block: + - name: upload file to aws s3 public bucket + include_role: + name: aws-cloud-storage + tasks_from: upload.yml + vars: + s3_bucket_name: "{{ cloud_storage_public_bucketname }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-desktop-faq + + - block: + - name: upload file to aws s3 private bucket + include_role: + name: aws-cloud-storage + tasks_from: upload.yml + vars: + s3_bucket_name: "{{ cloud_storage_label_bucketname }}" + aws_access_key_id: "{{ cloud_private_storage_accountname }}" + aws_secret_access_key: "{{ cloud_private_storage_secret }}" + tags: + - upload-label + + - block: + - name: upload folder to aws s3 - chatbot + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + s3_bucket_name: "{{ cloud_storage_chatbot_bucketname }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-chatbot-config + + - block: + - name: upload folder to aws s3 - csv-template + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + s3_bucket_name: "{{ cloud_storage_sourcing_bucketname }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-csv-template + + - block: + - name: upload folder to aws s3 - discussion-ui + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + s3_bucket_name: "{{ cloud_storage_discussionui_bucketname }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + tags: + - upload-discussion-ui + when: cloud_service_provider == "aws" diff --git a/ansible/kp_upload-schema.yml b/ansible/kp_upload-schema.yml index 0ca52f5f02..d12b74433d 100644 --- a/ansible/kp_upload-schema.yml +++ b/ansible/kp_upload-schema.yml @@ -1,13 +1,40 @@ - hosts: local - become: yes gather_facts: no vars_files: - "{{inventory_dir}}/secrets.yml" - environment: - AZURE_STORAGE_ACCOUNT: "{{ sunbird_public_storage_account_name }}" - AZURE_STORAGE_SAS_TOKEN: "{{ sunbird_public_storage_account_sas }}" tasks: - - name: upload batch - command: "az storage blob upload-batch --destination {{ plugin_container_name }}/schemas/local --source {{ source_name }}" - async: 3600 - poll: 10 \ No newline at end of file + - name: upload batch of files to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + blob_container_name: "{{ cloud_storage_content_bucketname }}" + container_public_access: "container" + blob_container_folder_path: "/schemas/local" + local_file_or_folder_path: "{{ source_name }}" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + when: cloud_service_provider == "azure" + + - name: upload batch of files to aws s3 + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + s3_bucket_name: "{{ cloud_storage_content_bucketname }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + aws_default_region: "{{ cloud_public_storage_region }}" + local_file_or_folder_path: "{{ source_name }}" + s3_path: "schemas/local" + when: cloud_service_provider == "aws" + + - name: upload batch of files to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + gcp_bucket_name: "{{ cloud_storage_content_bucketname }}" + gcp_path: "{{ schemas/local" + local_file_or_folder_path: "{{ source_name }}" + when: cloud_service_provider == "gcloud" diff --git a/ansible/roles/aws-cli/defaults/main.yml b/ansible/roles/aws-cli/defaults/main.yml new file mode 100644 index 0000000000..53d866eafa --- /dev/null +++ b/ansible/roles/aws-cli/defaults/main.yml @@ -0,0 +1 @@ +aws_cli_url: https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip \ No newline at end of file diff --git a/ansible/roles/aws-cli/tasks/main.yml b/ansible/roles/aws-cli/tasks/main.yml new file mode 100644 index 0000000000..5907fb1aaf --- /dev/null +++ b/ansible/roles/aws-cli/tasks/main.yml @@ -0,0 +1,24 @@ +--- +- name: Download the installation file + get_url: + url: "{{ aws_cli_url }}" + dest: /tmp/awscliv2.zip + +- name: Installing unzip + apt: + name: "{{item}}" + state: latest + with_items: + - zip + - unzip + +- name: Unzip the installer + unarchive: + src: /tmp/awscliv2.zip + dest: /tmp/ + remote_src: yes + +- name: install aws cli + shell: ./aws/install + args: + chdir: /tmp/ diff --git a/ansible/roles/aws-cloud-storage/defaults/main.yml b/ansible/roles/aws-cloud-storage/defaults/main.yml new file mode 100644 index 0000000000..6f3f6f86d6 --- /dev/null +++ b/ansible/roles/aws-cloud-storage/defaults/main.yml @@ -0,0 +1,3 @@ +s3_bucket_name: "" +s3_path: "" +local_file_or_folder_path: "" diff --git a/ansible/roles/aws-cloud-storage/tasks/delete-folder.yml b/ansible/roles/aws-cloud-storage/tasks/delete-folder.yml new file mode 100644 index 0000000000..c912b14edb --- /dev/null +++ b/ansible/roles/aws-cloud-storage/tasks/delete-folder.yml @@ -0,0 +1,9 @@ +--- +- name: delete files and folders recursively + environment: + AWS_DEFAULT_REGION: "{{ aws_default_region }}" + AWS_ACCESS_KEY_ID: "{{ aws_access_key_id }}" + AWS_SECRET_ACCESS_KEY: "{{ aws_secret_access_key }}" + shell: "aws s3 rm s3://{{ s3_bucket_name }}/{{ s3_path }} --recursive" + async: 3600 + poll: 10 diff --git a/ansible/roles/aws-cloud-storage/tasks/delete.yml b/ansible/roles/aws-cloud-storage/tasks/delete.yml new file mode 100644 index 0000000000..414ea52e6b --- /dev/null +++ b/ansible/roles/aws-cloud-storage/tasks/delete.yml @@ -0,0 +1,9 @@ +--- +- name: delete files from s3 + environment: + AWS_DEFAULT_REGION: "{{ aws_default_region }}" + AWS_ACCESS_KEY_ID: "{{ aws_access_key_id }}" + AWS_SECRET_ACCESS_KEY: "{{ aws_secret_access_key }}" + shell: "aws s3 rm s3://{{ s3_bucket_name }}/{{ s3_path }}" + async: 3600 + poll: 10 diff --git a/ansible/roles/aws-cloud-storage/tasks/download.yml b/ansible/roles/aws-cloud-storage/tasks/download.yml new file mode 100644 index 0000000000..138024af78 --- /dev/null +++ b/ansible/roles/aws-cloud-storage/tasks/download.yml @@ -0,0 +1,9 @@ +--- +- name: download files to s3 + environment: + AWS_DEFAULT_REGION: "{{ aws_default_region }}" + AWS_ACCESS_KEY_ID: "{{ aws_access_key_id }}" + AWS_SECRET_ACCESS_KEY: "{{ aws_secret_access_key }}" + shell: "aws s3 cp s3://{{ s3_bucket_name }}/{{ s3_path }} {{ local_file_or_folder_path }}" + async: 3600 + poll: 10 diff --git a/ansible/roles/aws-cloud-storage/tasks/main.yml b/ansible/roles/aws-cloud-storage/tasks/main.yml new file mode 100644 index 0000000000..62f204a9d2 --- /dev/null +++ b/ansible/roles/aws-cloud-storage/tasks/main.yml @@ -0,0 +1,18 @@ +--- +- name: delete files from aws S3 bucket + include: delete.yml + +- name: delete folders from aws S3 bucket recursively + include: delete-folder.yml + + +- name: download file from S3 + include: download.yml + +- name: upload files from a local to aws S3 + include: upload.yml + +- name: upload files and folder from local directory to aws S3 + include: upload-folder.yml + + diff --git a/ansible/roles/aws-cloud-storage/tasks/upload-folder.yml b/ansible/roles/aws-cloud-storage/tasks/upload-folder.yml new file mode 100644 index 0000000000..3e03b068b7 --- /dev/null +++ b/ansible/roles/aws-cloud-storage/tasks/upload-folder.yml @@ -0,0 +1,9 @@ +--- +- name: upload folder to s3 + environment: + AWS_DEFAULT_REGION: "{{ aws_default_region }}" + AWS_ACCESS_KEY_ID: "{{ aws_access_key_id }}" + AWS_SECRET_ACCESS_KEY: "{{ aws_secret_access_key }}" + shell: "aws s3 cp {{ local_file_or_folder_path }} s3://{{ s3_bucket_name }}/{{ s3_path }} --recursive" + async: 3600 + poll: 10 diff --git a/ansible/roles/aws-cloud-storage/tasks/upload.yml b/ansible/roles/aws-cloud-storage/tasks/upload.yml new file mode 100644 index 0000000000..af8de990e2 --- /dev/null +++ b/ansible/roles/aws-cloud-storage/tasks/upload.yml @@ -0,0 +1,9 @@ +--- +- name: upload files to s3 + environment: + AWS_DEFAULT_REGION: "{{ aws_default_region }}" + AWS_ACCESS_KEY_ID: "{{ aws_access_key_id }}" + AWS_SECRET_ACCESS_KEY: "{{ aws_secret_access_key }}" + shell: "aws s3 cp {{ local_file_or_folder_path }} s3://{{ s3_bucket_name }}/{{ s3_path }}" + async: 3600 + poll: 10 diff --git a/ansible/roles/azure-cli/tasks/main.yml b/ansible/roles/azure-cli/tasks/main.yml index 798d80188c..0374f6a0ec 100644 --- a/ansible/roles/azure-cli/tasks/main.yml +++ b/ansible/roles/azure-cli/tasks/main.yml @@ -1,3 +1,28 @@ -- name: install azure cli - shell: - which az || curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash +--- +- name: Add Microsfot signing key + apt_key: + url: https://packages.microsoft.com/keys/microsoft.asc + state: present + +- name: Add Microsfot repository into sources list + apt_repository: + repo: "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ {{ ansible_distribution_release | lower }} main" + state: present + +- name: Install azue cli and dependent packages + apt: + pkg: + - ca-certificates + - curl + - apt-transport-https + - lsb-release + - gnupg + - "azure-cli=2.33.1-1~{{ ansible_distribution_release | lower }}" + +- name: Install azcopy + shell: | + which azcopy || ( \ + mkdir /tmp/azcopy && cd /tmp/azcopy && \ + wget -O azcopy_v10.tar.gz https://aka.ms/downloadazcopy-v10-linux && tar -xf azcopy_v10.tar.gz --strip-components=1 \ + && mv azcopy /usr/local/bin \ + && rm -rf /tmp/azcopy ) diff --git a/ansible/roles/azure-cloud-storage/defaults/main.yml b/ansible/roles/azure-cloud-storage/defaults/main.yml new file mode 100644 index 0000000000..b5266cb76a --- /dev/null +++ b/ansible/roles/azure-cloud-storage/defaults/main.yml @@ -0,0 +1,72 @@ +# The name of the blob container in the azure storage account +# Example - +# blob_container_name: "my-container" +blob_container_name: "" + +# The delete pattern to delete files and folder +# Example - +# blob_delete_pattern: "my-drectory/*" +# blob_delete_pattern: "my-drectory/another-directory/*" +# blob_delete_pattern: "*" +blob_delete_pattern: "" + +# The storage account name +# Example - +# storage_account_name: "sunbird-dev-public" +storage_account_name: "" + +# The storage account key +# Example - +# storage_account_name: "cmFuZG9tcmFuZG9tcmFuZG9tcmFuZG9tCg==" +storage_account_key: "" + +# The path to local file which has to be uploaded to azure storage +# The local path to store the file after downloading from azure storage +# Example - +# local_file_or_folder_path: "/workspace/my-folder/myfile.json" +# local_file_or_folder_path: "/workspace/my-folder" +local_file_or_folder_path: "" + +# The name of the file in azure storage after uploading from local +# The name of the file in azure storage that has to be downloaded +# Example - +# blob_file_name: "myfile-blob.json" +# You can also pass folder path in order to upload / download the file from a speciic folder +# blob_file_name "my-folder/my-file.json" +blob_file_name: "" + +# The storage account sas token +# Example - +# storage_account_sas_token: "?sv=2022-01-01&ss=abc&srt=rws%3D" +storage_account_sas_token: "" + +# The folder path in azure storage to upload the files starting from the root of the container +# This path should alwasy start with a slash / as we are going to append this value as shown in below example +# Example - +# blob_container_name: "my-container" +# blob_container_folder_path: "/my-folder-path" +# {{ blob_container_name }}{{ blob_container_folder_path }} +# The above translates to "my-container/my-folder-path" + +# The variable can also be empty as shown below, which means we will upload directly at the root path of the container +# Example - +# blob_container_name: "my-container" +# blob_container_folder_path: "" +# The above translates to "my-container" +blob_container_folder_path: "" + +# At what access level the container should be created +# Example - +# container_public_access: "off" +# container_public_access: "blob" +# container_public_access: "container" +# Allowed values are - off, blob, container +# This variable affects only new containers and has no affect on a container if it already exists +# If the container already exists, the access level will not be changed +# You will need to change the access level from Azure portal or using az storage container set-permission command +container_public_access: "" + +# Creates the container by default before running the specific azure blob tasks +# If you would like to skip container creation (in case of a looped execution), +# you can set this value to False in order to skip the contatiner creation task for every iteration +create_container: True diff --git a/ansible/roles/azure-cloud-storage/tasks/blob-delete-batch-no-poll.yml b/ansible/roles/azure-cloud-storage/tasks/blob-delete-batch-no-poll.yml new file mode 100644 index 0000000000..152e3a49ad --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/blob-delete-batch-no-poll.yml @@ -0,0 +1,5 @@ +--- +- name: delete files and folders - deleting {{ blob_container_name }}/{{ blob_delete_pattern }} + shell: "az storage blob delete-batch --source {{ blob_container_name }} --pattern '{{ blob_delete_pattern }}' --account-name {{ storage_account_name }} --account-key {{ storage_account_key }}" + async: 1800 + poll: 0 \ No newline at end of file diff --git a/ansible/roles/azure-cloud-storage/tasks/blob-delete-batch.yml b/ansible/roles/azure-cloud-storage/tasks/blob-delete-batch.yml new file mode 100644 index 0000000000..e642a6f24f --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/blob-delete-batch.yml @@ -0,0 +1,5 @@ +--- +- name: delete files and folders - deleting {{ blob_container_name }}/{{ blob_delete_pattern }} + shell: "az storage blob delete-batch --source {{ blob_container_name }} --pattern '{{ blob_delete_pattern }}' --account-name {{ storage_account_name }} --account-key {{ storage_account_key }}" + async: 3600 + poll: 10 \ No newline at end of file diff --git a/ansible/roles/azure-cloud-storage/tasks/blob-download.yml b/ansible/roles/azure-cloud-storage/tasks/blob-download.yml new file mode 100644 index 0000000000..3bbf4b607a --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/blob-download.yml @@ -0,0 +1,5 @@ +--- +- name: download a file from azure storage + shell: "az storage blob download --container-name {{ blob_container_name }} --file {{ local_file_or_folder_path }} --name {{ blob_file_name }} --account-name {{ storage_account_name }} --account-key {{ storage_account_key }}" + async: 3600 + poll: 10 \ No newline at end of file diff --git a/ansible/roles/azure-cloud-storage/tasks/blob-upload-batch-no-poll.yml b/ansible/roles/azure-cloud-storage/tasks/blob-upload-batch-no-poll.yml new file mode 100644 index 0000000000..ff00854851 --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/blob-upload-batch-no-poll.yml @@ -0,0 +1,5 @@ +--- +- name: upload files and folders - uploading {{ blob_container_name }}{{ blob_container_folder_path }} + shell: "az storage blob upload-batch --destination {{ blob_container_name }}{{ blob_container_folder_path }} --source {{ local_file_or_folder_path }} --account-name {{ storage_account_name }} --account-key {{ storage_account_key }}" + async: 1800 + poll: 0 \ No newline at end of file diff --git a/ansible/roles/azure-cloud-storage/tasks/blob-upload-batch.yml b/ansible/roles/azure-cloud-storage/tasks/blob-upload-batch.yml new file mode 100644 index 0000000000..900ecee515 --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/blob-upload-batch.yml @@ -0,0 +1,11 @@ +--- +- name: create container in azure storage if it doesn't exist + include_role: + name: azure-cloud-storage + tasks_from: container-create.yml + when: create_container == True + +- name: upload files and folders - uploading {{ blob_container_name }}{{ blob_container_folder_path }} + shell: "az storage blob upload-batch --destination {{ blob_container_name }}{{ blob_container_folder_path }} --source {{ local_file_or_folder_path }} --account-name {{ storage_account_name }} --account-key {{ storage_account_key }}" + async: 3600 + poll: 10 diff --git a/ansible/roles/azure-cloud-storage/tasks/blob-upload.yml b/ansible/roles/azure-cloud-storage/tasks/blob-upload.yml new file mode 100644 index 0000000000..5430aba8fa --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/blob-upload.yml @@ -0,0 +1,11 @@ +--- +- name: create container in azure storage if it doesn't exist + include_role: + name: azure-cloud-storage + tasks_from: container-create.yml + when: create_container == True + +- name: upload file to azure storage container + shell: "az storage blob upload --container-name {{ blob_container_name }} --file {{ local_file_or_folder_path }} --name {{ blob_file_name }} --account-name {{ storage_account_name }} --account-key {{ storage_account_key }}" + async: 3600 + poll: 10 diff --git a/ansible/roles/azure-cloud-storage/tasks/container-create.yml b/ansible/roles/azure-cloud-storage/tasks/container-create.yml new file mode 100644 index 0000000000..847c765a33 --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/container-create.yml @@ -0,0 +1,8 @@ +--- +- name: create container if it doesn't exist + shell: "az storage container create --name {{ blob_container_name }} --public-access {{ container_public_access }} --account-name {{ storage_account_name }} --account-key {{ storage_account_key }}" + when: storage_account_key | length > 0 + +- name: create container if it doesn't exist + shell: "az storage container create --name {{ blob_container_name }} --public-access {{ container_public_access }} --account-name {{ storage_account_name }} --sas-token '{{ storage_account_sas_token }}'" + when: storage_account_sas_token | length > 0 \ No newline at end of file diff --git a/ansible/roles/azure-cloud-storage/tasks/delete-using-azcopy.yml b/ansible/roles/azure-cloud-storage/tasks/delete-using-azcopy.yml new file mode 100644 index 0000000000..196de9c9b3 --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/delete-using-azcopy.yml @@ -0,0 +1,17 @@ +--- +- name: generate SAS token for azcopy + shell: | + sas_expiry=`date -u -d "1 hour" '+%Y-%m-%dT%H:%MZ'` + sas_token=?`az storage container generate-sas -n {{ blob_container_name }} --account-name {{ storage_account_name }} --account-key {{ storage_account_key }} --https-only --permissions dlrw --expiry $sas_expiry -o tsv` + echo $sas_token + register: sas_token + +- set_fact: + container_sas_token: "{{ sas_token.stdout}}" + +- name: delete files and folders from azure storage using azcopy + shell: "azcopy rm 'https://{{ storage_account_name }}.blob.core.windows.net/{{ blob_container_name }}{{ blob_container_folder_path }}{{ container_sas_token }}' --recursive" + environment: + AZCOPY_CONCURRENT_FILES: "10" + async: 10800 + poll: 10 diff --git a/ansible/roles/azure-cloud-storage/tasks/main.yml b/ansible/roles/azure-cloud-storage/tasks/main.yml new file mode 100644 index 0000000000..eb435ecfe2 --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/main.yml @@ -0,0 +1,21 @@ +--- +- name: delete files and folders from azure storage container recursively + include: blob-delete-batch.yml + +- name: download a file from azure storage + include: blob-download.yml + +- name: upload files and folders from a local directory to azure storage container + include: blob-upload-batch.yml + +- name: upload file to azure storage container + include: blob-upload.yml + +- name: create container in azure storage if it doesn't exist + include: container-create.yml + +- name: delete files and folders from azure storage using azcopy + include: delete-using-azcopy.yml + +- name: upload files and folders to azure storage using azcopy + include: upload-using-azcopy.yml diff --git a/ansible/roles/azure-cloud-storage/tasks/upload-using-azcopy.yml b/ansible/roles/azure-cloud-storage/tasks/upload-using-azcopy.yml new file mode 100644 index 0000000000..95da584c9b --- /dev/null +++ b/ansible/roles/azure-cloud-storage/tasks/upload-using-azcopy.yml @@ -0,0 +1,23 @@ +--- +- name: generate SAS token for azcopy + shell: | + sas_expiry=`date -u -d "1 hour" '+%Y-%m-%dT%H:%MZ'` + sas_token=?`az storage container generate-sas -n {{ blob_container_name }} --account-name {{ storage_account_name }} --account-key {{ storage_account_key }} --https-only --permissions dlrw --expiry $sas_expiry -o tsv` + echo $sas_token + register: sas_token + +- set_fact: + container_sas_token: "{{ sas_token.stdout}}" + +- name: create container in azure storage if it doesn't exist + include_role: + name: azure-cloud-storage + tasks_from: container-create.yml + when: create_container == True + +- name: upload files and folders to azure storage using azcopy + shell: "azcopy copy {{ local_file_or_folder_path }} 'https://{{ storage_account_name }}.blob.core.windows.net/{{ blob_container_name }}{{ blob_container_folder_path }}{{ container_sas_token }}' --recursive" + environment: + AZCOPY_CONCURRENT_FILES: "10" + async: 10800 + poll: 10 diff --git a/ansible/roles/cert-templates/tasks/main.yml b/ansible/roles/cert-templates/tasks/main.yml index b41aaef0a8..0caf2b1bfe 100644 --- a/ansible/roles/cert-templates/tasks/main.yml +++ b/ansible/roles/cert-templates/tasks/main.yml @@ -31,30 +31,38 @@ chdir: "{{cert_location}}/cert-templates/certUtilScripts/" when: createPublicKey is defined -- name: Ensure azure blob storage container exists - command: az storage container create --name {{cert_service_container_name}} --public-access off - environment: - AZURE_STORAGE_ACCOUNT: "{{sunbird_private_storage_account_name}}" - AZURE_STORAGE_KEY: "{{sunbird_private_storage_account_key}}" +- name: upload batch of files to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + blob_container_name: "{{ cloud_storage_certservice_bucketname }}" + container_public_access: "off" + blob_container_folder_path: "" + local_file_or_folder_path: "{{ cert_location }}/cert-templates/certUtilScripts/out" + storage_account_name: "{{ cloud_private_storage_accountname }}" + storage_account_key: "{{ cloud_private_storage_secret }}" + when: cloud_service_provider == "azure" -- name: Upload to azure blob storage - command: az storage blob upload-batch --destination {{cert_service_container_name}} --source "out" - args: - chdir: "{{cert_location}}/cert-templates/certUtilScripts/" - environment: - AZURE_STORAGE_ACCOUNT: "{{sunbird_private_storage_account_name}}" - AZURE_STORAGE_KEY: "{{sunbird_private_storage_account_key}}" - async: 60 - poll: 10 - -- name: list all the files - shell: "ls -lR {{cert_location}}" - register: allfiles - -- debug: - var: allfiles - -- name: Remove unwanted files - file: - path: "{{cert_location}}/cert-templates" - state: absent +- name: upload batch of files to aws s3 + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + s3_bucket_name: "{{ cloud_storage_certservice_bucketname }}" + aws_access_key_id: "{{ cloud_private_storage_accountname }}" + aws_secret_access_key: "{{ cloud_private_storage_secret }}" + aws_default_region: "{{ cloud_public_storage_region }}" + local_file_or_folder_path: "{{ cert_location }}/cert-templates/certUtilScripts/out" + s3_path: "" + when: cloud_service_provider == "aws" + +- name: upload batch of files to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + gcp_bucket_name: "{{ cloud_storage_certservice_bucketname }}" + gcp_path: "" + local_file_or_folder_path: "{{ cert_location }}/cert-templates/certUtilScripts/out" + when: cloud_service_provider == "gcloud" diff --git a/ansible/roles/gcloud-cli/tasks/main.yml b/ansible/roles/gcloud-cli/tasks/main.yml new file mode 100644 index 0000000000..4e39b7ceaf --- /dev/null +++ b/ansible/roles/gcloud-cli/tasks/main.yml @@ -0,0 +1,19 @@ +--- +- name: Add gcloud signing key + apt_key: + url: https://packages.cloud.google.com/apt/doc/apt-key.gpg + state: present + +- name: Add gcloud repository into sources list + apt_repository: + repo: "deb https://packages.cloud.google.com/apt cloud-sdk main" + state: present + +- name: Install google cloud cli with specific version and dependent packages + apt: + pkg: + - ca-certificates + - curl + - apt-transport-https + - gnupg + - google-cloud-cli=406.0.0-0 diff --git a/ansible/roles/gcp-cloud-storage/defaults/main.yml b/ansible/roles/gcp-cloud-storage/defaults/main.yml new file mode 100644 index 0000000000..b0fd847b26 --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/defaults/main.yml @@ -0,0 +1,49 @@ +# GCP bucket name +# Example - +# bucket_name: "sunbird-dev-public" +gcp_bucket_name: "" + +# The service account key file +# Example - +# gcp_storage_key_file: "/tmp/gcp.json" +gcp_storage_key_file: "" + +# Folder name in GCP bucket +# Example - +# gcp_path: "my-destination-folder" +gcp_path: "" + +# The delete pattern to delete files and folder +# Example - +# file_delete_pattern: "my-drectory/*" +# file_delete_pattern: "my-drectory/another-directory/*" +# file_delete_pattern: "*" +file_delete_pattern: "" + +# The path to local file which has to be uploaded to gcloud storage +# The local path to store the file after downloading from gcloud storage +# Example - +# local_file_or_folder_path: "/workspace/my-folder/myfile.json" +# local_file_or_folder_path: "/workspace/my-folder" +local_file_or_folder_path: "" + +# The name of the file in gcloud storage after uploading from local path +# The name of the file in gcloud storage that has to be downloaded +# Example - +# dest_file_name: "/myfile-blob.json" +dest_file_name: "" + + +# The folder path in gcloud storage to upload the files starting from the root of the bucket +# This path should start with / if we provide a value for this variable since we are going to append this path as below +# {{ bucket_name }}{{ gcp_path }} +# The above translates to "my-bucket/my-folder-path" +# Example - +# dest_folder_path: "/my-folder/json-files-folder" +# This variable can also be empty as shown below, which means we will upload directly at the root path of the bucket +dest_folder_path: "" + +# The local folder path which has to be uploaded to gcloud storage +# Example - +# local_source_folder: "/workspace/my-folder/json-files-folder" +local_source_folder: "" diff --git a/ansible/roles/gcp-cloud-storage/tasks/delete-batch-no-poll.yml b/ansible/roles/gcp-cloud-storage/tasks/delete-batch-no-poll.yml new file mode 100644 index 0000000000..ca02b8a064 --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/delete-batch-no-poll.yml @@ -0,0 +1,6 @@ +--- +- name: Delete folder recursively in gcp storage + shell: gsutil rm -r "gs://{{ gcp_bucket_name }}/{{ file_delete_pattern }}" + async: 1800 + poll: 0 + diff --git a/ansible/roles/gcp-cloud-storage/tasks/delete-batch.yml b/ansible/roles/gcp-cloud-storage/tasks/delete-batch.yml new file mode 100644 index 0000000000..17fe952b16 --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/delete-batch.yml @@ -0,0 +1,11 @@ +--- +- name: Authenticate to gcloud + include_tasks: gcloud-auth.yml + +- name: Delete folder recursively in gcp storage + shell: gsutil rm -r "gs://{{ gcp_bucket_name }}/{{ file_delete_pattern }}" + async: 3600 + poll: 10 + +- name: Revoke gcloud access + include_tasks: gcloud-revoke.yml diff --git a/ansible/roles/gcp-cloud-storage/tasks/download.yml b/ansible/roles/gcp-cloud-storage/tasks/download.yml new file mode 100644 index 0000000000..73bf76bb04 --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/download.yml @@ -0,0 +1,11 @@ +--- +- name: Authenticate to gcloud + include_tasks: gcloud-auth.yml + +- name: Download from gcloud storage + shell: gsutil cp "gs://{{ gcp_bucket_name }}/{{ gcp_path }}" "{{ local_file_or_folder_path }}" + async: 3600 + poll: 10 + +- name: Revoke gcloud access + include_tasks: gcloud-revoke.yml diff --git a/ansible/roles/gcp-cloud-storage/tasks/gcloud-auth.yml b/ansible/roles/gcp-cloud-storage/tasks/gcloud-auth.yml new file mode 100644 index 0000000000..a480bdc275 --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/gcloud-auth.yml @@ -0,0 +1,14 @@ +--- +- name: create tmp gcp service key file + tempfile: + state: file + suffix: gcp + register: config_key + +- name: Copy service account key file + copy: + content: "{{ gcp_storage_key_file }}" + dest: "{{ config_key.path }}" + +- name: Configure gcloud service account + shell: gcloud auth activate-service-account "{{ gcp_storage_service_account_name }}" --key-file="{{ config_key.path }}" diff --git a/ansible/roles/gcp-cloud-storage/tasks/gcloud-revoke.yml b/ansible/roles/gcp-cloud-storage/tasks/gcloud-revoke.yml new file mode 100644 index 0000000000..8c26cd0ef0 --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/gcloud-revoke.yml @@ -0,0 +1,8 @@ +- name: Revoke gcloud service account access + shell: gcloud auth revoke "{{ gcp_storage_service_account_name }}" + +- name: Remove key file + file: + path: "{{ config_key.path }}" + state: absent + when: config_key.path is defined diff --git a/ansible/roles/gcp-cloud-storage/tasks/main.yml b/ansible/roles/gcp-cloud-storage/tasks/main.yml new file mode 100644 index 0000000000..aa41c090ed --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/main.yml @@ -0,0 +1,20 @@ +--- +- name: upload file to gcloud storage + include: upload.yml + tags: + - file-upload + +- name: upload batch of files to gcloud storage + include: upload-batch.yml + tags: + - upload-batch + +- name: delete batch of files from gcloud storage + include: delete-batch.yml + tags: + - delete-batch + +- name: download a file from gcloud storage + include: download.yml + tags: + - file-download \ No newline at end of file diff --git a/ansible/roles/gcp-cloud-storage/tasks/upload-batch-no-poll.yml b/ansible/roles/gcp-cloud-storage/tasks/upload-batch-no-poll.yml new file mode 100644 index 0000000000..40e9b8a66a --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/upload-batch-no-poll.yml @@ -0,0 +1,5 @@ +--- +- name: Upload files from a local directory gcp storage + shell: gsutil -m cp -r "{{ local_file_or_folder_path }}" "gs://{{ gcp_bucket_name }}/{{ gcp_path }}" + async: 1800 + poll: 0 diff --git a/ansible/roles/gcp-cloud-storage/tasks/upload-batch.yml b/ansible/roles/gcp-cloud-storage/tasks/upload-batch.yml new file mode 100644 index 0000000000..dc103969aa --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/upload-batch.yml @@ -0,0 +1,11 @@ +--- +- name: Authenticate to gcloud + include_tasks: gcloud-auth.yml + +- name: Upload files from a local directory gcp storage + shell: gsutil -m cp -r "{{ local_file_or_folder_path }}" "gs://{{ gcp_bucket_name }}/{{ gcp_path}}" + async: 3600 + poll: 10 + +- name: Revoke gcloud access + include_tasks: gcloud-revoke.yml diff --git a/ansible/roles/gcp-cloud-storage/tasks/upload.yml b/ansible/roles/gcp-cloud-storage/tasks/upload.yml new file mode 100644 index 0000000000..de766a94c7 --- /dev/null +++ b/ansible/roles/gcp-cloud-storage/tasks/upload.yml @@ -0,0 +1,11 @@ +--- +- name: Authenticate to gcloud + include_tasks: gcloud-auth.yml + +- name: Upload to gcloud storage + shell: gsutil cp "{{ local_file_or_folder_path }}" "gs://{{ gcp_bucket_name }}/{{ gcp_path }}" + async: 3600 + poll: 10 + +- name: Revoke gcloud access + include_tasks: gcloud-revoke.yml diff --git a/ansible/upload-schemas.yml b/ansible/upload-schemas.yml index f7ae68ba98..0e2182cb00 100644 --- a/ansible/upload-schemas.yml +++ b/ansible/upload-schemas.yml @@ -3,11 +3,40 @@ gather_facts: no vars_files: - "{{inventory_dir}}/secrets.yml" - environment: - AZURE_STORAGE_ACCOUNT: "{{ azure_account_name }}" - AZURE_STORAGE_SAS_TOKEN: "{{ azure_plugin_storage_account_sas }}" tasks: - - name: upload batch - command: "az storage blob upload-batch --destination {{ schemas_container_name }}/schemas --source {{ source_name }}" - async: 3600 - poll: 10 + - name: upload batch of files to azure storage + include_role: + name: azure-cloud-storage + tasks_from: blob-upload-batch.yml + vars: + blob_container_name: "{{ cloud_storage_schemas_bucketname }}" + container_public_access: "blob" + blob_container_folder_path: "/schemas" + local_file_or_folder_path: "{{ source_name }}" + storage_account_name: "{{ cloud_public_storage_accountname }}" + storage_account_key: "{{ cloud_public_storage_secret }}" + when: cloud_service_provider == "azure" + + - name: upload batch of files to aws s3 + include_role: + name: aws-cloud-storage + tasks_from: upload-folder.yml + vars: + s3_bucket_name: "{{ cloud_storage_schemas_bucketname }}" + aws_access_key_id: "{{ cloud_public_storage_accountname }}" + aws_secret_access_key: "{{ cloud_public_storage_secret }}" + aws_default_region: "{{ cloud_public_storage_region }}" + local_file_or_folder_path: "{{ source_name }}" + s3_path: "schemas" + when: cloud_service_provider == "aws" + + - name: upload batch of files to gcloud storage + include_role: + name: gcp-cloud-storage + tasks_from: upload-batch.yml + vars: + gcp_bucket_name: "{{ cloud_storage_schemas_bucketname }}" + gcp_path: "schemas" + local_file_or_folder_path: "{{ source_name }}" + when: cloud_service_provider == "gcloud" + From a0e6cd5a6b510cac5c2225526fa188ba31b62a57 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 22 Dec 2022 18:33:58 +0530 Subject: [PATCH 287/298] Issue #KN-439 chore: Onboarded publish APIs --- ansible/roles/kong-api/defaults/main.yml | 92 +++++++++++++++++++++++- 1 file changed, 91 insertions(+), 1 deletion(-) diff --git a/ansible/roles/kong-api/defaults/main.yml b/ansible/roles/kong-api/defaults/main.yml index ce7f4f3db8..b5c16324d3 100644 --- a/ansible/roles/kong-api/defaults/main.yml +++ b/ansible/roles/kong-api/defaults/main.yml @@ -2659,7 +2659,97 @@ kong_apis: - name: publishContent request_path: "{{ content_prefix }}/v1/publish" - upstream_url: "{{ knowledge_mw_service_url }}/v1/content/publish" + upstream_url: "{{ content_service_url }}/content/v3/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: publishContentV2 + request_path: "{{ content_prefix }}/v2/publish" + upstream_url: "{{ content_service_url }}/content/v4/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: unlistedPublishContent + request_path: "{{ content_prefix }}/v1/unlisted/publish" + upstream_url: "{{ content_service_url }}/content/v3/unlisted/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: unlistedPublishContentV2 + request_path: "{{ content_prefix }}/v2/unlisted/publish" + upstream_url: "{{ content_service_url }}/content/v4/unlisted/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: publishCollection + request_path: "{{ collection_prefix }}/v1/publish" + upstream_url: "{{ content_service_url }}/collection/v4/publish" + strip_request_path: true + plugins: + - name: jwt + - name: cors + - "{{ statsd_pulgin }}" + - name: acl + config.whitelist: + - 'contentAdmin' + - 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: unlistedPublishCollection + request_path: "{{ collection_prefix }}/v1/unlisted/publish" + upstream_url: "{{ content_service_url }}/collection/v4/unlisted/publish" strip_request_path: true plugins: - name: jwt From 6fc3a99bcef2b8739bdb581b1d30bf8e7ad64ebb Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Dec 2022 18:06:47 +0530 Subject: [PATCH 288/298] Issue #KN-439 chore: Added the transcripts in cloudstorage_metadata_list. --- ansible/roles/stack-sunbird/defaults/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/stack-sunbird/defaults/main.yml b/ansible/roles/stack-sunbird/defaults/main.yml index b8d811d853..4d82fd9dbb 100644 --- a/ansible/roles/stack-sunbird/defaults/main.yml +++ b/ansible/roles/stack-sunbird/defaults/main.yml @@ -808,4 +808,4 @@ contextual_help_config: '{"sourcing":{"manageUsers":{"url":"/sourcing/help","hea cloudstorage_relative_path_prefix_content: "CONTENT_STORAGE_BASE_PATH" cloudstorage_relative_path_prefix_dial: "DIAL_STORAGE_BASE_PATH" -cloudstorage_metadata_list: '["appIcon", "artifactUrl", "posterImage", "previewUrl", "thumbnail", "assetsMap", "certTemplate", "itemSetPreviewUrl", "grayScaleAppIcon", "sourceURL", "variants", "downloadUrl", "streamingUrl", "toc_url", "data", "question", "solutions", "editorState", "media", "pdfUrl"]' \ No newline at end of file +cloudstorage_metadata_list: '["appIcon", "artifactUrl", "posterImage", "previewUrl", "thumbnail", "assetsMap", "certTemplate", "itemSetPreviewUrl", "grayScaleAppIcon", "sourceURL", "variants", "downloadUrl", "streamingUrl", "toc_url", "data", "question", "solutions", "editorState", "media", "pdfUrl", "transcripts"]' \ No newline at end of file From fd22e34ca5ce92dd15376ca02a5c80a839f315f2 Mon Sep 17 00:00:00 2001 From: G33tha Date: Thu, 5 Jan 2023 15:23:32 +0530 Subject: [PATCH 289/298] updated vdn jenkins jobs and inventory (#3703) --- .../jobs/{dev => DockDev}/config.xml | 8 +- .../jobs/DockDev/jobs/Core}/config.xml | 8 +- .../jobs/Core/jobs/APIManager}/config.xml | 28 +- .../jobs/Core/jobs/APIManagerEcho}/config.xml | 28 +- .../jobs/Core/jobs/Assessment/config.xml | 108 ++++++ .../DockDev/jobs/Core/jobs/Bot/config.xml | 108 ++++++ .../jobs/Core/jobs/Cassandra}/config.xml | 28 +- .../Core/jobs/CassandraTrigger}/config.xml | 26 +- .../jobs/Core/jobs/Cert}/config.xml | 28 +- .../Core/jobs/CertRegistryService}/config.xml | 30 +- .../DockDev/jobs/Core/jobs/Content/config.xml | 108 ++++++ .../jobs/Core/jobs/DockOpensaber}/config.xml | 28 +- .../Core/jobs/Hawkeye-superset/config.xml | 108 ++++++ .../jobs/Core/jobs/KnowledgeMW}/config.xml | 30 +- .../jobs/Core/jobs/Mlworkbench/config.xml | 108 ++++++ .../jobs/Core/jobs/Player}/config.xml | 36 +- .../DockDev/jobs/Core/jobs/Program/config.xml | 108 ++++++ .../DockDev/jobs/Core/jobs/Proxy/config.xml | 108 ++++++ .../jobs/Core/jobs/Report}/config.xml | 28 +- .../DockDev/jobs/Core/jobs/Router/config.xml | 108 ++++++ .../jobs/Core/jobs/Search}/config.xml | 28 +- .../jobs/Core/jobs/Taxonomy}/config.xml | 28 +- .../jobs/Core/jobs/Telemetry/config.xml | 108 ++++++ .../jobs/KnowledgePlatform}/config.xml | 8 +- .../jobs/CassandraTrigger}/config.xml | 26 +- .../jobs/FlinkJobs/config.xml | 108 ++++++ .../jobs/Learning}/config.xml | 34 +- .../KnowledgePlatform/jobs/Neo4j}/config.xml | 26 +- .../jobs/SyncTool}/config.xml | 28 +- .../KnowledgePlatform/jobs/Yarn}/config.xml | 26 +- .../jobs/DockDev/jobs/Plugins}/config.xml | 8 +- .../Plugins/jobs/CollectionEditor}/config.xml | 26 +- .../Plugins/jobs/ContentEditor}/config.xml | 26 +- .../Plugins/jobs/ContentPlayer}/config.xml | 26 +- .../Plugins/jobs/ContentPlugins}/config.xml | 28 +- .../Plugins/jobs/GenericEditor/config.xml | 93 ++++++ .../dev/jobs/Core/jobs/APIManager/config.xml | 108 ------ .../jobs/Core/jobs/APIManagerEcho/config.xml | 108 ------ .../dev/jobs/Core/jobs/AdminUtils/config.xml | 116 ------- .../jobs/dev/jobs/Core/jobs/Badger/config.xml | 108 ------ .../Core/jobs/CassandraDecrypt/config.xml | 108 ------ .../Core/jobs/CassandraTrigger/config.xml | 108 ------ .../Core/jobs/CertRegistryService/config.xml | 108 ------ .../dev/jobs/Core/jobs/Keycloak/config.xml | 108 ------ .../jobs/Core/jobs/Notification/config.xml | 108 ------ .../dev/jobs/Core/jobs/Telemetry/config.xml | 108 ------ .../dev/jobs/Core/jobs/UserOrg/config.xml | 108 ------ .../DataPipeline/jobs/Analytics/config.xml | 108 ------ .../DataPipeline/jobs/DataPipeline/config.xml | 108 ------ .../jobs/DataPipeline/jobs/ETLJobs/config.xml | 108 ------ .../jobs/DataPipeline/jobs/Secor/config.xml | 108 ------ .../dev/jobs/KnowledgePlatform/config.xml | 29 -- .../Plugins/jobs/CollectionEditor/config.xml | 94 ------ deploy/jenkins/jobs/Build/config.xml | 13 +- .../jenkins/jobs/Build/jobs/Core/config.xml | 29 -- .../jobs/Core/jobs/APIManagerEcho/config.xml | 38 --- .../jobs/Core/jobs/AdminUtils/config.xml | 59 ---- .../Build/jobs/Core/jobs/Badger/config.xml | 75 ----- .../jobs/Build/jobs/Core/jobs/Cert/config.xml | 85 ----- .../Core/jobs/CertRegistryService/config.xml | 85 ----- .../jobs/Core/jobs/EncService/config.xml | 84 ----- .../Build/jobs/Core/jobs/Learner/config.xml | 85 ----- .../jobs/Core/jobs/Notification/config.xml | 85 ----- .../Build/jobs/Core/jobs/UserOrg/config.xml | 84 ----- .../jobs/Build/jobs/Core/jobs/Yarn/config.xml | 86 ----- .../jobs/Build/jobs/DataPipeline/config.xml | 34 -- .../jobs/DataPipeline/jobs/ETLJobs/config.xml | 53 --- .../jobs/DataPipeline/jobs/Secor/config.xml | 84 ----- .../jobs/Build/jobs/DockCore/config.xml | 29 ++ .../jobs/APIManager/config.xml | 0 .../jobs/ApiManagerEcho}/config.xml | 43 ++- .../jobs/DockCore/jobs/Assessment}/config.xml | 86 +++-- .../Build/jobs/DockCore/jobs/Bot/config.xml | 92 ++++++ .../jobs/Cassandra/config.xml | 41 +-- .../jobs/CassandraDecrypt/config.xml | 4 +- .../jobs/CassandraTrigger/config.xml | 8 +- .../jobs/Content/config.xml | 43 ++- .../jobs/DockOpensaber}/config.xml | 54 +-- .../jobs/Hawkeye-superset}/config.xml | 43 ++- .../jobs/KnowledgeMW/config.xml | 43 ++- .../jobs/DockCore/jobs/Mlworkbench/config.xml | 73 ++++ .../{Core => DockCore}/jobs/Player/config.xml | 54 ++- .../jobs/Program}/config.xml | 46 ++- .../{Core => DockCore}/jobs/Proxy/config.xml | 26 +- .../Lms => DockCore/jobs/Report}/config.xml | 43 ++- .../jobs/DockCore/jobs/Router/config.xml | 92 ++++++ .../jobs/Search}/config.xml | 45 ++- .../jobs/Taxonomy}/config.xml | 45 ++- .../jobs/Telemetry/config.xml | 4 +- .../config.xml | 12 +- .../jobs/CassandraTrigger/config.xml | 39 +-- .../jobs/FlinkJobs/config.xml | 76 +++++ .../jobs/InquiryFlinkJob/config.xml | 73 ++++ .../jobs/Learning}/config.xml | 39 +-- .../jobs/Neo4j}/config.xml | 50 ++- .../jobs/SyncTool/config.xml | 46 +-- .../jobs/Yarn/config.xml | 40 ++- .../jobs/Build/jobs/DockPlugins/config.xml | 29 ++ .../jobs/ContentEditor/config.xml | 41 +-- .../jobs/ContentPlayer/config.xml | 41 +-- .../jobs/ContentPlugins/config.xml | 41 +-- .../jobs/GenericEditor/config.xml | 41 +-- .../KnowledgePlatform/jobs/Neo4j/config.xml | 85 ----- .../jobs/Deploy/jobs/DockDev/config.xml | 29 ++ .../Deploy/jobs/DockDev/jobs/Core/config.xml | 29 ++ .../jobs/Core/jobs/Bootstrap/config.xml | 12 +- .../jobs/Core/jobs/KafkaSetup/config.xml | 74 +++-- .../jobs/Core/jobs/Logging/config.xml | 14 +- .../jobs/Core/jobs/Logstash/config.xml | 12 +- .../jobs/Core/jobs/Monitoring/config.xml | 16 +- .../jobs/Core/jobs/Oauth/config.xml | 14 +- .../jobs/Core/jobs/Proxy/config.xml | 12 +- .../DockDev/jobs/KnowledgePlatform/config.xml | 29 ++ .../jobs/CassandraDbUpdate/config.xml | 74 +++-- .../jobs/CassandraTrigger}/config.xml | 61 ++-- .../jobs/ContentTool/config.xml | 34 +- .../jobs/FileSyncTool/config.xml | 12 +- .../jobs/FlinkJobs}/config.xml | 152 +++++---- .../jobs/KafkaSetup/config.xml | 68 ++-- .../jobs/Learning}/config.xml | 147 +++++---- .../jobs/Monitoring/config.xml | 12 +- .../KnowledgePlatform/jobs/Neo4j/config.xml | 135 ++++---- .../jobs/Neo4jDefinitionUpdate}/config.xml | 84 ++--- .../Neo4jElasticSearchSyncTool/config.xml | 129 ++++---- .../jobs/StartNeo4jCluster/config.xml | 12 +- .../jobs/StopNeo4jCluster/config.xml | 34 +- .../KnowledgePlatform/jobs/Yarn/config.xml | 149 ++++----- .../jobs/DockDev/jobs/Kubernetes/config.xml | 29 ++ .../Kubernetes/jobs/APIManager}/config.xml | 87 ++--- .../jobs/APIManagerEcho}/config.xml | 37 ++- .../jobs/ApplicationElasticSearch}/config.xml | 44 +-- .../Kubernetes/jobs/Assessment/config.xml | 148 +++++++++ .../jobs/BootstrapCluster}/config.xml | 34 +- .../jobs/BootstrapMinimal}/config.xml | 35 +- .../jobs/Kubernetes/jobs/Bot}/config.xml | 97 +++--- .../Kubernetes/jobs/Cassandra}/config.xml | 149 +++++---- .../jobs/Kubernetes}/jobs/Content/config.xml | 106 +++--- .../jobs/Hawkeye-superset/config.xml | 159 +++++++++ .../Kubernetes/jobs/KnowledgeMW}/config.xml | 89 ++--- .../jobs/Kubernetes/jobs/Logging}/config.xml | 127 +++---- .../jobs/LoggingFileBeatsVM/config.xml | 175 ++++++++++ .../Kubernetes/jobs/Mlworkbench}/config.xml | 95 +++--- .../Kubernetes/jobs/Monitoring}/config.xml | 43 +-- .../Kubernetes/jobs/OnboardAPIs}/config.xml | 95 +++--- .../jobs/OnboardConsumers}/config.xml | 80 ++--- .../Kubernetes/jobs/Opensaber}/config.xml | 92 +++--- .../jobs/Kubernetes}/jobs/Player/config.xml | 95 +++--- .../jobs/PostgresqlMigration/config.xml | 143 ++++++++ .../jobs/Kubernetes/jobs/Program}/config.xml | 99 +++--- .../jobs/Kubernetes/jobs/Router}/config.xml | 97 +++--- .../jobs/Kubernetes/jobs/Search/config.xml | 148 +++++++++ .../jobs/Kubernetes/jobs/Taxonomy}/config.xml | 93 +++--- .../Kubernetes/jobs/Telemetry}/config.xml | 37 ++- .../UploadCollectionHierarchyCSV/config.xml | 178 ++++++++++ .../Kubernetes/jobs/UploadSchemas}/config.xml | 100 +++--- .../jobs/nginx-private-ingress/config.xml | 149 +++++++++ .../jobs/nginx-public-ingress/config.xml | 149 +++++++++ .../jobs/Kubernetes/jobs/redis}/config.xml | 89 ++--- .../jobs/telemetry-logstash-dock}/config.xml | 108 +++--- .../jobs/DockDev}/jobs/Plugins/config.xml | 0 .../Plugins/jobs/CollectionEditor/config.xml | 131 ++++---- .../Plugins/jobs/ContentEditor/config.xml | 129 ++++---- .../Plugins/jobs/ContentPlayer/config.xml | 134 ++++---- .../Plugins/jobs/ContentPlugins/config.xml | 197 +++++++++++ .../Plugins/jobs/GenericEditor/config.xml | 134 ++++---- .../org_sunbird_questionunit_quml}/config.xml | 51 ++- .../dev/jobs/Core/jobs/Assessment/config.xml | 150 --------- .../Core/jobs/CassandraTrigger/config.xml | 218 ------------ .../jobs/dev/jobs/Core/jobs/Cert/config.xml | 150 --------- .../Core/jobs/CertRegistryService/config.xml | 148 --------- .../dev/jobs/Core/jobs/Learner/config.xml | 150 --------- .../jobs/ReloadContainerServices/config.xml | 72 ---- .../dev/jobs/Core/jobs/Telemetry/config.xml | 148 --------- .../Core/jobs/TelemetryLogstash/config.xml | 115 ------- .../jobs/dev/jobs/Core/jobs/Yarn/config.xml | 235 ------------- .../jobs/dev/jobs/DataPipeline/config.xml | 29 -- .../DataPipeline/jobs/AnalyticsAPI/config.xml | 215 ------------ .../AnalyticsGeoLocationDBSetup/config.xml | 124 ------- .../config.xml | 152 --------- .../jobs/AnalyticsReplayJobs/config.xml | 166 ---------- .../jobs/AnalyticsStartJobManager/config.xml | 130 -------- .../DataPipeline/jobs/ApiModule/config.xml | 178 ---------- .../jobs/CassandraDbUpdate/config.xml | 122 ------- .../DataPipeline/jobs/DataProducts/config.xml | 226 ------------- .../jobs/DataproductsConfigUpdate/config.xml | 136 -------- .../jobs/ETLDruidContentIndexer/config.xml | 234 ------------- .../jobs/DataPipeline/jobs/ETLJobs/config.xml | 245 -------------- .../jobs/ETLUserCacheIndexer/config.xml | 234 ------------- .../DataPipeline/jobs/KafkaIndexer/config.xml | 124 ------- .../DataPipeline/jobs/KafkaSetup/config.xml | 124 ------- .../DataPipeline/jobs/Monitoring/config.xml | 129 -------- .../jobs/DataPipeline/jobs/Secor/config.xml | 226 ------------- .../jobs/DataPipeline/jobs/Yarn/config.xml | 251 -------------- .../dev/jobs/KnowledgePlatform/config.xml | 29 -- .../jobs/CassandraTrigger/config.xml | 221 ------------- .../jobs/ESMapping/config.xml | 147 --------- .../KnowledgePlatform/jobs/Search/config.xml | 226 ------------- .../jobs/ValidateLearning/config.xml | 125 ------- .../Deploy/jobs/dev/jobs/Summary/config.xml | 29 -- .../Summary/jobs/DeployedVersions/config.xml | 74 ----- .../jobs/DockDev}/config.xml | 1 - .../jobs/DockDev/jobs/Core/config.xml | 28 ++ .../jobs/Core/jobs/CreateUser/config.xml | 72 ++-- .../Core/jobs/ElasticsearchBackup}/config.xml | 74 +++-- .../jobs/Core/jobs/Log4jFix}/config.xml | 88 ++--- .../jobs/DockDev/jobs/DataPipeline/config.xml | 28 ++ .../DataPipeline/jobs/Log4jFix}/config.xml | 88 ++--- .../jobs/KnowledgePlatform}/config.xml | 1 - .../jobs/CassandraBackup/config.xml | 77 ++--- .../jobs/CreateUser/config.xml | 32 +- .../jobs/ElasticsearchBackup/config.xml | 36 +- .../jobs/Log4jFix}/config.xml | 90 ++--- .../jobs/SamzaOrphanprocessAlert/config.xml | 31 +- .../jobs/dev/jobs/Core/config.xml | 29 -- .../config.xml | 127 ------- .../dev/jobs/Core/jobs/Bootstrap/config.xml | 128 ------- .../jobs/Core/jobs/CassandraBackup/config.xml | 122 ------- .../Core/jobs/ClearDockerImages/config.xml | 40 --- .../jobs/Core/jobs/ClearWorkspace/config.xml | 40 --- .../dev/jobs/Core/jobs/ESMapping/config.xml | 136 -------- .../jobs/Core/jobs/GrafanaBackup/config.xml | 117 ------- .../jobs/Core/jobs/JenkinsBackup/config.xml | 121 ------- .../dev/jobs/Core/jobs/KeyRotation/config.xml | 145 -------- .../jobs/LoggerElasticSearchBackup/config.xml | 122 ------- .../LoggerElasticSearchRestore/config.xml | 127 ------- .../jobs/ManagedPostgresBackup/config.xml | 130 -------- .../dev/jobs/Core/jobs/MonitDeploy/config.xml | 130 -------- .../dev/jobs/Core/jobs/MonitStatus/config.xml | 144 -------- .../Core/jobs/PostgresqlBackup/config.xml | 122 ------- .../Core/jobs/PostgresqlRestore/config.xml | 113 ------- .../Core/jobs/PrometheusBackup/config.xml | 122 ------- .../Core/jobs/PrometheusSanpshot/config.xml | 122 ------- .../jobs/Core/jobs/SwarmBootstrap/config.xml | 113 ------- .../jobs/dev/jobs/DataPipeline/config.xml | 29 -- .../DataPipeline/jobs/Bootstrap/config.xml | 119 ------- .../jobs/CassandraBackup/config.xml | 141 -------- .../jobs/CassandraRestore/config.xml | 132 -------- .../jobs/ConsumerLagAlert/config.xml | 135 -------- .../DataPipeline/jobs/CreateUser/config.xml | 140 -------- .../jobs/DataproductsAlert/config.xml | 129 -------- .../jobs/ElasticsearchBackup/config.xml | 135 -------- .../jobs/ElasticsearchRestore/config.xml | 134 -------- .../jobs/InfluxDBBackup/config.xml | 129 -------- .../DataPipeline/jobs/KeyRotation/config.xml | 145 -------- .../DataPipeline/jobs/MonitDeploy/config.xml | 138 -------- .../jobs/PostgresqlBackup/config.xml | 113 ------- .../jobs/PostgresqlRestore/config.xml | 113 ------- .../jobs/SamzaJobsAlert/config.xml | 129 -------- .../jobs/SamzaJobsAlertProvision/config.xml | 125 ------- .../jobs/SamzaJobsKill/config.xml | 146 -------- .../jobs/SamzaLogsBackup/config.xml | 129 -------- .../jobs/SamzaMonitoringProvision/config.xml | 67 ---- .../jobs/SamzaThroughputAlert/config.xml | 137 -------- .../dev/jobs/KnowledgePlatform/config.xml | 29 -- .../jobs/Bootstrap/config.xml | 118 ------- .../jobs/CassandraRestore/config.xml | 135 -------- .../jobs/ElasticsearchRestore/config.xml | 129 -------- .../jobs/KeyRotation/config.xml | 145 -------- .../jobs/MonitDeploy/config.xml | 130 -------- .../jobs/MonitStatus/config.xml | 144 -------- .../jobs/Neo4jBackup/config.xml | 122 ------- .../jobs/Neo4jRestore/config.xml | 127 ------- .../jobs/RedisBackup/config.xml | 122 ------- .../jobs/DockDev}/config.xml | 1 - .../jobs/DockDev/jobs/Core/config.xml | 29 ++ .../jobs/Core/jobs/Cassandra}/config.xml | 28 +- .../jobs/Core/jobs/Es7}/config.xml | 79 ++--- .../Core/jobs/PostgresDbUpdate}/config.xml | 28 +- .../jobs/KnowledgePlatform}/config.xml | 0 .../jobs/Cassandra}/config.xml | 20 +- .../jobs/CompositeSearch}/config.xml | 26 +- .../KnowledgePlatform/jobs/Kafka/config.xml | 12 +- .../jobs/Learning/config.xml | 12 +- .../KnowledgePlatform/jobs/Neo4j/config.xml | 72 ++-- .../KnowledgePlatform/jobs/Redis/config.xml | 12 +- .../jobs/RedisCluster/config.xml | 12 +- .../jobs/Zookeeper/config.xml | 12 +- .../jobs/Provision/jobs/dev/config.xml | 29 -- .../Provision/jobs/dev/jobs/Core/config.xml | 29 -- .../jobs/Core/jobs/JenkinsSlave/config.xml | 70 ---- .../jobs/dev/jobs/Core/jobs/Kafka/config.xml | 115 ------- .../dev/jobs/Core/jobs/Logstash/config.xml | 115 ------- .../Core/jobs/PostgresDbUpdate/config.xml | 115 ------- .../jobs/PostgresDbUpdateManaged/config.xml | 115 ------- .../dev/jobs/Core/jobs/Registry/config.xml | 115 ------- .../jobs/dev/jobs/Core/jobs/Secor/config.xml | 115 ------- .../jobs/dev/jobs/DataPipeline/config.xml | 29 -- .../DataPipeline/jobs/AnalyticsAPI/config.xml | 122 ------- .../jobs/AnalyticsSecor/config.xml | 119 ------- .../jobs/AnalyticsSpark/config.xml | 124 ------- .../DataPipeline/jobs/Cassandra/config.xml | 120 ------- .../jobs/DataPipeline/jobs/Druid/config.xml | 67 ---- .../DataPipeline/jobs/InfluxDB/config.xml | 119 ------- .../jobs/DataPipeline/jobs/Kafka/config.xml | 128 ------- .../jobs/DataPipeline/jobs/Kibana/config.xml | 120 ------- .../DataPipeline/jobs/MLWorkbench/config.xml | 67 ---- .../jobs/DataPipeline/jobs/NodeJs/config.xml | 124 ------- .../DataPipeline/jobs/Postgres/config.xml | 119 ------- .../jobs/TelemetrySearch/config.xml | 122 ------- .../jobs/DataPipeline/jobs/Yarn/config.xml | 124 ------- .../DataPipeline/jobs/Zookeeper/config.xml | 127 ------- .../jobs/postgres-managed/config.xml | 123 ------- .../dev/jobs/KnowledgePlatform/config.xml | 29 -- .../jobs/Cassandra/config.xml | 123 ------- .../KnowledgePlatform/jobs/Search/config.xml | 123 ------- .../KnowledgePlatform/jobs/Yarn/config.xml | 125 ------- .../ansible/inventory/DockDev/Core/common.yml | 280 ++++++++++++++++ .../ansible/inventory/DockDev/Core/hosts | 93 ++++++ .../inventory/DockDev/Core/secrets.yml | 74 +++++ .../DockDev/KnowledgePlatform/common.yml | 312 ++++++++++++++++++ .../{dev => DockDev}/KnowledgePlatform/hosts | 91 +++-- .../DockDev/KnowledgePlatform/secrets.yml | 26 ++ .../ansible/inventory/dev/Core/common.yml | 160 --------- private_repo/ansible/inventory/dev/Core/hosts | 195 ----------- .../ansible/inventory/dev/Core/secrets.yml | 118 ------- .../inventory/dev/DataPipeline/common.yml | 47 --- .../ansible/inventory/dev/DataPipeline/hosts | 166 ---------- .../inventory/dev/DataPipeline/secrets.yml | 15 - .../dev/KnowledgePlatform/common.yml | 49 --- .../dev/KnowledgePlatform/secrets.yml | 11 - 320 files changed, 7338 insertions(+), 20878 deletions(-) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev => DockDev}/config.xml (81%) rename deploy/jenkins/jobs/{Build/jobs/Plugins => ArtifactUpload/jobs/DockDev/jobs/Core}/config.xml (81%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Print => DockDev/jobs/Core/jobs/APIManager}/config.xml (87%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/KnowledgeMW => DockDev/jobs/Core/jobs/APIManagerEcho}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Assessment/config.xml create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Bot/config.xml rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Yarn => DockDev/jobs/Core/jobs/Cassandra}/config.xml (88%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Cassandra => DockDev/jobs/Core/jobs/CassandraTrigger}/config.xml (88%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Lms => DockDev/jobs/Core/jobs/Cert}/config.xml (87%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Cert => DockDev/jobs/Core/jobs/CertRegistryService}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Content/config.xml rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/DataPipeline/jobs/ApiModule => DockDev/jobs/Core/jobs/DockOpensaber}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Hawkeye-superset/config.xml rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Player => DockDev/jobs/Core/jobs/KnowledgeMW}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Mlworkbench/config.xml rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Proxy => DockDev/jobs/Core/jobs/Player}/config.xml (85%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Program/config.xml create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Proxy/config.xml rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Assessment => DockDev/jobs/Core/jobs/Report}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Router/config.xml rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Content => DockDev/jobs/Core/jobs/Search}/config.xml (87%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Core/jobs/Learner => DockDev/jobs/Core/jobs/Taxonomy}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Telemetry/config.xml rename deploy/jenkins/jobs/{Deploy/jobs/dev/jobs/Plugins => ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform}/config.xml (81%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/KnowledgePlatform/jobs/KnowledgePlatform => DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger}/config.xml (88%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs/config.xml rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/KnowledgePlatform/jobs/Neo4j => DockDev/jobs/KnowledgePlatform/jobs/Learning}/config.xml (86%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/KnowledgePlatform/jobs/Yarn => DockDev/jobs/KnowledgePlatform/jobs/Neo4j}/config.xml (88%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/KnowledgePlatform/jobs/CassandraTrigger => DockDev/jobs/KnowledgePlatform/jobs/SyncTool}/config.xml (88%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/KnowledgePlatform/jobs/SyncTool => DockDev/jobs/KnowledgePlatform/jobs/Yarn}/config.xml (88%) rename deploy/jenkins/jobs/{OpsAdministration/jobs/dev => ArtifactUpload/jobs/DockDev/jobs/Plugins}/config.xml (81%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Plugins/jobs/ContentEditor => DockDev/jobs/Plugins/jobs/CollectionEditor}/config.xml (87%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Plugins/jobs/ContentPlayer => DockDev/jobs/Plugins/jobs/ContentEditor}/config.xml (87%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Plugins/jobs/ContentPlugins => DockDev/jobs/Plugins/jobs/ContentPlayer}/config.xml (87%) rename deploy/jenkins/jobs/ArtifactUpload/jobs/{dev/jobs/Plugins/jobs/GenericEditor => DockDev/jobs/Plugins/jobs/ContentPlugins}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/GenericEditor/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManager/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManagerEcho/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/AdminUtils/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Badger/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraDecrypt/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Keycloak/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Notification/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Telemetry/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/UserOrg/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Analytics/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/DataPipeline/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/config.xml delete mode 100644 deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/CollectionEditor/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/APIManagerEcho/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/AdminUtils/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/Badger/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/Cert/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/CertRegistryService/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/EncService/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/Learner/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/Notification/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/UserOrg/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/Core/jobs/Yarn/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/DataPipeline/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/ETLJobs/config.xml delete mode 100644 deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/Secor/config.xml create mode 100644 deploy/jenkins/jobs/Build/jobs/DockCore/config.xml rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/APIManager/config.xml (100%) rename deploy/jenkins/jobs/Build/jobs/{Plugins/jobs/CollectionEditor => DockCore/jobs/ApiManagerEcho}/config.xml (64%) rename deploy/jenkins/jobs/{ArtifactUpload/jobs/dev/jobs/Core/jobs/EncService => Build/jobs/DockCore/jobs/Assessment}/config.xml (56%) create mode 100644 deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Bot/config.xml rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/Cassandra/config.xml (72%) rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/CassandraDecrypt/config.xml (97%) rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/CassandraTrigger/config.xml (97%) rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/Content/config.xml (71%) rename deploy/jenkins/jobs/Build/jobs/{DataPipeline/jobs/DataPipeline => DockCore/jobs/DockOpensaber}/config.xml (64%) rename deploy/jenkins/jobs/Build/jobs/{Core/jobs/Print => DockCore/jobs/Hawkeye-superset}/config.xml (67%) rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/KnowledgeMW/config.xml (66%) create mode 100644 deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Mlworkbench/config.xml rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/Player/config.xml (68%) rename deploy/jenkins/jobs/Build/jobs/{Core/jobs/Keycloak => DockCore/jobs/Program}/config.xml (66%) rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/Proxy/config.xml (84%) rename deploy/jenkins/jobs/Build/jobs/{Core/jobs/Lms => DockCore/jobs/Report}/config.xml (68%) create mode 100644 deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Router/config.xml rename deploy/jenkins/jobs/Build/jobs/{DataPipeline/jobs/Analytics => DockCore/jobs/Search}/config.xml (69%) rename deploy/jenkins/jobs/Build/jobs/{DataPipeline/jobs/ApiModule => DockCore/jobs/Taxonomy}/config.xml (68%) rename deploy/jenkins/jobs/Build/jobs/{Core => DockCore}/jobs/Telemetry/config.xml (97%) rename deploy/jenkins/jobs/Build/jobs/{KnowledgePlatform => DockKnowledgePlatform}/config.xml (82%) rename deploy/jenkins/jobs/Build/jobs/{KnowledgePlatform => DockKnowledgePlatform}/jobs/CassandraTrigger/config.xml (72%) create mode 100644 deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/FlinkJobs/config.xml create mode 100644 deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/InquiryFlinkJob/config.xml rename deploy/jenkins/jobs/Build/jobs/{KnowledgePlatform/jobs/KnowledgePlatform => DockKnowledgePlatform/jobs/Learning}/config.xml (75%) rename deploy/jenkins/jobs/Build/jobs/{Core/jobs/Assessment => DockKnowledgePlatform/jobs/Neo4j}/config.xml (67%) rename deploy/jenkins/jobs/Build/jobs/{KnowledgePlatform => DockKnowledgePlatform}/jobs/SyncTool/config.xml (68%) rename deploy/jenkins/jobs/Build/jobs/{KnowledgePlatform => DockKnowledgePlatform}/jobs/Yarn/config.xml (74%) create mode 100644 deploy/jenkins/jobs/Build/jobs/DockPlugins/config.xml rename deploy/jenkins/jobs/Build/jobs/{Plugins => DockPlugins}/jobs/ContentEditor/config.xml (67%) rename deploy/jenkins/jobs/Build/jobs/{Plugins => DockPlugins}/jobs/ContentPlayer/config.xml (67%) rename deploy/jenkins/jobs/Build/jobs/{Plugins => DockPlugins}/jobs/ContentPlugins/config.xml (67%) rename deploy/jenkins/jobs/Build/jobs/{Plugins => DockPlugins}/jobs/GenericEditor/config.xml (67%) delete mode 100644 deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/Neo4j/config.xml create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/config.xml create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Core/jobs/Bootstrap/config.xml (96%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Core/jobs/KafkaSetup/config.xml (59%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Core/jobs/Logging/config.xml (96%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Core/jobs/Logstash/config.xml (96%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Core/jobs/Monitoring/config.xml (94%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Core/jobs/Oauth/config.xml (95%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Core/jobs/Proxy/config.xml (96%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/CassandraDbUpdate/config.xml (60%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/KnowledgePlatform/jobs/Learning => DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger}/config.xml (85%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/ContentTool/config.xml (89%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/FileSyncTool/config.xml (96%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/PlayerCDN => DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs}/config.xml (52%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/KafkaSetup/config.xml (61%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/KnowledgePlatform/jobs/AssetSizeMigration => DockDev/jobs/KnowledgePlatform/jobs/Learning}/config.xml (56%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Monitoring/config.xml (96%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Neo4j/config.xml (59%) rename deploy/jenkins/jobs/{Provision/jobs/dev/jobs/KnowledgePlatform/jobs/CompositeSearch => Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate}/config.xml (56%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Neo4jElasticSearchSyncTool/config.xml (65%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/StartNeo4jCluster/config.xml (96%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/StopNeo4jCluster/config.xml (87%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Yarn/config.xml (55%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/config.xml rename deploy/jenkins/jobs/{OpsAdministration/jobs/dev/jobs/Core/jobs/KongMigration => Deploy/jobs/DockDev/jobs/Kubernetes/jobs/APIManager}/config.xml (62%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/Print => DockDev/jobs/Kubernetes/jobs/APIManagerEcho}/config.xml (86%) rename deploy/jenkins/jobs/{Provision/jobs/dev/jobs/Core/jobs/LogEsUpgrade6xx => Deploy/jobs/DockDev/jobs/Kubernetes/jobs/ApplicationElasticSearch}/config.xml (78%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Assessment/config.xml rename deploy/jenkins/jobs/{OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/RedisDumpMonitoring => Deploy/jobs/DockDev/jobs/Kubernetes/jobs/BootstrapCluster}/config.xml (84%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/OnboardAPIs => DockDev/jobs/Kubernetes/jobs/BootstrapMinimal}/config.xml (85%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/UserOrg => DockDev/jobs/Kubernetes/jobs/Bot}/config.xml (61%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/CassandraDecrypt => DockDev/jobs/Kubernetes/jobs/Cassandra}/config.xml (56%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core => DockDev/jobs/Kubernetes}/jobs/Content/config.xml (57%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Hawkeye-superset/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/Badger => DockDev/jobs/Kubernetes/jobs/KnowledgeMW}/config.xml (61%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/DataPipeline/jobs/AnalyticsFetchLogs => DockDev/jobs/Kubernetes/jobs/Logging}/config.xml (53%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/LoggingFileBeatsVM/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/Lms => DockDev/jobs/Kubernetes/jobs/Mlworkbench}/config.xml (61%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/DataPipeline/jobs/AnalyticsSubmitJobs => DockDev/jobs/Kubernetes/jobs/Monitoring}/config.xml (84%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/KeycloakRealm => DockDev/jobs/Kubernetes/jobs/OnboardAPIs}/config.xml (54%) rename deploy/jenkins/jobs/{Provision/jobs/dev/jobs/Core/jobs/user-keycloak => Deploy/jobs/DockDev/jobs/Kubernetes/jobs/OnboardConsumers}/config.xml (53%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/APIManager => DockDev/jobs/Kubernetes/jobs/Opensaber}/config.xml (62%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core => DockDev/jobs/Kubernetes}/jobs/Player/config.xml (62%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/PostgresqlMigration/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/AdminUtils => DockDev/jobs/Kubernetes/jobs/Program}/config.xml (61%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/EncService => DockDev/jobs/Kubernetes/jobs/Router}/config.xml (61%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Search/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/Notification => DockDev/jobs/Kubernetes/jobs/Taxonomy}/config.xml (62%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Core/jobs/KnowledgeMW => DockDev/jobs/Kubernetes/jobs/Telemetry}/config.xml (87%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/UploadCollectionHierarchyCSV/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/DataPipeline/jobs/SamzaTelemetrySchemas => DockDev/jobs/Kubernetes/jobs/UploadSchemas}/config.xml (53%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-private-ingress/config.xml create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-public-ingress/config.xml rename deploy/jenkins/jobs/{OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputProvision => Deploy/jobs/DockDev/jobs/Kubernetes/jobs/redis}/config.xml (56%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/DataPipeline/jobs/DruidIngestion => DockDev/jobs/Kubernetes/jobs/telemetry-logstash-dock}/config.xml (55%) rename deploy/jenkins/jobs/{ArtifactUpload/jobs/dev => Deploy/jobs/DockDev}/jobs/Plugins/config.xml (100%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Plugins/jobs/CollectionEditor/config.xml (59%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Plugins/jobs/ContentEditor/config.xml (59%) rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Plugins/jobs/ContentPlayer/config.xml (57%) create mode 100644 deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentPlugins/config.xml rename deploy/jenkins/jobs/Deploy/jobs/{dev => DockDev}/jobs/Plugins/jobs/GenericEditor/config.xml (57%) rename deploy/jenkins/jobs/Deploy/jobs/{dev/jobs/Plugins/jobs/ContentPlugins => DockDev/jobs/Plugins/jobs/org_sunbird_questionunit_quml}/config.xml (89%) delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Assessment/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Cert/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Learner/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/ReloadContainerServices/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Telemetry/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/TelemetryLogstash/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Yarn/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsGeoLocationDBSetup/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsPopulatePSQLConsumerChannelMapping/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsReplayJobs/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsStartJobManager/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ApiModule/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/CassandraDbUpdate/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataProducts/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataproductsConfigUpdate/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLDruidContentIndexer/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLUserCacheIndexer/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaIndexer/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaSetup/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Monitoring/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ESMapping/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ValidateLearning/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/config.xml delete mode 100644 deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/jobs/DeployedVersions/config.xml rename deploy/jenkins/jobs/{Deploy/jobs/dev => OpsAdministration/jobs/DockDev}/config.xml (99%) create mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/config.xml rename deploy/jenkins/jobs/OpsAdministration/jobs/{dev => DockDev}/jobs/Core/jobs/CreateUser/config.xml (64%) rename deploy/jenkins/jobs/OpsAdministration/jobs/{dev/jobs/Core/jobs/ApplicationElasticsearchBackup => DockDev/jobs/Core/jobs/ElasticsearchBackup}/config.xml (58%) rename deploy/jenkins/jobs/{Provision/jobs/dev/jobs/Core/jobs/Postgres => OpsAdministration/jobs/DockDev/jobs/Core/jobs/Log4jFix}/config.xml (51%) create mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/DataPipeline/config.xml rename deploy/jenkins/jobs/{Provision/jobs/dev/jobs/Core/jobs/Cassandra => OpsAdministration/jobs/DockDev/jobs/DataPipeline/jobs/Log4jFix}/config.xml (51%) rename deploy/jenkins/jobs/{ArtifactUpload/jobs/dev/jobs/DataPipeline => OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform}/config.xml (99%) rename deploy/jenkins/jobs/OpsAdministration/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/CassandraBackup/config.xml (62%) rename deploy/jenkins/jobs/OpsAdministration/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/CreateUser/config.xml (89%) rename deploy/jenkins/jobs/OpsAdministration/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/ElasticsearchBackup/config.xml (86%) rename deploy/jenkins/jobs/OpsAdministration/jobs/{dev/jobs/DataPipeline/jobs/DruidPostgresBackup => DockDev/jobs/KnowledgePlatform/jobs/Log4jFix}/config.xml (51%) rename deploy/jenkins/jobs/OpsAdministration/jobs/{dev/jobs/DataPipeline => DockDev/jobs/KnowledgePlatform}/jobs/SamzaOrphanprocessAlert/config.xml (84%) delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ApplicationElasticsearchRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/Bootstrap/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/CassandraBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearDockerImages/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearWorkspace/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ESMapping/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/GrafanaBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/JenkinsBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/KeyRotation/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ManagedPostgresBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitDeploy/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitStatus/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusSanpshot/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/SwarmBootstrap/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/Bootstrap/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ConsumerLagAlert/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CreateUser/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/DataproductsAlert/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/InfluxDBBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/KeyRotation/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/MonitDeploy/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlert/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlertProvision/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsKill/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaLogsBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaMonitoringProvision/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputAlert/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Bootstrap/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/ElasticsearchRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/KeyRotation/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitDeploy/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitStatus/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jBackup/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jRestore/config.xml delete mode 100644 deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/RedisBackup/config.xml rename deploy/jenkins/jobs/{Deploy/jobs/dev/jobs/Core => Provision/jobs/DockDev}/config.xml (99%) create mode 100644 deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/config.xml rename deploy/jenkins/jobs/{Deploy/jobs/dev/jobs/Core/jobs/OnboardConsumers => Provision/jobs/DockDev/jobs/Core/jobs/Cassandra}/config.xml (88%) rename deploy/jenkins/jobs/Provision/jobs/{dev/jobs/Core/jobs/keycloak-test => DockDev/jobs/Core/jobs/Es7}/config.xml (54%) rename deploy/jenkins/jobs/Provision/jobs/{dev/jobs/Core/jobs/Keycloak => DockDev/jobs/Core/jobs/PostgresDbUpdate}/config.xml (87%) rename deploy/jenkins/jobs/{ArtifactUpload/jobs/dev/jobs/Core => Provision/jobs/DockDev/jobs/KnowledgePlatform}/config.xml (100%) rename deploy/jenkins/jobs/Provision/jobs/{dev/jobs/DataPipeline/jobs/RedisCluster => DockDev/jobs/KnowledgePlatform/jobs/Cassandra}/config.xml (91%) rename deploy/jenkins/jobs/{Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate => Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/CompositeSearch}/config.xml (89%) rename deploy/jenkins/jobs/Provision/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Kafka/config.xml (96%) rename deploy/jenkins/jobs/Provision/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Learning/config.xml (96%) rename deploy/jenkins/jobs/Provision/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Neo4j/config.xml (61%) rename deploy/jenkins/jobs/Provision/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Redis/config.xml (96%) rename deploy/jenkins/jobs/Provision/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/RedisCluster/config.xml (96%) rename deploy/jenkins/jobs/Provision/jobs/{dev => DockDev}/jobs/KnowledgePlatform/jobs/Zookeeper/config.xml (96%) delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/JenkinsSlave/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Kafka/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Logstash/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdate/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdateManaged/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Registry/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Secor/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSecor/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSpark/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Cassandra/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Druid/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/InfluxDB/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kafka/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kibana/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/MLWorkbench/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/NodeJs/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Postgres/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/TelemetrySearch/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Zookeeper/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/postgres-managed/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Cassandra/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml delete mode 100644 deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml create mode 100644 private_repo/ansible/inventory/DockDev/Core/common.yml create mode 100644 private_repo/ansible/inventory/DockDev/Core/hosts create mode 100644 private_repo/ansible/inventory/DockDev/Core/secrets.yml create mode 100644 private_repo/ansible/inventory/DockDev/KnowledgePlatform/common.yml rename private_repo/ansible/inventory/{dev => DockDev}/KnowledgePlatform/hosts (51%) create mode 100644 private_repo/ansible/inventory/DockDev/KnowledgePlatform/secrets.yml delete mode 100644 private_repo/ansible/inventory/dev/Core/common.yml delete mode 100644 private_repo/ansible/inventory/dev/Core/hosts delete mode 100644 private_repo/ansible/inventory/dev/Core/secrets.yml delete mode 100644 private_repo/ansible/inventory/dev/DataPipeline/common.yml delete mode 100644 private_repo/ansible/inventory/dev/DataPipeline/hosts delete mode 100644 private_repo/ansible/inventory/dev/DataPipeline/secrets.yml delete mode 100644 private_repo/ansible/inventory/dev/KnowledgePlatform/common.yml delete mode 100644 private_repo/ansible/inventory/dev/KnowledgePlatform/secrets.yml diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/config.xml similarity index 81% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/config.xml index 6fe3ca0b64..92618cba96 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/config.xml @@ -1,12 +1,12 @@ - + - + - - + + diff --git a/deploy/jenkins/jobs/Build/jobs/Plugins/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/config.xml similarity index 81% rename from deploy/jenkins/jobs/Build/jobs/Plugins/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/config.xml index 5be56a4e05..86bb2b1c57 100644 --- a/deploy/jenkins/jobs/Build/jobs/Plugins/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/config.xml @@ -1,12 +1,12 @@ - + - + - - + + diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Print/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/APIManager/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Print/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/APIManager/config.xml index df8959b6a3..357eb7d1c0 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Print/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/APIManager/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Print + Build/DockCore/APIManager false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Print + + Build/DockCore/APIManager SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 1 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/KnowledgeMW/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/APIManagerEcho/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/KnowledgeMW/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/APIManagerEcho/config.xml index 1d398f8845..b1ad91f904 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/KnowledgeMW/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/APIManagerEcho/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/KnowledgeMW + Build/DockCore/ApiManagerEcho false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/KnowledgeMW + + /Build/DockCore/ApiManagerEcho SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 1 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Assessment/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Assessment/config.xml new file mode 100644 index 0000000000..5c5442c93d --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Assessment/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Assessment + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Assessment + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 0 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Bot/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Bot/config.xml new file mode 100644 index 0000000000..c3c0dd7cc8 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Bot/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Bot + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Bot + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Yarn/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Cassandra/config.xml similarity index 88% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Yarn/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Cassandra/config.xml index 8469565882..3322ce6ca8 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Yarn/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Cassandra/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,19 +7,19 @@ - + false -1 - -1 + 10 -1 - 5 + 1 - + false false @@ -29,7 +28,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Yarn + Build/DockCore/Cassandra false @@ -51,20 +50,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - /Build/Core/Yarn + + /Build/DockCore/Cassandra SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J true false - + 0 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Cassandra/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/CassandraTrigger/config.xml similarity index 88% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Cassandra/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/CassandraTrigger/config.xml index e26714086f..9476166467 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Cassandra/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/CassandraTrigger/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,7 +28,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Cassandra + Build/DockCore/CassandraTrigger false @@ -51,20 +50,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - /Build/Core/Cassandra + + /Build/DockCore/CassandraTrigger SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J true false - + 0 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Lms/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Cert/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Lms/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Cert/config.xml index eecb2f3184..4eff6852d0 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Lms/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Cert/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Lms + Build/DockCore/Cert false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Lms + + /Build/DockCore/Cert SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 0 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Cert/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/CertRegistryService/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Cert/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/CertRegistryService/config.xml index fc06750462..5caefe8290 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Cert/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/CertRegistryService/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,19 +7,19 @@ - + false -1 - -1 + 10 -1 - 5 + 1 - + false false @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Cert + Build/DockCore/CertRegistryService false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Cert + + /Build/DockCore/CertRegistryService SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 0 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Content/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Content/config.xml new file mode 100644 index 0000000000..2900cc8a05 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Content/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Content + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Content + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 0 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/ApiModule/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/DockOpensaber/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/ApiModule/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/DockOpensaber/config.xml index 2f3f7f3cd0..6d4240af11 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/ApiModule/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/DockOpensaber/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/DataPipeline/ApiModule + Build/DockCore/DockOpensaber false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - Build/DataPipeline/ApiModule + + /Build/DockCore/DockOpensaber SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 1 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Hawkeye-superset/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Hawkeye-superset/config.xml new file mode 100644 index 0000000000..463ee41d71 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Hawkeye-superset/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Hawkeye-superset + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Hawkeye-superset + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Player/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/KnowledgeMW/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Player/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/KnowledgeMW/config.xml index a0c8fd7a65..61adcd9b41 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Player/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/KnowledgeMW/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,19 +7,19 @@ - + false -1 - -1 + 10 -1 - 5 + 1 - + false false @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Player + Build/DockCore/KnowledgeMW false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Player + + /Build/DockCore/KnowledgeMW SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 1 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Mlworkbench/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Mlworkbench/config.xml new file mode 100644 index 0000000000..b4cade7cf9 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Mlworkbench/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Mlworkbench + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Mlworkbench + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Proxy/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Player/config.xml similarity index 85% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Proxy/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Player/config.xml index 281955d43a..33aafc0b52 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Proxy/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Player/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 1 - + false false @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Proxy + Build/DockCore/Player false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Proxy + + /Build/DockCore/Player SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -89,12 +89,12 @@ ArtifactRepo - Push the docker image to container registry. false - + true false - + 1 false @@ -105,4 +105,4 @@ ArtifactRepo - Push the docker image to container registry. false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Program/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Program/config.xml new file mode 100644 index 0000000000..5f53df5651 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Program/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Program + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Program + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Proxy/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Proxy/config.xml new file mode 100644 index 0000000000..aaa5e20912 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Proxy/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Proxy + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Proxy + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Assessment/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Report/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Assessment/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Report/config.xml index 99461aa982..6f6cb5f8d7 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Assessment/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Report/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Assessment + Build/DockCore/Report false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Assessment + + /Build/DockCore/Report SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 0 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Router/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Router/config.xml new file mode 100644 index 0000000000..a7f4fdbd38 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Router/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Router + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Router + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Content/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Search/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Content/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Search/config.xml index ff83188c26..09c5f61704 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Content/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Search/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Content + Build/DockCore/Search false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Content + + /Build/DockCore/Search SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 0 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Learner/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Taxonomy/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Learner/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Taxonomy/config.xml index 28100d104e..aed9180b62 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Learner/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Taxonomy/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,13 +28,13 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Learner + Build/DockCore/Taxonomy false image_tag <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + false @@ -51,20 +50,21 @@ ArtifactRepo - Push the docker image to container registry. - + 0 0 false project false - + + - - /Build/Core/Learner + + /Build/DockCore/Taxonomy SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Push the docker image to container registry. - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Push the docker image to container registry. true false - + 0 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Telemetry/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Telemetry/config.xml new file mode 100644 index 0000000000..e2f83091ba --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Core/jobs/Telemetry/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockCore/Telemetry + false + + + image_tag + <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Push the docker image to container registry. +</b></font> + + + ArtifactRepo + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockCore/Telemetry + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + pipelines/upload/docker/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/config.xml similarity index 81% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/config.xml index 5be56a4e05..86bb2b1c57 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/config.xml @@ -1,12 +1,12 @@ - + - + - - + + diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml similarity index 88% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/KnowledgePlatform/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml index 5444de21f6..d70e87d956 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/KnowledgePlatform/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,7 +28,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/KnowledgePlatform/KnowledgePlatform + Build/DockKnowledgePlatform/CassandraTrigger false @@ -51,20 +50,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - /Build/KnowledgePlatform/KnowledgePlatform + + /Build/DockKnowledgePlatform/CassandraTrigger SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J true false - + 1 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs/config.xml new file mode 100644 index 0000000000..3d04ba80f1 --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs/config.xml @@ -0,0 +1,108 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + /Build/DockKnowledgePlatform/FlinkJobs + false + + + image_tag + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> + + + ArtifactRepo + JenkinsJob + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockKnowledgePlatform/FlinkJobs + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-learning-platform.git + + + + + ${public_repo_branch} + + + false + + + + true + false + + 1 + false + + + + kubernetes/pipelines/upload/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml similarity index 86% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml index e3162085bb..a138507fe7 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 1 - + false false @@ -29,7 +28,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/KnowledgePlatform/Neo4j + Build/DockKnowledgePlatform/Learning false @@ -51,20 +50,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - /Build/KnowledgePlatform/Neo4j + + Build/DockKnowledgePlatform/Learning SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -89,12 +89,12 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J false - + true false - + 1 false @@ -105,4 +105,4 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml similarity index 88% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml index 2d60345419..81ca3bdbb9 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,7 +28,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/KnowledgePlatform/Yarn + Build/DockKnowledgePlatform/Neo4j false @@ -51,20 +50,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - /Build/KnowledgePlatform/Yarn + + /Build/DockKnowledgePlatform/Neo4j SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J true false - + 1 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/SyncTool/config.xml similarity index 88% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/SyncTool/config.xml index b2b55dbb54..4b59bfda9d 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/SyncTool/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,19 +7,19 @@ - + false -1 - -1 + 10 -1 - 5 + 1 - + false false @@ -29,7 +28,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/KnowledgePlatform/CassandraTrigger + /Build/DockKnowledgePlatform/SyncTool false @@ -51,20 +50,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - /Build/KnowledgePlatform/CassandraTrigger + + /Build/DockKnowledgePlatform/SyncTool SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J true false - + 1 false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/SyncTool/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Yarn/config.xml similarity index 88% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/SyncTool/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Yarn/config.xml index 02ab22706e..f505c1b578 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/jobs/SyncTool/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/KnowledgePlatform/jobs/Yarn/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 1 @@ -29,7 +28,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/KnowledgePlatform/SyncTool + /Build/DockKnowledgePlatform/Yarn false @@ -51,20 +50,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - /Build/KnowledgePlatform/SyncTool + + /Build/DockKnowledgePlatform/Yarn SUCCESS 0 @@ -75,8 +75,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -94,7 +94,7 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J true false - + 1 false diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/config.xml similarity index 81% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/config.xml index 6fe3ca0b64..92618cba96 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/config.xml @@ -1,12 +1,12 @@ - + - + - - + + diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentEditor/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/CollectionEditor/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentEditor/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/CollectionEditor/config.xml index 9b43d7d8fa..17acec28da 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentEditor/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/CollectionEditor/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 - + false false @@ -22,7 +21,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Plugins/ContentEditor + Build/DockPlugins/CollectionEditor false @@ -44,20 +43,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - Build/Plugins/ContentEditor + + /Build/DockPlugins/CollectionEditor SUCCESS 0 @@ -68,8 +68,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentPlayer/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentEditor/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentPlayer/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentEditor/config.xml index 6dcf3f76b4..ded55ec685 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentPlayer/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentEditor/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 - + false false @@ -22,7 +21,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Plugins/ContentPlayer + Build/DockPlugins/ContentEditor false @@ -44,20 +43,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - Build/Plugins/ContentPlayer + + /Build/DockPlugins/ContentEditor SUCCESS 0 @@ -68,8 +68,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentPlugins/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentPlayer/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentPlugins/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentPlayer/config.xml index 0d3a13392b..8a17f86ed4 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/ContentPlugins/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentPlayer/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 - + false false @@ -22,7 +21,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Plugins/ContentPlugins + /Build/DockPlugins/ContentPlayer false @@ -44,20 +43,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - Build/Plugins/ContentPlugins + + /Build/DockPlugins/ContentPlayer SUCCESS 0 @@ -68,8 +68,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/GenericEditor/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentPlugins/config.xml similarity index 87% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/GenericEditor/config.xml rename to deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentPlugins/config.xml index 4f27344098..a15cad1dba 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/GenericEditor/config.xml +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/ContentPlugins/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 - + false false @@ -22,7 +21,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Plugins/GenericEditor + /Build/DockPlugins/ContentPlugins false @@ -44,20 +43,21 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - + 0 0 false project false - + + - - Build/Plugins/GenericEditor + + /Build/DockPlugins/ContentPlugins SUCCESS 0 @@ -68,8 +68,8 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J - - + + 2 @@ -90,4 +90,4 @@ ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - J false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/GenericEditor/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/GenericEditor/config.xml new file mode 100644 index 0000000000..4c2c986b4e --- /dev/null +++ b/deploy/jenkins/jobs/ArtifactUpload/jobs/DockDev/jobs/Plugins/jobs/GenericEditor/config.xml @@ -0,0 +1,93 @@ + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + Build/DockPlugins/GenericEditor + false + + + build_number + <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> + lastSuccessfulBuild + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> + + + ArtifactRepo + JenkinsJob + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /Build/DockPlugins/GenericEditor + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${public_repo_branch} + + + false + + + + pipelines/upload/plugins/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManager/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManager/config.xml deleted file mode 100644 index a3e8cbe68b..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManager/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/APIManager - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - 0 - 0 - - false - project - false - - - - - - - Build/Core/APIManager - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManagerEcho/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManagerEcho/config.xml deleted file mode 100644 index cc051470f7..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/APIManagerEcho/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/APIManagerEcho - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - 0 - 0 - - false - project - false - - - - - - - Build/Core/APIManagerEcho - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/AdminUtils/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/AdminUtils/config.xml deleted file mode 100644 index 397432f382..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/AdminUtils/config.xml +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - - - - - - - - false - - - - - - /Build/Core/AdminUtils - - SUCCESS - 0 - BLUE - true - - - - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/AdminUtils - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - 0 - 0 - - false - project - false - - 1 - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Badger/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Badger/config.xml deleted file mode 100644 index 7a4b219bb4..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Badger/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Badger - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/Core/Badger - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraDecrypt/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraDecrypt/config.xml deleted file mode 100644 index 1dec9c818c..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraDecrypt/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/CassandraDecrypt - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/Core/CassandraDecrypt - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 0 - false - - - - pipelines/upload/artifacts/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml deleted file mode 100644 index e99180b3a7..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/CassandraTrigger - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - - - - - - Build/Core/CassandraTrigger - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 0 - false - - - - pipelines/upload/artifacts/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml deleted file mode 100644 index 418c706b3d..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/CertRegistryService - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/Core/CertRegistryService - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 0 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Keycloak/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Keycloak/config.xml deleted file mode 100644 index 56e5f8b789..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Keycloak/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Keycloak - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/Core/Keycloak - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/artifacts/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Notification/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Notification/config.xml deleted file mode 100644 index a6f84bf6e1..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Notification/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Notification - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/Core/Notification - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 0 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Telemetry/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Telemetry/config.xml deleted file mode 100644 index 9bb6a0028c..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/Telemetry/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/Telemetry - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/Core/Telemetry - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/UserOrg/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/UserOrg/config.xml deleted file mode 100644 index 26c03bc496..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/UserOrg/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/UserOrg - false - - - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> - - - ArtifactRepo - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/Core/UserOrg - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 0 - false - - - - pipelines/upload/docker/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Analytics/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Analytics/config.xml deleted file mode 100644 index 7010abb55e..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Analytics/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/DataPipeline/Analytics - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/DataPipeline/Analytics - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/DataPipeline/config.xml deleted file mode 100644 index d3a16f329a..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/DataPipeline/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/DataPipeline/DataPipeline - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/DataPipeline/DataPipeline - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml deleted file mode 100644 index 309207380b..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/DataPipeline/ETLJobs - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/DataPipeline/ETLJobs - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml deleted file mode 100644 index 7a140ec413..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/DataPipeline/Secor - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - - - - - - /Build/DataPipeline/Secor - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${public_repo_branch} - - - false - - - - true - false - - 1 - false - - - - pipelines/upload/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/config.xml deleted file mode 100644 index 68477b8ac7..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/KnowledgePlatform/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/CollectionEditor/config.xml b/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/CollectionEditor/config.xml deleted file mode 100644 index 3fe0057074..0000000000 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/jobs/CollectionEditor/config.xml +++ /dev/null @@ -1,94 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - -1 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Plugins/CollectionEditor - false - - - build_number - <font color=darkgreen size=2><b>OPTIONAL: Specify the build job number to upload / copy the artifact built in that job.</b></font> - lastSuccessfulBuild - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Upload and keep a copy of the artifact in Jenkins, JenkinsJob - Just keep a copy of the artifact in Jenkins.</b></font> - - - ArtifactRepo - JenkinsJob - - - - - - - 0 - 0 - - false - project - false - - 1 - - - - - - Build/Plugins/CollectionEditor - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${public_repo_branch} - - - false - - - - pipelines/upload/plugins/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/config.xml b/deploy/jenkins/jobs/Build/config.xml index 6fe3ca0b64..8b9667dc2d 100644 --- a/deploy/jenkins/jobs/Build/config.xml +++ b/deploy/jenkins/jobs/Build/config.xml @@ -1,12 +1,17 @@ - + - + - - + + + + + + + diff --git a/deploy/jenkins/jobs/Build/jobs/Core/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/APIManagerEcho/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/APIManagerEcho/config.xml deleted file mode 100644 index a441e6b66c..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/APIManagerEcho/config.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - false - - - false - false - - - - false - project - false - - - - - - true - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/AdminUtils/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/AdminUtils/config.xml deleted file mode 100644 index 6c04d49872..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/AdminUtils/config.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - 0 - 0 - - false - project - false - - - - - - - - - true - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Badger/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/Badger/config.xml deleted file mode 100644 index 145cdd44aa..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Badger/config.xml +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - 1 - - - - - H/15 * * * * - false - - - - - - - true - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Cert/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/Cert/config.xml deleted file mode 100644 index a867909a6f..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Cert/config.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - - - github_release_tag - <font color=blue size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/cert-service.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/CertRegistryService/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/CertRegistryService/config.xml deleted file mode 100644 index bcd353ae7b..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/CertRegistryService/config.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - - - github_release_tag - <font color=blue size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/certificate-registry.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/EncService/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/EncService/config.xml deleted file mode 100644 index 013e1a9f87..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/EncService/config.xml +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/enc-service.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Learner/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/Learner/config.xml deleted file mode 100644 index b8d0132a39..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Learner/config.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-lms-service.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Notification/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/Notification/config.xml deleted file mode 100644 index 511ab2d2eb..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Notification/config.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - - - github_release_tag - <font color=blue size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-notification-service.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/UserOrg/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/UserOrg/config.xml deleted file mode 100644 index 3b5cc656b2..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/UserOrg/config.xml +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-user-service.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Yarn/config.xml b/deploy/jenkins/jobs/Build/jobs/Core/jobs/Yarn/config.xml deleted file mode 100644 index 76a1d0c7f2..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Yarn/config.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - 1 - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-lms-jobs.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/build/Jenkinsfile - false - - - true - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/Build/jobs/DataPipeline/config.xml deleted file mode 100644 index 2b6dfdd25f..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/DataPipeline/config.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/ETLJobs/config.xml b/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/ETLJobs/config.xml deleted file mode 100644 index 5de7b91e0e..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/ETLJobs/config.xml +++ /dev/null @@ -1,53 +0,0 @@ - - - - - false - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${github_release_tag} - - - false - - - - pipelines/build/adhoc-jobs/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/Secor/config.xml b/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/Secor/config.xml deleted file mode 100644 index 35dfa63937..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/Secor/config.xml +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 1 - - - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - 2 - - - https://github.com/project-sunbird/secor.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Build/jobs/DockCore/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/config.xml new file mode 100644 index 0000000000..86bb2b1c57 --- /dev/null +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/config.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/APIManager/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/APIManager/config.xml similarity index 100% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/APIManager/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/APIManager/config.xml diff --git a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/CollectionEditor/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/ApiManagerEcho/config.xml similarity index 64% rename from deploy/jenkins/jobs/Build/jobs/Plugins/jobs/CollectionEditor/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/ApiManagerEcho/config.xml index 2851393b4a..d5ae84a557 100644 --- a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/CollectionEditor/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/ApiManagerEcho/config.xml @@ -1,15 +1,14 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 @@ -21,31 +20,38 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 - https://github.com/project-sunbird/sunbird-collection-editor + https://github.com/project-sunbird/sunbird-echo-service.git @@ -53,17 +59,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/EncService/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Assessment/config.xml similarity index 56% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/EncService/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Assessment/config.xml index 77c780c037..c0c6e4b962 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/jobs/EncService/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Assessment/config.xml @@ -1,106 +1,96 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 1 - + false false - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Build/Core/EncService - false + inquiry_release_tag + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>The default value of ${inquiry_public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${inquiry_public_repo_branch} with your branch</li> +</b></font> + refs/heads/${inquiry_public_repo_branch} + true - image_tag - <font color=darkgreen size=2><b>OPTIONAL: Specify the tag to upload a specific image version to the container registry.</b></font> - + core_release_tag + <font style="color:dimgray;font-size:14px;"><b> +<li>Provide this value to build core components from Knowlg BB</li> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>The default value of ${core_public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${core_public_repo_branch} with your branch</li> +</b></font> + refs/heads/${core_public_repo_branch} false - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Push the docker image to container registry. -</b></font> + core_repo_link + Knowlg Core Repo - ArtifactRepo + https://github.com/project-sunbird/knowledge-platform.git - + 0 0 false project false - + + - - - - /Build/Core/EncService - - SUCCESS - 0 - BLUE - true - - - + - - + + 2 - https://github.com/project-sunbird/sunbird-devops.git + https://github.com/Sunbird-inQuiry/inquiry-api-service.git - ${public_repo_branch} + ${inquiry_release_tag} false - - - - true - false - - 0 - false - - + + - pipelines/upload/docker/Jenkinsfile + build/assessment-service/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Bot/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Bot/config.xml new file mode 100644 index 0000000000..03874a185b --- /dev/null +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Bot/config.xml @@ -0,0 +1,92 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + github_release_tag + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true + + + diksha_bot_tag + <font color=red size=2><b> If the value is blank, master branch will be copied from diksha private repo. Specify github tag name to build from a tag <br> + keep empty to build from master <br> + </b></font> + + false + + + diksha_bot_repo + + + + https://github.com/DIKSHA-NCTE/Diksha-bot-vdn.git + + + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-bot.git + + + + + ${github_release_tag} + + + + bot/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Cassandra/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Cassandra/config.xml similarity index 72% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Cassandra/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Cassandra/config.xml index c7470f6bfa..a80f6585a0 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Cassandra/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Cassandra/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 10 + 1 @@ -28,21 +27,28 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + @@ -52,8 +58,8 @@ - - + + 2 @@ -65,17 +71,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/CassandraDecrypt/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/CassandraDecrypt/config.xml similarity index 97% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/CassandraDecrypt/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/CassandraDecrypt/config.xml index 3746907b3a..450fdaea2b 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/CassandraDecrypt/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/CassandraDecrypt/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 10 + 1 diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/CassandraTrigger/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/CassandraTrigger/config.xml similarity index 97% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/CassandraTrigger/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/CassandraTrigger/config.xml index 2347b235cb..ae84bc53a0 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/CassandraTrigger/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/CassandraTrigger/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 10 + 1 @@ -44,11 +44,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true CassandraTrigger diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Content/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Content/config.xml similarity index 71% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Content/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Content/config.xml index 34533b223b..c0ac7d0449 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Content/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Content/config.xml @@ -1,22 +1,21 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 10 + 1 @@ -28,21 +27,28 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + @@ -52,8 +58,8 @@ - - + + 2 @@ -65,17 +71,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - build/content-service/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/DockOpensaber/config.xml similarity index 64% rename from deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/DataPipeline/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/DockOpensaber/config.xml index 17afc4067c..448cb0cc55 100644 --- a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/DataPipeline/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/DockOpensaber/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 1 - + false false @@ -28,36 +27,49 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${dock_sprint_branch} + false + + + creation_portal_branch + + ${dock_sprint_branch} false - + 0 0 false project false - + + - H/15 * * * * + 15 * * * * false - - + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/open-saber.git @@ -66,18 +78,10 @@ false - - - - true - false - - 0 - false - - + + - pipelines/build/data-pipeline/Jenkinsfile + Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Print/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Hawkeye-superset/config.xml similarity index 67% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Print/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Hawkeye-superset/config.xml index 2ec5081594..6c28e412b9 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Print/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Hawkeye-superset/config.xml @@ -1,15 +1,14 @@ - - + - + false -1 - -1 + 10 -1 - 10 + 1 @@ -21,21 +20,28 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + @@ -45,12 +51,12 @@ - - + + 2 - https://github.com/project-sunbird/print-service.git + https://github.com/Sunbird-Ed/incubator-superset.git @@ -58,17 +64,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/KnowledgeMW/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/KnowledgeMW/config.xml similarity index 66% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/KnowledgeMW/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/KnowledgeMW/config.xml index 71e5de7bbe..515534eafd 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/KnowledgeMW/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/KnowledgeMW/config.xml @@ -1,15 +1,14 @@ - - + - + false -1 - -1 + 10 -1 - 10 + 1 @@ -21,21 +20,28 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + @@ -45,12 +51,12 @@ - - + + 2 - https://github.com/project-sunbird/sunbird-content-service.git + https://github.com/project-sunbird/knowledge-mw-service.git @@ -58,17 +64,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Mlworkbench/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Mlworkbench/config.xml new file mode 100644 index 0000000000..e6a33905cf --- /dev/null +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Mlworkbench/config.xml @@ -0,0 +1,73 @@ + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + github_release_tag + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true + + + + + 0 + 0 + + false + project + false + + + + + + + H/15 * * * * + false + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-ml-workbench.git + + + + + ${github_release_tag} + + + + Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Player/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Player/config.xml similarity index 68% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Player/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Player/config.xml index 4558b6a434..1ed7051368 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Player/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Player/config.xml @@ -1,22 +1,21 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 10 + 1 @@ -28,54 +27,61 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${dock_sprint_branch} + true sunbird_content_editor_artifact_url <font color=dimgray size=2><b>Blob URL for content editor zip file</b></font> - + https://dockstorage.blob.core.windows.net/sunbird-content-dock/artefacts/editor/content-editor-iframe-3.3.0.zip false sunbird_collection_editor_artifact_url <font color=dimgray size=2><b>Blob URL for collection editor zip file</b></font> - + https://dockstorage.blob.core.windows.net/sunbird-content-dock/artefacts/editor/collection-editor-iframe-3.3.0.zip false sunbird_generic_editor_artifact_url <font color=dimgray size=2><b>Blob URL for generic editor zip file</b></font> - + https://dockstorage.blob.core.windows.net/sunbird-content-dock/artefacts/editor/generic-editor-iframe-3.3.0.zip false - + 0 0 false project false - + + - H/15 * * * * + 15 * * * * false - - + + 2 - https://github.com/Sunbird-Ed/SunbirdEd-portal.git + https://github.com/Sunbird-Ed/creation-portal.git @@ -85,19 +91,11 @@ false - - - true - false - - 0 - false - - + Jenkinsfile false false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Keycloak/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Program/config.xml similarity index 66% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Keycloak/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Program/config.xml index 75e3f824ef..15f331f600 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Keycloak/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Program/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 1 - + false false @@ -21,21 +20,28 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${dock_sprint_branch} + true - + 0 0 false project false - + + @@ -45,12 +51,12 @@ - - + + 2 - https://github.com/project-sunbird/sunbird-auth.git + https://github.com/Sunbird-Ed/program-service.git @@ -59,18 +65,10 @@ false - - - - true - false - - 1 - false - - + + - keycloak/scripts/pipelines/sunbird-auth-build/Jenkinsfile + Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Proxy/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Proxy/config.xml similarity index 84% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Proxy/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Proxy/config.xml index 20e7a55b7b..40bb3ea0e8 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Proxy/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Proxy/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 - 10 + 1 - + false false @@ -22,26 +21,27 @@ github_release_tag <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - + false - + 0 0 false project false - + + - - + + 2 @@ -54,12 +54,12 @@ false - + true false - + 0 false diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Lms/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Report/config.xml similarity index 68% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Lms/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Report/config.xml index 417df3f39e..9dc7e032f9 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Lms/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Report/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 10 + 1 @@ -28,31 +27,38 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 - https://github.com/project-sunbird/sunbird-course-service + https://github.com/project-sunbird/sunbird-report-service.git @@ -60,17 +66,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Router/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Router/config.xml new file mode 100644 index 0000000000..acb3d3ba12 --- /dev/null +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Router/config.xml @@ -0,0 +1,92 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + github_release_tag + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true + + + diksha_bot_tag + <font color=red size=2><b> If the value is blank, master branch will be copied from diksha private repo. Specify github tag name to build from a tag <br> + keep empty to build from master <br> + </b></font> + + false + + + diksha_bot_repo + + + + https://github.com/DIKSHA-NCTE/Diksha-bot-vdn.git + + + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-bot.git + + + + + ${github_release_tag} + + + + router/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/Analytics/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Search/config.xml similarity index 69% rename from deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/Analytics/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Search/config.xml index ce25972cbb..a8dc78faae 100644 --- a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/Analytics/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Search/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,13 +7,13 @@ - + false -1 - -1 + 10 -1 1 @@ -28,36 +27,43 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - H/15 * * * * + 15 * * * * false - - + + 2 - https://github.com/project-sunbird/sunbird-analytics.git + https://github.com/project-sunbird/knowledge-platform.git @@ -65,19 +71,8 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - - Jenkinsfile + build/search-service/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/ApiModule/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Taxonomy/config.xml similarity index 68% rename from deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/ApiModule/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Taxonomy/config.xml index 79fbc9b238..b2ff7e79cd 100644 --- a/deploy/jenkins/jobs/Build/jobs/DataPipeline/jobs/ApiModule/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Taxonomy/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,13 +7,13 @@ - + false -1 - -1 + 10 -1 1 @@ -28,36 +27,43 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - H/15 * * * * + 15 * * * * false - - + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/knowledge-platform.git @@ -65,19 +71,8 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - - druid/druid-api/Jenkinsfile + build/taxonomy-service/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Telemetry/config.xml b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Telemetry/config.xml similarity index 97% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Telemetry/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Telemetry/config.xml index 8db1eb374f..8872ba895b 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Telemetry/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockCore/jobs/Telemetry/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 10 + 1 diff --git a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/config.xml similarity index 82% rename from deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/config.xml index c3548f16ca..fdca08bc98 100644 --- a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/config.xml @@ -1,17 +1,17 @@ - + - - - - - + + + + + diff --git a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/CassandraTrigger/config.xml similarity index 72% rename from deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/CassandraTrigger/config.xml index b7a1b0f5f5..3836dd40c5 100644 --- a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/CassandraTrigger/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,13 +7,13 @@ - + false -1 - -1 + 10 -1 1 @@ -28,27 +27,34 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 @@ -60,17 +66,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - pipelines/build/cassandra-trigger/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/FlinkJobs/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/FlinkJobs/config.xml new file mode 100644 index 0000000000..4ee7637368 --- /dev/null +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/FlinkJobs/config.xml @@ -0,0 +1,76 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + + false + false + + + + + github_release_tag + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/knowledge-platform-jobs.git + githubPassword + + + + + ${github_release_tag} + + + + kubernets/pipelines/build/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/InquiryFlinkJob/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/InquiryFlinkJob/config.xml new file mode 100644 index 0000000000..4cd2d8e4ae --- /dev/null +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/InquiryFlinkJob/config.xml @@ -0,0 +1,73 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 1 + + + + false + + + false + false + + + + + inquiry_release_tag + refs/heads/${inquiry_pipeline_branch_or_tag} + true + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/Sunbird-inQuiry/data-pipeline.git + + + + + ${inquiry_release_tag} + + + false + + + + kubernetes/pipelines/build/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Learning/config.xml similarity index 75% rename from deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/KnowledgePlatform/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Learning/config.xml index 01eeb5d515..2a93b73d4e 100644 --- a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/KnowledgePlatform/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Learning/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,13 +7,13 @@ - + false -1 - -1 + 10 -1 1 @@ -28,9 +27,15 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true profile_id @@ -44,21 +49,22 @@ - + 0 0 false project false - + + - - + + 2 @@ -70,17 +76,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - pipelines/build/learning/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Assessment/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Neo4j/config.xml similarity index 67% rename from deploy/jenkins/jobs/Build/jobs/Core/jobs/Assessment/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Neo4j/config.xml index 43bed5c858..d8777ac3f8 100644 --- a/deploy/jenkins/jobs/Build/jobs/Core/jobs/Assessment/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Neo4j/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 10 + 1 - + false false @@ -28,31 +27,38 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 - https://github.com/project-sunbird/knowledge-platform.git + https://github.com/project-sunbird/knowledge-platform-db-extensions.git @@ -61,18 +67,10 @@ false - - - - true - false - - 0 - false - - + + - build/assessment-service/Jenkinsfile + build/neo4j-extensions/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/SyncTool/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/SyncTool/config.xml similarity index 68% rename from deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/SyncTool/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/SyncTool/config.xml index 09e72999b8..82895a4883 100644 --- a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/SyncTool/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/SyncTool/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,13 +7,13 @@ - + false -1 - -1 + 10 -1 1 @@ -28,32 +27,34 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - - H/15 * * * * - false - - + - - + + 2 @@ -65,17 +66,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - pipelines/build/synctool/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/Yarn/config.xml b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Yarn/config.xml similarity index 74% rename from deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/Yarn/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Yarn/config.xml index b29e9d14e0..140df000ed 100644 --- a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/Yarn/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockKnowledgePlatform/jobs/Yarn/config.xml @@ -1,7 +1,7 @@ - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings @@ -14,13 +14,13 @@ -1 - -1 + 10 -1 1 - + false false @@ -28,13 +28,19 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 @@ -42,12 +48,13 @@ project false + 1 - KnowledgePlatform + Learning SUCCESS 0 @@ -58,8 +65,8 @@ - - + + 2 @@ -72,16 +79,7 @@ false - - - - true - false - - 0 - false - - + pipelines/build/yarn/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/DockPlugins/config.xml b/deploy/jenkins/jobs/Build/jobs/DockPlugins/config.xml new file mode 100644 index 0000000000..92618cba96 --- /dev/null +++ b/deploy/jenkins/jobs/Build/jobs/DockPlugins/config.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentEditor/config.xml b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentEditor/config.xml similarity index 67% rename from deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentEditor/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentEditor/config.xml index 64757a95ea..81102057ef 100644 --- a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentEditor/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentEditor/config.xml @@ -1,15 +1,14 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 @@ -21,27 +20,34 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 @@ -53,17 +59,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentPlayer/config.xml b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentPlayer/config.xml similarity index 67% rename from deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentPlayer/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentPlayer/config.xml index 2c05092c21..bb45180761 100644 --- a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentPlayer/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentPlayer/config.xml @@ -1,15 +1,14 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 @@ -21,27 +20,34 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 @@ -53,17 +59,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentPlugins/config.xml b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentPlugins/config.xml similarity index 67% rename from deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentPlugins/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentPlugins/config.xml index 2c87891f43..bb7111df4b 100644 --- a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/ContentPlugins/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/ContentPlugins/config.xml @@ -1,15 +1,14 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 @@ -21,27 +20,34 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 @@ -53,17 +59,6 @@ ${github_release_tag} - false - - - - true - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/GenericEditor/config.xml b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/GenericEditor/config.xml similarity index 67% rename from deploy/jenkins/jobs/Build/jobs/Plugins/jobs/GenericEditor/config.xml rename to deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/GenericEditor/config.xml index 8e12940dcf..98c2eef4e3 100644 --- a/deploy/jenkins/jobs/Build/jobs/Plugins/jobs/GenericEditor/config.xml +++ b/deploy/jenkins/jobs/Build/jobs/DockPlugins/jobs/GenericEditor/config.xml @@ -1,15 +1,14 @@ - - + - + false -1 - -1 + 10 -1 - -1 + 1 @@ -21,27 +20,34 @@ github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false + <font style="color:dimgray;font-size:14px;"><b> +<li>To build from a tag, use refs/tags/github_tag</li> +<li>To build from a branch, use refs/heads/github_branch</li> +<li>Usually this input does not require any changes, unless you want to build from a differnt branch / tag</li> +<li>The default value of ${public_repo_branch} will be the release / tag version set in global configuration</li> +<li>To build from a differnt branch, replace the ${public_repo_branch} with your branch</li> +</b></font> + refs/heads/${public_repo_branch} + true - + 0 0 false project false - + + - - + + 2 @@ -53,17 +59,6 @@ ${github_release_tag} - false - - - - false - false - - 0 - false - - Jenkinsfile false diff --git a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/Neo4j/config.xml b/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/Neo4j/config.xml deleted file mode 100644 index 4dfbddd06a..0000000000 --- a/deploy/jenkins/jobs/Build/jobs/KnowledgePlatform/jobs/Neo4j/config.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 1 - - - - - false - false - - - - - github_release_tag - <font color=red size=2><b>CAUTION: If the value is blank, latest code will be built. Specify github tag name to build from a tag.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - H/15 * * * * - false - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${github_release_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/build/neo4j/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/config.xml new file mode 100644 index 0000000000..92618cba96 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/config.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/config.xml new file mode 100644 index 0000000000..56424f5bf3 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/config.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Bootstrap/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Bootstrap/config.xml similarity index 96% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Bootstrap/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Bootstrap/config.xml index 54d79c38fe..31415c5eee 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Bootstrap/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Bootstrap/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -36,11 +36,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Bootstrap @@ -62,11 +62,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Bootstrap diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KafkaSetup/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/KafkaSetup/config.xml similarity index 59% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KafkaSetup/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/KafkaSetup/config.xml index f531557703..66b9781845 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KafkaSetup/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/KafkaSetup/config.xml @@ -1,96 +1,98 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - + choice-parameter-188157054642539 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true KafkaSetup + Deploy/DockDev/Core/KafkaSetup - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-188157057910170 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true KafkaSetup + Deploy/DockDev/Core/KafkaSetup - + ET_UNORDERED_LIST true - + 0 0 false project false - + + - - + + 2 @@ -99,16 +101,16 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + release-4.5.0 false - + true false - + 1 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Logging/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Logging/config.xml similarity index 96% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Logging/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Logging/config.xml index 70c06dbdc4..2e4d70c282 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Logging/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Logging/config.xml @@ -6,10 +6,10 @@ - 10 - -1 + -1 + 10 -1 - 5 + 2 @@ -31,11 +31,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Logging @@ -58,11 +58,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Logging diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Logstash/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Logstash/config.xml similarity index 96% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Logstash/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Logstash/config.xml index 40ece3d118..04a1159545 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Logstash/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Logstash/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -31,11 +31,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Logstash @@ -57,11 +57,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Logstash diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Monitoring/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Monitoring/config.xml similarity index 94% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Monitoring/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Monitoring/config.xml index 5d8bcbb802..8cdcd7554d 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Monitoring/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Monitoring/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -31,15 +31,15 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Monitoring - Deploy/dev/Core/Monitoring + Deploy/DockDev/Core/Monitoring ET_FORMATTED_HTML @@ -58,15 +58,15 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Monitoring - Deploy/dev/Core/Monitoring + Deploy/DockDev/Core/Monitoring ET_FORMATTED_HTML diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Oauth/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Oauth/config.xml similarity index 95% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Oauth/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Oauth/config.xml index a90507de47..376aed7b35 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Oauth/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Oauth/config.xml @@ -6,10 +6,10 @@ - 10 - -1 + -1 + 10 -1 - 5 + 2 @@ -31,11 +31,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Oauth @@ -57,11 +57,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Oauth diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Proxy/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Proxy/config.xml similarity index 96% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Proxy/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Proxy/config.xml index b41cfe595c..45c3aec555 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Proxy/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Core/jobs/Proxy/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -43,11 +43,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Proxy @@ -69,11 +69,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Proxy diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/config.xml new file mode 100644 index 0000000000..86bb2b1c57 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/config.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraDbUpdate/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraDbUpdate/config.xml similarity index 60% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraDbUpdate/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraDbUpdate/config.xml index 651ff3f5d5..928cd36d9b 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraDbUpdate/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraDbUpdate/config.xml @@ -1,99 +1,101 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - + choice-parameter-188160224505093 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CassandraDbUpdate + Deploy/DockDev/KnowledgePlatform/CassandraDbUpdate - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-188160228215280 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CassandraDbUpdate + Deploy/DockDev/KnowledgePlatform/CassandraDbUpdate - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -102,16 +104,16 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + release-4.7.0 false - + true false - + 1 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Learning/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml similarity index 85% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Learning/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml index a5af84b20f..fc85b8ec94 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Learning/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -29,7 +29,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/KnowledgePlatform/KnowledgePlatform + ArtifactUpload/dev/KnowledgePlatform/CassandraTrigger false @@ -44,15 +44,15 @@ ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrif 'JenkinsJob', 'ArtifactRepo' ] - false + true - false + true - Learning - Deploy/dev/KnowledgePlatform/Learning + CassandraTrigger + Deploy/DockDev/KnowledgePlatform/CassandraTrigger PT_SINGLE_SELECT @@ -73,15 +73,15 @@ else { return "<b>Not Applicable</b>" } - false + true - false + true - Learning - Deploy/dev/KnowledgePlatform/Learning + CassandraTrigger + Deploy/DockDev/KnowledgePlatform/CassandraTrigger artifact_source ET_FORMATTED_HTML @@ -100,15 +100,15 @@ return """<input name="value" value="" cla else { return "<b>Not Applicable</b>" } - false + true - false + true - Learning - Deploy/dev/KnowledgePlatform/Learning + CassandraTrigger + Deploy/DockDev/KnowledgePlatform/CassandraTrigger artifact_source ET_FORMATTED_HTML @@ -126,15 +126,15 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true - Learning - Deploy/dev/KnowledgePlatform/Learning + CassandraTrigger + Deploy/DockDev/KnowledgePlatform/CassandraTrigger ET_FORMATTED_HTML @@ -153,15 +153,15 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true - Learning - Deploy/dev/KnowledgePlatform/Learning + CassandraTrigger + Deploy/DockDev/KnowledgePlatform/CassandraTrigger ET_FORMATTED_HTML @@ -179,18 +179,7 @@ return """<b>This parameter is not used</b>"&quo - - - - ArtifactUpload/dev/KnowledgePlatform/KnowledgePlatform - - SUCCESS - 0 - BLUE - true - - - + @@ -218,7 +207,7 @@ return """<b>This parameter is not used</b>"&quo - pipelines/deploy/learning/Jenkinsfile + pipelines/deploy/cassandra/Jenkinsfile.triggers false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ContentTool/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/ContentTool/config.xml similarity index 89% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ContentTool/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/ContentTool/config.xml index 71cb4c9b3b..a014994d7d 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ContentTool/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/ContentTool/config.xml @@ -1,5 +1,5 @@ - + @@ -14,13 +14,13 @@ -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -44,52 +44,54 @@ false - + private_branch choice-parameter-2544395024638227 1 - false + true - + - false + true ContentTool + Deploy/DockDev/KnowledgePlatform/ContentTool ET_FORMATTED_HTML true - + branch_or_tag choice-parameter-2620434998790477 1 - false + true - + - false + true ContentTool + Deploy/DockDev/KnowledgePlatform/ContentTool ET_FORMATTED_HTML @@ -110,8 +112,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/FileSyncTool/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/FileSyncTool/config.xml similarity index 96% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/FileSyncTool/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/FileSyncTool/config.xml index 1a51b321ad..2979cb1611 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/FileSyncTool/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/FileSyncTool/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -50,11 +50,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true FileSyncTool @@ -76,11 +76,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true FileSyncTool diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/PlayerCDN/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs/config.xml similarity index 52% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/PlayerCDN/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs/config.xml index c7d437a52b..795ebeb481 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/PlayerCDN/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/FlinkJobs/config.xml @@ -1,134 +1,150 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Player - false - - - image_tag - <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - - false - - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - PlayerCDN - Deploy/dev/Core/PlayerCDN + FlinkJobs + Deploy/DockDev/KnowledgePlatform/FlinkJobs - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - PlayerCDN - Deploy/dev/Core/PlayerCDN + FlinkJobs + Deploy/DockDev/KnowledgePlatform/FlinkJobs - + ET_FORMATTED_HTML true - cdn_enable - <font color=dimgray size=2><b>Select true to enable CDN build, false to disable CDN build</b></font> - false + image_tag + <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> + false + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/DockDev/KnowledgePlatform/FlinkJobs + false + + + job_names_to_deploy + <font color=green size=2><b>Choose the job names to deploy. Multi-selection is available.</b></font> + choice-parameter-1273072434092073 + 1 + + true + + + + FlinkJobs + Deploy/DockDev/KnowledgePlatform/FlinkJobs + + + PT_MULTI_SELECT + false + 1 + - + 0 0 false project false - + + - - - - ArtifactUpload/dev/Core/Player - - SUCCESS - 0 - BLUE - true - - - + - - + + 2 - https://github.com/project-sunbird/sunbird-devops.git + https://github.com/project-sunbird/sunbird-learning-platform.git @@ -137,18 +153,18 @@ return """<b>This parameter is not used</b>"&quo false - + true false - + 0 false - pipelines/deploy/player-cdn/Jenkinsfile + kubernetes/pipelines/deploy/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/KafkaSetup/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/KafkaSetup/config.xml similarity index 61% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/KafkaSetup/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/KafkaSetup/config.xml index 979e769aa0..1bd374a2a3 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/KafkaSetup/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/KafkaSetup/config.xml @@ -1,22 +1,21 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 @@ -26,74 +25,77 @@ - + private_branch - + choice-parameter-188161640748171 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true KafkaSetup + Deploy/DockDev/KnowledgePlatform/KafkaSetup - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-188161652021198 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true KafkaSetup + Deploy/DockDev/KnowledgePlatform/KafkaSetup - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -111,7 +113,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/AssetSizeMigration/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml similarity index 56% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/AssetSizeMigration/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml index 5dbac72126..f8b3717e88 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/AssetSizeMigration/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -29,156 +28,162 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/KnowledgePlatform/KnowledgePlatform + ArtifactUpload/DockDev/KnowledgePlatform/Learning false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-12566219493457 1 - false + true - - - false + + - AssetSizeMigration + Learning + Deploy/DockDev/KnowledgePlatform/Learning - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-12566221440336 1 - false + true - - - false + + - AssetSizeMigration + Learning + Deploy/DockDev/KnowledgePlatform/Learning artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-12566223395914 1 - false + true - - - false + + - AssetSizeMigration + Learning + Deploy/DockDev/KnowledgePlatform/Learning artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - AssetSizeMigration + Learning + Deploy/DockDev/KnowledgePlatform/Learning - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - AssetSizeMigration + Learning + Deploy/DockDev/KnowledgePlatform/Learning - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -191,18 +196,18 @@ return """<b>This parameter is not used</b>"&quo false - + true false - + 0 false - pipelines/deploy/asset-size-migration/Jenkinsfile + pipelines/deploy/learning/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Monitoring/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Monitoring/config.xml similarity index 96% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Monitoring/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Monitoring/config.xml index a12d3f0783..81b942d388 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Monitoring/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Monitoring/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -31,11 +31,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Monitoring @@ -57,11 +57,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Monitoring diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml similarity index 59% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml index d631a65b70..364d54641a 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -29,156 +28,162 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/KnowledgePlatform/Neo4j + ArtifactUpload/DockDev/KnowledgePlatform/Neo4j false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-13436883643465 1 - false + true - - - false + + Neo4j + Deploy/DockDev/KnowledgePlatform/Neo4j - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-13436885688258 1 - false + true - - - false + + Neo4j + Deploy/DockDev/KnowledgePlatform/Neo4j artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-13436888536349 1 - false + true - - - false + + Neo4j + Deploy/DockDev/KnowledgePlatform/Neo4j artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Neo4j + Deploy/DockDev/KnowledgePlatform/Neo4j - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Neo4j + Deploy/DockDev/KnowledgePlatform/Neo4j - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -191,12 +196,12 @@ return """<b>This parameter is not used</b>"&quo false - + true false - + 0 false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/CompositeSearch/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate/config.xml similarity index 56% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/CompositeSearch/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate/config.xml index a80bfacf88..c2c719c485 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/CompositeSearch/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate/config.xml @@ -1,22 +1,21 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 @@ -26,74 +25,83 @@ - + private_branch - - choice-parameter-196502397927441 + + choice-parameter-188174424977419 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - CompositeSearch + Neo4jDefinitionUpdate + Deploy/DockDev/KnowledgePlatform/Neo4jDefinitionUpdate - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-196502408664232 + + choice-parameter-188174429374717 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - CompositeSearch + Neo4jDefinitionUpdate + Deploy/DockDev/KnowledgePlatform/Neo4jDefinitionUpdate - + ET_FORMATTED_HTML true + + schemas_branch + Branch name to checkout for schemas + + false + - + 0 0 false project false - + + - - + + 2 @@ -111,13 +119,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/provision/composite-search/Jenkinsfile + pipelines/deploy/neo4j-definition-update/Jenkinsfile.dock false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jElasticSearchSyncTool/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4jElasticSearchSyncTool/config.xml similarity index 65% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jElasticSearchSyncTool/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4jElasticSearchSyncTool/config.xml index be8578de2e..d027763545 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jElasticSearchSyncTool/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4jElasticSearchSyncTool/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -29,83 +28,86 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/KnowledgePlatform/SyncTool + ArtifactUpload/DockDev/KnowledgePlatform/SyncTool false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-14175006770414 1 - false + true - - - false + + Neo4jElasticSearchSyncTool + Deploy/DockDev/KnowledgePlatform/Neo4jElasticSearchSyncTool - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-14175008677110 1 - false + true - - - false + + Neo4jElasticSearchSyncTool + Deploy/DockDev/KnowledgePlatform/Neo4jElasticSearchSyncTool artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-14175010584707 1 - false + true - - - false + + Neo4jElasticSearchSyncTool + Deploy/DockDev/KnowledgePlatform/Neo4jElasticSearchSyncTool artifact_source ET_FORMATTED_HTML @@ -142,74 +144,77 @@ return "<b>Not Applicable</b>" --ids false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Neo4jElasticSearchSyncTool + Deploy/DockDev/KnowledgePlatform/Neo4jElasticSearchSyncTool - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Neo4jElasticSearchSyncTool + Deploy/DockDev/KnowledgePlatform/Neo4jElasticSearchSyncTool - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -227,7 +232,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/StartNeo4jCluster/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/StartNeo4jCluster/config.xml similarity index 96% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/StartNeo4jCluster/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/StartNeo4jCluster/config.xml index 5e3b9a0338..3750e53efd 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/StartNeo4jCluster/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/StartNeo4jCluster/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -38,11 +38,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true StartNeo4jCluster @@ -64,11 +64,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true StartNeo4jCluster diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/StopNeo4jCluster/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/StopNeo4jCluster/config.xml similarity index 87% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/StopNeo4jCluster/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/StopNeo4jCluster/config.xml index 7bb9a7a064..5337cb8f96 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/StopNeo4jCluster/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/StopNeo4jCluster/config.xml @@ -1,5 +1,5 @@ - + @@ -14,64 +14,66 @@ -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch choice-parameter-188179225214575 1 - false + true - + - false + true StopNeo4jCluster + Deploy/DockDev/KnowledgePlatform/StopNeo4jCluster ET_FORMATTED_HTML true - + branch_or_tag choice-parameter-188179228400193 1 - false + true - + - false + true StopNeo4jCluster + Deploy/DockDev/KnowledgePlatform/StopNeo4jCluster ET_FORMATTED_HTML @@ -92,8 +94,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Yarn/config.xml similarity index 55% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Yarn/config.xml index af5b7e4c3c..12623aa3b0 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/KnowledgePlatform/jobs/Yarn/config.xml @@ -1,22 +1,21 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 @@ -29,172 +28,162 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/KnowledgePlatform/Yarn + ArtifactUpload/DockDev/KnowledgePlatform/Yarn false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-2874232768088857 1 - false + true - - - false + + Yarn - Deploy/dev/KnowledgePlatform/Yarn + Deploy/DockDev/KnowledgePlatform/Yarn - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-2874449088885218 1 - false + true - - - false + + Yarn - Deploy/dev/KnowledgePlatform/Yarn + Deploy/DockDev/KnowledgePlatform/Yarn artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-2877900313772031 1 - false + true - - - false + + Yarn - Deploy/dev/KnowledgePlatform/Yarn + Deploy/DockDev/KnowledgePlatform/Yarn artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Yarn - Deploy/dev/KnowledgePlatform/Yarn + Deploy/DockDev/KnowledgePlatform/Yarn - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Yarn - Deploy/dev/KnowledgePlatform/Yarn + Deploy/DockDev/KnowledgePlatform/Yarn - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - - - ArtifactUpload/dev/KnowledgePlatform/Yarn - - SUCCESS - 0 - BLUE - true - - - + - - + + 2 @@ -212,7 +201,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/config.xml new file mode 100644 index 0000000000..86bb2b1c57 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/config.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/KongMigration/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/APIManager/config.xml similarity index 62% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/KongMigration/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/APIManager/config.xml index 6d1c763aeb..dcf4a06b41 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/KongMigration/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/APIManager/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,19 +7,19 @@ - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -35,77 +34,89 @@ image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - KongMigration + APIManager + Deploy/DockDev/Kubernetes/APIManager - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - KongMigration + APIManager + Deploy/DockDev/Kubernetes/APIManager - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - + + - - + + 2 @@ -114,7 +125,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -123,13 +134,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/ops/kong-migration/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Print/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/APIManagerEcho/config.xml similarity index 86% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Print/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/APIManagerEcho/config.xml index d6239bef9a..10b2ce99ec 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Print/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/APIManagerEcho/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -29,7 +29,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Print + ArtifactUpload/dev/Core/APIManagerEcho false @@ -50,15 +50,15 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true - Print - Deploy/dev/Core/Print + APIManagerEcho + Deploy/dev/Kubernetes/APIManagerEcho ET_FORMATTED_HTML @@ -77,20 +77,29 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true - Print - Deploy/dev/Core/Print + APIManagerEcho + Deploy/dev/Kubernetes/APIManagerEcho ET_FORMATTED_HTML true + + role_name + + + + helm-deploy + + + @@ -106,7 +115,7 @@ return """<b>This parameter is not used</b>"&quo - ArtifactUpload/dev/Core/Print + SUCCESS 0 @@ -127,7 +136,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -142,7 +151,7 @@ return """<b>This parameter is not used</b>"&quo - pipelines/deploy/print-service/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/LogEsUpgrade6xx/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/ApplicationElasticSearch/config.xml similarity index 78% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/LogEsUpgrade6xx/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/ApplicationElasticSearch/config.xml index 02a00d5d44..2229a6d7ba 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/LogEsUpgrade6xx/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/ApplicationElasticSearch/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -19,54 +19,54 @@ - + private_branch choice-parameter-186487879604743 1 - false + true - + - false + true - LogEsUpgrade6xx - Provision/loadtest/Core/LogEsUpgrade6xx + ApplicationElasticSearch + Deploy/dev/Kubernetes/ApplicationElasticSearch ET_FORMATTED_HTML true - + branch_or_tag choice-parameter-186487885338467 1 - false + true - + - false + true - LogEsUpgrade6xx - Provision/loadtest/Core/LogEsUpgrade6xx + ApplicationElasticSearch + Deploy/dev/Kubernetes/ApplicationElasticSearch ET_FORMATTED_HTML @@ -84,17 +84,17 @@ return """<b>This parameter is not used</b>"&quo - + 2 - https://github.com/kaali09/sunbird-devops.git + https://github.com/project-sunbird/sunbird-devops.git - ${branch_or_tag} + ${dock_public_branch} false @@ -109,9 +109,9 @@ return """<b>This parameter is not used</b>"&quo - pipelines/provision/log-es-upgrade/Jenkinsfile.latest + pipelines/deploy/application-elasticsearch/Jenkinsfile false false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Assessment/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Assessment/config.xml new file mode 100644 index 0000000000..9629447f35 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Assessment/config.xml @@ -0,0 +1,148 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 2 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/DockDev/Core/Assessment + false + + + image_tag + <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> + + false + + + private_branch + + choice-parameter-2544395024638227 + 1 + + true + + + + true + + + Assessment + Deploy/DockDev/Kubernetes/Assessment + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-2620434998790477 + 1 + + true + + + + true + + + Assessment + Deploy/DockDev/Kubernetes/Assessment + + + ET_FORMATTED_HTML + true + + + role_name + + + + sunbird-deploy + + + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + release-5.0.0-vdn + + + false + + + + true + false + + 0 + false + + + + kubernetes/pipelines/deploy_core/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/RedisDumpMonitoring/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/BootstrapCluster/config.xml similarity index 84% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/RedisDumpMonitoring/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/BootstrapCluster/config.xml index d7cb16b5a9..1ca09804f5 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/RedisDumpMonitoring/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/BootstrapCluster/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -29,7 +29,7 @@ private_branch - choice-parameter-2914866095851737 + choice-parameter-2544395024638227 1 - false + true - false + true - RedisDumpMonitoring - OpsAdministration/dev/DataPipeline/RedisDumpMonitoring + BootstrapCluster + Deploy/dev/Kubernetes/BootstrapCluster ET_FORMATTED_HTML @@ -55,25 +55,25 @@ return """<b>This parameter is not used</b>"&quo branch_or_tag - choice-parameter-2914866097410763 + choice-parameter-2620434998790477 1 - false + true - false + true - RedisDumpMonitoring - OpsAdministration/dev/DataPipeline/RedisDumpMonitoring + BootstrapCluster + Deploy/dev/Kubernetes/BootstrapCluster ET_FORMATTED_HTML @@ -99,12 +99,12 @@ return """<b>This parameter is not used</b>"&quo 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/sunbird-devops.git - ${branch_or_tag} + ${dock_public_branch} false @@ -119,9 +119,9 @@ return """<b>This parameter is not used</b>"&quo - pipelines/ops/redis/Jenkinsfile + kubernetes/pipelines/bootstrap_core/Jenkinsfile false - false + true \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/OnboardAPIs/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/BootstrapMinimal/config.xml similarity index 85% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/OnboardAPIs/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/BootstrapMinimal/config.xml index 7e9662ce0e..86fa21304b 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/OnboardAPIs/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/BootstrapMinimal/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -29,7 +29,7 @@ private_branch - choice-parameter-117346587048120 + choice-parameter-2544395024638227 1 - false + true - false + true - OnboardAPIs - Deploy/dev/Core/OnboardAPIs + BootstrapMinimal + Deploy/DockDev/Kubernetes/BootstrapMinimal ET_FORMATTED_HTML @@ -55,7 +55,7 @@ return """<b>This parameter is not used</b>"&quo branch_or_tag - choice-parameter-117346594984751 + choice-parameter-2620434998790477 1 - false + true - false + true - OnboardAPIs - Deploy/dev/Core/OnboardAPIs + BootstrapMinimal + Deploy/DockDev/Kubernetes/BootstrapMinimal ET_FORMATTED_HTML @@ -90,18 +90,21 @@ return """<b>This parameter is not used</b>"&quo false + + + 2 - https://github.com/project-sunbird/sunbird-devops + https://github.com/project-sunbird/sunbird-devops.git - ${branch_or_tag} + ${dock_public_branch} false @@ -111,12 +114,12 @@ return """<b>This parameter is not used</b>"&quo true false - 1 + 0 false - pipelines/deploy/am-onboard-apis/Jenkinsfile + kubernetes/pipelines/bootstrap_minimal/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/UserOrg/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Bot/config.xml similarity index 61% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/UserOrg/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Bot/config.xml index 557e5f4597..226efa4faa 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/UserOrg/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Bot/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,19 +7,19 @@ - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -29,82 +28,94 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/UserOrg + ArtifactUpload/DockDev/Core/Bot false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - UserOrg + Bot + Deploy/DockDev/Kubernetes/Bot - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - UserOrg + Bot + Deploy/DockDev/Kubernetes/Bot - + ET_FORMATTED_HTML true + + role_name + + + + chatbot + + + - + 0 0 false project false - + + - - ArtifactUpload/dev/Core/UserOrg + + ArtifactUpload/DockDev/Core/Bot SUCCESS 0 @@ -115,17 +126,17 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 - https://github.com/project-sunbird/sunbird-devops.git + https://github.com/project-sunbird/sunbird-bot.git - ${branch_or_tag} + ${dock_public_branch} false @@ -134,13 +145,13 @@ return """<b>This parameter is not used</b>"&quo true false - - 1 + + 0 false - pipelines/deploy/userorg/Jenkinsfile + pipelines/chatbot.Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CassandraDecrypt/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Cassandra/config.xml similarity index 56% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CassandraDecrypt/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Cassandra/config.xml index f784ffd5a7..e1aaf55faf 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CassandraDecrypt/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Cassandra/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -22,155 +21,161 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/CassandraDecrypt + ArtifactUpload/DockDev/Core/Cassandra false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-9600649228560 1 - false + true - - - false + + - CassandraDecrypt + Cassandra + Deploy/DockDev/Kubernetes/Cassandra - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-9600651313765 1 - false + true - - - false + + - CassandraDecrypt + Cassandra + Deploy/DockDev/Kubernetes/Cassandra artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-9600653373369 1 - false + true - - - false + + - CassandraDecrypt + Cassandra + Deploy/DockDev/Kubernetes/Cassandra artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - CassandraDecrypt + Cassandra + Deploy/DockDev/Kubernetes/Cassandra - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - CassandraDecrypt + Cassandra + Deploy/DockDev/Kubernetes/Cassandra - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - ArtifactUpload/dev/Core/CassandraDecrypt + + SUCCESS 0 @@ -181,8 +186,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -191,7 +196,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -200,13 +205,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/deploy/cassandra-deploy/Jenkinsfile.decrypt + pipelines/deploy/cassandra-deploy/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Content/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Content/config.xml similarity index 57% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Content/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Content/config.xml index c7253c9519..656607c774 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Content/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Content/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -29,96 +28,95 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Content + ArtifactUpload/DockDev/Core/Content false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Content - Deploy/dev/Core/Content + Deploy/DockDev/Kubernetes/Content - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Content - Deploy/dev/Core/Content + Deploy/DockDev/Kubernetes/Content - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - + + - - - - ArtifactUpload/dev/Core/Content - - SUCCESS - 0 - BLUE - true - - - + - - + + 2 @@ -127,22 +125,22 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false - + true false - - 1 + + 0 false - pipelines/deploy/content/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Hawkeye-superset/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Hawkeye-superset/config.xml new file mode 100644 index 0000000000..c3cc75f6d1 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Hawkeye-superset/config.xml @@ -0,0 +1,159 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 2 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/dev/Core/HawkeyeSuperset + false + + + image_tag + <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> + + false + + + private_branch + + choice-parameter-2544395024638227 + 1 + + true + + + + true + + + Hawkeye-superset + Deploy/DockDev/Kubernetes/Hawkeye-superset + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-2620434998790477 + 1 + + true + + + + true + + + Hawkeye-superset + Deploy/DockDev/Kubernetes/Hawkeye-superset + + + ET_FORMATTED_HTML + true + + + role_name + + + + helm-deploy + + + + + + + 0 + 0 + + false + project + false + + + + + + + + /ArtifactUpload/dev/Core/HawkeyeSuperset + + SUCCESS + 0 + BLUE + true + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${dock_public_branch} + + + false + + + + true + false + + 0 + false + + + + kubernetes/pipelines/deploy_core/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Badger/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/KnowledgeMW/config.xml similarity index 61% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Badger/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/KnowledgeMW/config.xml index 139322e5f8..49557919ab 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Badger/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/KnowledgeMW/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -29,85 +28,95 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Badger + ArtifactUpload/DockDev/Core/KnowledgeMW false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Badger - Deploy/dev/Core/Badger + KnowledgeMW + Deploy/DockDev/Kubernetes/KnowledgeMW - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Badger - Deploy/dev/Core/Badger + KnowledgeMW + Deploy/DockDev/Kubernetes/KnowledgeMW - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - + + - - + + 2 @@ -116,7 +125,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -125,13 +134,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/deploy/badger/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsFetchLogs/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Logging/config.xml similarity index 53% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsFetchLogs/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Logging/config.xml index a8ca2905d1..2d06f95604 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsFetchLogs/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Logging/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -26,104 +25,108 @@ - - instance_name - <font color=dimgray size=2><b>Choose the instance to fetch logs.</b></font> - - - spark - analytics-api - secor - cassandra - - - - - action - <font color=dimgray size=2><b>Choose one of the option - Fetch logs or set cronjob.</b></font> - - - fetch-logs - cronjobs - - - - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - AnalyticsFetchLogs - Deploy/dev/DataPipeline/AnalyticsFetchLogs + Logging + Deploy/DockDev/Kubernetes/Logging - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - AnalyticsFetchLogs - Deploy/dev/DataPipeline/AnalyticsFetchLogs + Logging + Deploy/DockDev/Kubernetes/Logging - + ET_FORMATTED_HTML true + + chartname + + + + elasticsearch + fluent-bit + kibana + oauth2-proxy + fluentd-elasticsearch + + + + + role_name + + + + logging + + + - + 0 0 false project false - + + + + + - - + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/sunbird-devops.git - ${branch_or_tag} + ${dock_public_branch} false @@ -132,13 +135,13 @@ return """<b>This parameter is not used</b>"&quo true false - - 1 + + 0 false - pipelines/deploy/fetch-logs/Jenkinsfile + kubernetes/pipelines/logging/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/LoggingFileBeatsVM/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/LoggingFileBeatsVM/config.xml new file mode 100644 index 0000000000..98842e03af --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/LoggingFileBeatsVM/config.xml @@ -0,0 +1,175 @@ + + + + false + + + false + false + + + + + private_branch + + choice-parameter-6494533480752662 + 1 + + true + + + + true + + + LoggingFileBeatsVM + Deploy/DockDev/Kubernetes/LoggingFileBeatsVM + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-6494533482836034 + 1 + + true + + + + true + + + LoggingFileBeatsVM + Deploy/DockDev/Kubernetes/LoggingFileBeatsVM + + + ET_FORMATTED_HTML + true + + + hosts + <font color=dimgray size=2><b>Choose the host groups to deploy filbeat. You can add additonal host groups if you have more or different group names</b></font> + choice-parameter-6494533485540097 + 1 + + true + + + + LoggingFileBeatsVM + Deploy/DockDev/Kubernetes/LoggingFileBeatsVM + PT_MULTI_SELECT + false + 1 + + + tags + <font color=dimgray size=2><b>Select this only if you want to start or stop. Use default for deploying filebeat</b></font> + choice-parameter-6563905181834747 + 1 + + true + + + + LoggingFileBeatsVM + Deploy/DockDev/Kubernetes/LoggingFileBeatsVM + PT_SINGLE_SELECT + false + 1 + + + + + 0 + 0 + + false + project + false + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${branch_or_tag} + + + false + + + + true + false + + 1 + false + + + + pipelines/deploy/logger/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Lms/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Mlworkbench/config.xml similarity index 61% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Lms/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Mlworkbench/config.xml index 580fb9c892..870ad04a99 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Lms/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Mlworkbench/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -29,84 +28,94 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Lms + ArtifactUpload/DockDev/Core/Mlworkbench false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Lms - Deploy/dev/Core/Lms + Mlworkbench + Deploy/DockDev/Kubernetes/Mlworkbench - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Lms - Deploy/dev/Core/Lms + Mlworkbench + Deploy/DockDev/Kubernetes/Mlworkbench - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - + + - - ArtifactUpload/dev/Core/Lms + + /ArtifactUpload/DockDev/Core/Mlworkbench SUCCESS 0 @@ -117,8 +126,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -127,7 +136,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -136,13 +145,13 @@ return """<b>This parameter is not used</b>"&quo true false - - 1 + + 0 false - pipelines/deploy/lms/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSubmitJobs/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Monitoring/config.xml similarity index 84% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSubmitJobs/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Monitoring/config.xml index e3639ec0fe..2504ffd359 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSubmitJobs/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Monitoring/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -26,12 +26,6 @@ - - pause_min - <font color=teal size=2>Pause for # of minutes.</font> - 5 - false - private_branch @@ -44,15 +38,15 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true - AnalyticsSubmitJobs - Deploy/dev/DataPipeline/AnalyticsSubmitJobs + Monitoring + Deploy/DockDev/Kubernetes/Monitoring ET_FORMATTED_HTML @@ -66,25 +60,31 @@ return """<b>This parameter is not used</b>"&quo - false + true - false + true - AnalyticsSubmitJobs - Deploy/dev/DataPipeline/AnalyticsSubmitJobs + Monitoring + Deploy/DockDev/Kubernetes/Monitoring ET_FORMATTED_HTML true + + tag + + + false + @@ -96,18 +96,21 @@ return """<b>This parameter is not used</b>"&quo false + + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/sunbird-devops.git - ${branch_or_tag} + ${dock_public_branch} false @@ -122,7 +125,7 @@ return """<b>This parameter is not used</b>"&quo - pipelines/deploy/submit-jobs/Jenkinsfile + kubernetes/pipelines/monitoring/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KeycloakRealm/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/OnboardAPIs/config.xml similarity index 54% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KeycloakRealm/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/OnboardAPIs/config.xml index 78de0730d0..74d42b7e65 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KeycloakRealm/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/OnboardAPIs/config.xml @@ -1,99 +1,110 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - - choice-parameter-186662917593857 + + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - KeycloakRealm + OnboardAPIs + Deploy/DockDev/Kubernetes/OnboardAPIs - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-186662921061407 + + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - KeycloakRealm + OnboardAPIs + Deploy/DockDev/Kubernetes/OnboardAPIs - + ET_FORMATTED_HTML true + + role_name + + + + kong-api + + + - + 0 0 false project false - + + - - + + 2 @@ -102,22 +113,22 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false - + true false - - 1 + + 0 false - pipelines/deploy/keycloak-realm/Jenkinsfile + kubernetes/pipelines/onboard-api/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/user-keycloak/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/OnboardConsumers/config.xml similarity index 53% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/user-keycloak/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/OnboardConsumers/config.xml index 8e96c2c6ca..a5cb9b227a 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/user-keycloak/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/OnboardConsumers/config.xml @@ -1,89 +1,91 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - - choice-parameter-196487835595646 + + choice-parameter-186788940114941 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - user-keycloak + OnboardConsumers + Deploy/DockDev/Kubernetes/OnboardConsumers - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-196487838166797 + + choice-parameter-186788943531283 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - user-keycloak + OnboardConsumers + Deploy/DockDev/Kubernetes/OnboardConsumers - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -92,7 +94,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -101,13 +103,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 1 false - pipelines/provision/keycloak/Jenkinsfile.user + kubernetes/pipelines/onboard-consumer/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/APIManager/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Opensaber/config.xml similarity index 62% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/APIManager/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Opensaber/config.xml index 04ef70b573..f95f7fb11a 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/APIManager/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Opensaber/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -29,83 +28,94 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/APIManager + ArtifactUpload/DockDev/Core/DockOpensaber false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - APIManager + Opensaber + Deploy/DockDev/Kubernetes/Opensaber - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - APIManager + Opensaber + Deploy/DockDev/Kubernetes/Opensaber - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - - 1 + + - - ArtifactUpload/dev/Core/APIManager + + /ArtifactUpload/DockDev/Core/DockOpensaber SUCCESS 0 @@ -116,8 +126,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -126,7 +136,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -135,13 +145,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/deploy/api-manager/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Player/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Player/config.xml similarity index 62% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Player/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Player/config.xml index 04b4bc73bd..cc19792ba6 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Player/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Player/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -29,82 +28,94 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Deploy/dev/Core/PlayerCDN + ArtifactUpload/DockDev/Core/Player false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Player + Deploy/DockDev/Kubernetes/Player - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Player + Deploy/DockDev/Kubernetes/Player - + ET_FORMATTED_HTML true + + role_name + + + + deploy-player + + + - + 0 0 false project false - + + - - Deploy/dev/Core/PlayerCDN + + /ArtifactUpload/DockDev/Core/Player SUCCESS 0 @@ -115,8 +126,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -125,22 +136,22 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false - + true false - - 1 + + 0 false - pipelines/deploy/player/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile.player false diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/PostgresqlMigration/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/PostgresqlMigration/config.xml new file mode 100644 index 0000000000..42e8b300c6 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/PostgresqlMigration/config.xml @@ -0,0 +1,143 @@ + + + + false + + + + -1 + 10 + -1 + 2 + + + + + false + false + + + + + private_branch + + choice-parameter-189743214208409 + 1 + + true + + + + true + + + PostgresqlMigration + Deploy/DockDev/Core/PostgresqlMigration + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-189743216959018 + 1 + + true + + + + true + + + PostgresqlMigration + Deploy/DockDev/Core/PostgresqlMigration + + + ET_FORMATTED_HTML + true + + + databases + <font color=black size=2><b>Choose the modules to migrate</b></font> + choice-parameter-15021203001047654 + 1 + + true + + + + PostgresqlMigration + Deploy/DockDev/Core/PostgresqlMigration + + + PT_MULTI_SELECT + false + 1 + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${branch_or_tag} + + + false + + + + true + false + + 0 + false + + + + pipelines/ops/postgresql-migration/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/AdminUtils/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Program/config.xml similarity index 61% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/AdminUtils/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Program/config.xml index c9eb877678..cd5b4bf371 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/AdminUtils/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Program/config.xml @@ -1,26 +1,25 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -29,82 +28,94 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/AdminUtils + ArtifactUpload/DockDev/Core/Program false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - AdminUtils + Program + Deploy/DockDev/Kubernetes/Program - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - AdminUtils + Program + Deploy/DockDev/Kubernetes/Program - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - + + - - ArtifactUpload/dev/Core/AdminUtils + + /ArtifactUpload/DockDev/Core/Program SUCCESS 0 @@ -115,8 +126,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -125,24 +136,24 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + release-4.5.0-vdn false - + true false - + 0 false - pipelines/deploy/adminutils/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/EncService/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Router/config.xml similarity index 61% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/EncService/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Router/config.xml index 46fec0d7d2..eb5ac011f6 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/EncService/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Router/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,19 +7,19 @@ - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -29,82 +28,94 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/EncService + ArtifactUpload/DockDev/Core/Router false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - EncService + Router + Deploy/DockDev/Kubernetes/Router - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - EncService + Router + Deploy/DockDev/Kubernetes/Router - + ET_FORMATTED_HTML true + + role_name + + + + chatbot + + + - + 0 0 false project false - + + - - ArtifactUpload/dev/Core/EncService + + ArtifactUpload/DockDev/Core/Router SUCCESS 0 @@ -115,17 +126,17 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 - https://github.com/project-sunbird/sunbird-devops.git + https://github.com/project-sunbird/sunbird-bot.git - ${branch_or_tag} + ${dock_public_branch} false @@ -134,13 +145,13 @@ return """<b>This parameter is not used</b>"&quo true false - - 1 + + 0 false - pipelines/deploy/enc/Jenkinsfile + pipelines/chatbot.Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Search/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Search/config.xml new file mode 100644 index 0000000000..2432676b46 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Search/config.xml @@ -0,0 +1,148 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 2 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/DockDev/Core/Search + false + + + image_tag + <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> + + false + + + private_branch + + choice-parameter-2544395024638227 + 1 + + true + + + + true + + + Search + Deploy/DockDev/Kubernetes/Search + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-2620434998790477 + 1 + + true + + + + true + + + Search + Deploy/DockDev/Kubernetes/Search + + + ET_FORMATTED_HTML + true + + + role_name + + + + sunbird-deploy + + + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${dock_public_branch} + + + false + + + + true + false + + 0 + false + + + + kubernetes/pipelines/deploy_core/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Notification/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Taxonomy/config.xml similarity index 62% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Notification/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Taxonomy/config.xml index ccf3d0f4a6..23a88aec25 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Notification/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Taxonomy/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -29,82 +28,94 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Notification + ArtifactUpload/DockDev/Core/Taxonomy false image_tag <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - + false - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Notification + Taxonomy + Deploy/DockDev/Kubernetes/Taxonomy - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Notification + Taxonomy + Deploy/DockDev/Kubernetes/Taxonomy - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - + + - - ArtifactUpload/dev/Core/Notification + + ArtifactUpload/DockDev/Core/Taxonomy SUCCESS 0 @@ -115,8 +126,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -125,7 +136,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -134,13 +145,13 @@ return """<b>This parameter is not used</b>"&quo true false - - 1 + + 0 false - pipelines/deploy/notification/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KnowledgeMW/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Telemetry/config.xml similarity index 87% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KnowledgeMW/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Telemetry/config.xml index c355d4b944..71f8f23371 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/KnowledgeMW/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/Telemetry/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -29,7 +29,7 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/KnowledgeMW + ArtifactUpload/dev/Core/Telemetry false @@ -50,15 +50,15 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true - KnowledgeMW - Deploy/dev/Core/KnowledgeMW + Telemetry + Deploy/dev/Kubernetes/Telemetry ET_FORMATTED_HTML @@ -77,20 +77,29 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true - KnowledgeMW - Deploy/dev/Core/KnowledgeMW + Telemetry + Deploy/dev/Kubernetes/Telemetry ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + @@ -106,7 +115,7 @@ return """<b>This parameter is not used</b>"&quo - ArtifactUpload/dev/Core/KnowledgeMW + SUCCESS 0 @@ -127,7 +136,7 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + ${dock_public_branch} false @@ -142,7 +151,7 @@ return """<b>This parameter is not used</b>"&quo - pipelines/deploy/knowledge-mw-service/Jenkinsfile + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/UploadCollectionHierarchyCSV/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/UploadCollectionHierarchyCSV/config.xml new file mode 100644 index 0000000000..fc4105713f --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/UploadCollectionHierarchyCSV/config.xml @@ -0,0 +1,178 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 2 + + + + + false + false + + + + + private_branch + + choice-parameter-2544395024638227 + 1 + + true + + + + true + + + Upload_CollectionHierarchy_CSV + Deploy/DockDev/Kubernetes/Upload_CollectionHierarchy_CSV + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-2620434998790477 + 1 + + true + + + + true + + + Upload_CollectionHierarchy_CSV + Deploy/DockDev/Kubernetes/Upload_CollectionHierarchy_CSV + + + ET_FORMATTED_HTML + true + + + tag + + + + upload-batch + + + + + csv_repo_name + + + + Sunbird-Ed/creation-portal.git + + + + + csv_repo_branch + <font color=dimgray size=2><b>Enter the branch from where csv file is uploaded </b></font> + + false + + + container_name + + + + content-service + + + + + source_path + + + + creation-portal/bulk-upload-csv-template + + + + + destination_path + + + + content-service + + + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${branch_or_tag} + + + false + + + + true + false + + 0 + false + + + + pipelines/upload/portal-csv/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/SamzaTelemetrySchemas/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/UploadSchemas/config.xml similarity index 53% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/SamzaTelemetrySchemas/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/UploadSchemas/config.xml index fa3c7e2385..7147284765 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/SamzaTelemetrySchemas/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/UploadSchemas/config.xml @@ -1,128 +1,132 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - - + + false + + false false - - schema_repo_version - <font color=dimgray size=2><b>Specify the scehma repo version.</b></font> - ${branch_or_tag} - false - - + private_branch - choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - SamzaTelemetrySchemas + UploadSchemas + Deploy/DockDev/Kubernetes/UploadSchemas - + ET_FORMATTED_HTML true - + branch_or_tag - choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - SamzaTelemetrySchemas + UploadSchemas + Deploy/DockDev/Kubernetes/UploadSchemas - + ET_FORMATTED_HTML true + + schemas_branch + Branch name to checkout for schemas + false + - + 0 0 false project false - + + + + + - - + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/santhosh-tg/sunbird-devops.git - ${branch_or_tag} + release-5.1.0-vdn false - + true false - + 0 false - pipelines/deploy/samza-telemetry-schemas/Jenkinsfile + pipelines/upload/schemas/Jenkinsfile false false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-private-ingress/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-private-ingress/config.xml new file mode 100644 index 0000000000..8713fabecc --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-private-ingress/config.xml @@ -0,0 +1,149 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 2 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/dev/Core/Proxy + false + + + image_tag + <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> + + false + + + private_branch + + choice-parameter-2544395024638227 + 1 + + true + + + + true + + + nginx-private-ingress + Deploy/DockDev/Kubernetes/nginx-private-ingress + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-2620434998790477 + 1 + + true + + + + true + + + nginx-private-ingress + Deploy/DockDev/Kubernetes/nginx-private-ingress + + + ET_FORMATTED_HTML + true + + + role_name + + + + helm-deploy + sunbird-deploy + + + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${dock_public_branch} + + + false + + + + true + false + + 0 + false + + + + kubernetes/pipelines/deploy_core/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-public-ingress/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-public-ingress/config.xml new file mode 100644 index 0000000000..c97f8a6e02 --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/nginx-public-ingress/config.xml @@ -0,0 +1,149 @@ + + + + + hudson.model.ParametersDefinitionProperty + com.sonyericsson.rebuild.RebuildSettings + + + + + false + + + + -1 + 10 + -1 + 2 + + + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/dev/Core/Proxy + false + + + image_tag + <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> + + false + + + private_branch + + choice-parameter-2544395024638227 + 1 + + true + + + + true + + + nginx-public-ingress + Deploy/DockDev/Kubernetes/nginx-public-ingress + + + ET_FORMATTED_HTML + true + + + branch_or_tag + + choice-parameter-2620434998790477 + 1 + + true + + + + true + + + nginx-public-ingress + Deploy/DockDev/Kubernetes/nginx-public-ingress + + + ET_FORMATTED_HTML + true + + + role_name + + + + helm-deploy + sunbird-deploy + + + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/project-sunbird/sunbird-devops.git + + + + + ${dock_public_branch} + + + false + + + + true + false + + 0 + false + + + + kubernetes/pipelines/deploy_core/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputProvision/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/redis/config.xml similarity index 56% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputProvision/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/redis/config.xml index 5239bf8bef..0d6e017da7 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputProvision/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/redis/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -26,83 +25,95 @@ - + private_branch - - choice-parameter-2914866095851737 + + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - SamzaThroughputProvision + Redis + Deploy/DockDev/Kubernetes/Redis - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-2914866097410763 + + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - SamzaThroughputProvision + Redis + Deploy/DockDev/Kubernetes/Redis - + ET_FORMATTED_HTML true + + role_name + + + + chatbot + + + - + 0 0 false project false - + + - - + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/sunbird-bot.git - ${branch_or_tag} + ${dock_public_branch} false @@ -111,13 +122,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/ops/samza/Jenkinsfile.throughputprovision + pipelines/redis.Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DruidIngestion/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/telemetry-logstash-dock/config.xml similarity index 55% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DruidIngestion/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/telemetry-logstash-dock/config.xml index 30f4f7c78f..b4253b7b37 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DruidIngestion/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Kubernetes/jobs/telemetry-logstash-dock/config.xml @@ -1,5 +1,4 @@ - - + @@ -8,15 +7,15 @@ - + false -1 - -1 + 10 -1 - 5 + 2 @@ -26,96 +25,101 @@ - - action - <font color=red size=2><b> -To start task: [start-task] -To stop task: [stop-task] -</b></font> - - - start-task - stop-task - - - - + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/dev/Core/Print + false + + private_branch - - choice-parameter-193684482193674 + + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - DruidIngestion + telemetry-logstash-dock + Deploy/DockDev/Kubernetes/telemetry-logstash-dock - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-193684493817846 + + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - DruidIngestion + telemetry-logstash-dock + Deploy/DockDev/Kubernetes/telemetry-logstash-dock - + ET_FORMATTED_HTML true + + role_name + + + + sunbird-deploy + + + - + 0 0 false project false - + + - - + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/sunbird-devops.git - ${branch_or_tag} + ${dock_public_branch} false @@ -124,13 +128,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/ops/druid/Jenkinsfile.ingestion + kubernetes/pipelines/deploy_core/Jenkinsfile false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/config.xml similarity index 100% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Plugins/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/config.xml diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/CollectionEditor/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/CollectionEditor/config.xml similarity index 59% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/CollectionEditor/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/CollectionEditor/config.xml index 8e06439289..604e5ad8e7 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/CollectionEditor/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/CollectionEditor/config.xml @@ -1,11 +1,10 @@ - - + - + false - + false false @@ -14,154 +13,160 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Plugins/CollectionEditor + ArtifactUpload/DockDev/Plugins/CollectionEditor false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-620062284617427 1 - false + true - - - false + + CollectionEditor + Deploy/DockDev/Plugins/CollectionEditor - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-620062286335119 1 - false + true - - - false + + CollectionEditor + Deploy/DockDev/Plugins/CollectionEditor artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-620062288387509 1 - false + true - - - false + + CollectionEditor + Deploy/DockDev/Plugins/CollectionEditor artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CollectionEditor + Deploy/DockDev/Plugins/CollectionEditor - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CollectionEditor + Deploy/DockDev/Plugins/CollectionEditor - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - ArtifactUpload/dev/Plugins/CollectionEditor + + SUCCESS 0 @@ -172,8 +177,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -191,7 +196,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentEditor/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentEditor/config.xml similarity index 59% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentEditor/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentEditor/config.xml index 2206e127f4..d3b587df28 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentEditor/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentEditor/config.xml @@ -1,7 +1,6 @@ - - + - + false @@ -14,154 +13,160 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Plugins/ContentEditor + ArtifactUpload/DockDev/Plugins/ContentEditor false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-620062284617427 1 - false + true - - - false + + ContentEditor + Deploy/DockDev/Plugins/ContentEditor - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-620062286335119 1 - false + true - - - false + + ContentEditor + Deploy/DockDev/Plugins/ContentEditor artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-620062288387509 1 - false + true - - - false + + ContentEditor + Deploy/DockDev/Plugins/ContentEditor artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true ContentEditor + Deploy/DockDev/Plugins/ContentEditor - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true ContentEditor + Deploy/DockDev/Plugins/ContentEditor - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - ArtifactUpload/dev/Plugins/ContentEditor + + SUCCESS 0 @@ -172,8 +177,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -191,7 +196,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentPlayer/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentPlayer/config.xml similarity index 57% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentPlayer/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentPlayer/config.xml index 999dde5c35..9fcd3fb4d9 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentPlayer/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentPlayer/config.xml @@ -1,7 +1,6 @@ - - + - + false @@ -14,159 +13,160 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Plugins/ContentPlayer + ArtifactUpload/DockDev/Plugins/ContentPlayer false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-620062284617427 1 - false + true - - - false + + ContentPlayer - Deploy/dev/Plugins/ContentPlayer + Deploy/DockDev/Plugins/ContentPlayer - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-620062286335119 1 - false + true - - - false + + ContentPlayer - Deploy/dev/Plugins/ContentPlayer + Deploy/DockDev/Plugins/ContentPlayer artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-620062288387509 1 - false + true - - - false + + ContentPlayer - Deploy/dev/Plugins/ContentPlayer + Deploy/DockDev/Plugins/ContentPlayer artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true ContentPlayer - Deploy/dev/Plugins/ContentPlayer + Deploy/DockDev/Plugins/ContentPlayer - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true ContentPlayer - Deploy/dev/Plugins/ContentPlayer + Deploy/DockDev/Plugins/ContentPlayer - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - ArtifactUpload/dev/Plugins/ContentPlayer + + SUCCESS 0 @@ -177,8 +177,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -196,7 +196,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentPlugins/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentPlugins/config.xml new file mode 100644 index 0000000000..076670342d --- /dev/null +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/ContentPlugins/config.xml @@ -0,0 +1,197 @@ + + + + false + + + false + + + false + false + + + + + absolute_job_path + <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> + ArtifactUpload/DockDev/Plugins/ContentPlugins + false + + + artifact_source + <font color=dimgray size=2><b> +ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> + choice-parameter-620062284617427 + 1 + + true + + + + ContentPlugins + Deploy/DockDev/Plugins/ContentPlugins + + + PT_SINGLE_SELECT + false + 1 + + + build_number + choice-parameter-620062286335119 + 1 + + true + + + + ContentPlugins + Deploy/DockDev/Plugins/ContentPlugins + + artifact_source + ET_FORMATTED_HTML + true + + + artifact_version + choice-parameter-620062288387509 + 1 + + true + + + + ContentPlugins + Deploy/DockDev/Plugins/ContentPlugins + + artifact_source + ET_FORMATTED_HTML + true + + + private_branch + choice-parameter-2544395024638227 + 1 + + true + + + + true + + + ContentPlugins + Deploy/DockDev/Plugins/ContentPlugins + + + ET_FORMATTED_HTML + true + + + branch_or_tag + choice-parameter-2620434998790477 + 1 + + true + + + + true + + + ContentPlugins + Deploy/DockDev/Plugins/ContentPlugins + + + ET_FORMATTED_HTML + true + + + + + 0 + 0 + + false + project + false + + + + + + + + + + 2 + + + https://github.com/santhosh-tg/sunbird-devops.git + + + + + ${branch_or_tag} + + + false + + + + true + false + + 0 + false + + + + pipelines/deploy/CEPlugins/Jenkinsfile + false + + + false + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/GenericEditor/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/GenericEditor/config.xml similarity index 57% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/GenericEditor/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/GenericEditor/config.xml index c4a6262e7e..75ed966dd8 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/GenericEditor/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/GenericEditor/config.xml @@ -1,7 +1,6 @@ - - + - + false @@ -14,159 +13,160 @@ absolute_job_path <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Plugins/GenericEditor + ArtifactUpload/DockDev/Plugins/GenericEditor false - + artifact_source <font color=dimgray size=2><b> ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> choice-parameter-620062284617427 1 - false + true - - - false + + GenericEditor - Deploy/dev/Plugins/GenericEditor + Deploy/DockDev/Plugins/GenericEditor - + PT_SINGLE_SELECT false 1 - + build_number - + choice-parameter-620062286335119 1 - false + true - - - false + + GenericEditor - Deploy/dev/Plugins/GenericEditor + Deploy/DockDev/Plugins/GenericEditor artifact_source ET_FORMATTED_HTML true - + artifact_version - + choice-parameter-620062288387509 1 - false + true - - - false + + GenericEditor - Deploy/dev/Plugins/GenericEditor + Deploy/DockDev/Plugins/GenericEditor artifact_source ET_FORMATTED_HTML true - + private_branch - + choice-parameter-2544395024638227 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true GenericEditor - Deploy/dev/Plugins/GenericEditor + Deploy/DockDev/Plugins/GenericEditor - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-2620434998790477 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true GenericEditor - Deploy/dev/Plugins/GenericEditor + Deploy/DockDev/Plugins/GenericEditor - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - ArtifactUpload/dev/Plugins/GenericEditor + + SUCCESS 0 @@ -177,8 +177,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -196,7 +196,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentPlugins/config.xml b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/org_sunbird_questionunit_quml/config.xml similarity index 89% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentPlugins/config.xml rename to deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/org_sunbird_questionunit_quml/config.xml index 37fdaa0d4d..0eb947fcc0 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Plugins/jobs/ContentPlugins/config.xml +++ b/deploy/jenkins/jobs/Deploy/jobs/DockDev/jobs/Plugins/jobs/org_sunbird_questionunit_quml/config.xml @@ -29,14 +29,14 @@ ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrif 'JenkinsJob', 'ArtifactRepo' ] - false + true - false + true - ContentPlugins + org_sunbird_questionunit_quml PT_SINGLE_SELECT @@ -57,14 +57,14 @@ else { return "<b>Not Applicable</b>" } - false + true - false + true - ContentPlugins + org_sunbird_questionunit_quml artifact_source ET_FORMATTED_HTML @@ -83,14 +83,14 @@ return """<input name="value" value="" cla else { return "<b>Not Applicable</b>" } - false + true - false + true - ContentPlugins + org_sunbird_questionunit_quml artifact_source ET_FORMATTED_HTML @@ -108,14 +108,14 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true - ContentPlugins + org_sunbird_questionunit_quml ET_FORMATTED_HTML @@ -133,19 +133,25 @@ return """<input name="value" value="${public_r } else return """<b>This parameter is not used</b>""" - false + true - false + true - ContentPlugins + org_sunbird_questionunit_quml ET_FORMATTED_HTML true + + plugin_name + + org.sunbird.questionunit.quml-1.0 + false + @@ -158,18 +164,7 @@ return """<b>This parameter is not used</b>"&quo - - - - ArtifactUpload/dev/Plugins/ContentPlugins - - SUCCESS - 0 - BLUE - true - - - + @@ -197,7 +192,7 @@ return """<b>This parameter is not used</b>"&quo - pipelines/deploy/CEPlugins/Jenkinsfile + pipelines/deploy/org_sunbird_questionunit_quml/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Assessment/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Assessment/config.xml deleted file mode 100644 index 1353dd4e76..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Assessment/config.xml +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Assessment - false - - - image_tag - <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Assessment - Deploy/dev/Core_disabled/Assessment - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Assessment - Deploy/dev/Core_disabled/Assessment - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/Core/Assessment - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/assessment/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml deleted file mode 100644 index 9fb0436c4b..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CassandraTrigger/config.xml +++ /dev/null @@ -1,218 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/CassandraTrigger - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9600649228560 - 1 - - false - - - - false - - - CassandraTrigger - Deploy/dev/Core/CassandraTrigger - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9600651313765 - 1 - - false - - - - false - - - CassandraTrigger - Deploy/dev/Core/CassandraTrigger - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9600653373369 - 1 - - false - - - - false - - - CassandraTrigger - Deploy/dev/Core/CassandraTrigger - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - CassandraTrigger - Deploy/dev/Core/CassandraTrigger - - - ET_FORMATTED_HTML - true - - - public_branch - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - CassandraTrigger - Deploy/dev/Core/CassandraTrigger - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - /ArtifactUpload/dev/Core/CassandraTrigger - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/cassandra-deploy/Jenkinsfile.trigger - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Cert/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Cert/config.xml deleted file mode 100644 index 5713bdacb9..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Cert/config.xml +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Cert - false - - - image_tag - <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Cert - Deploy/dev/Core/Cert - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Cert - Deploy/dev/Core/Cert - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/Core/Cert - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/cert/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml deleted file mode 100644 index 44e278d0d3..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/CertRegistryService/config.xml +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/CertRegistryService - false - - - image_tag - <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - CertRegistryService - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - CertRegistryService - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/Core/CertRegistryService - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/cert-registry-service/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Learner/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Learner/config.xml deleted file mode 100644 index db227c4737..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Learner/config.xml +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Learner - false - - - image_tag - <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Learner - Deploy/dev/Core/Learner - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Learner - Deploy/dev/Core/Learner - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/Core/Learner - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/learner/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/ReloadContainerServices/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/ReloadContainerServices/config.xml deleted file mode 100644 index 3e98e52376..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/ReloadContainerServices/config.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - -1 - - - - false - false - - - - - service - <b color:"blue">All will reload proxy and kong, proxy will reload proxy container configs, kong will reload kong container configs</b> - proxy - false - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/reloadConfigurations/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Telemetry/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Telemetry/config.xml deleted file mode 100644 index d41ac682b3..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Telemetry/config.xml +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Telemetry - false - - - image_tag - <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Telemetry - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Telemetry - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/Core/Telemetry - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/telemetry/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/TelemetryLogstash/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/TelemetryLogstash/config.xml deleted file mode 100644 index 3f59f70e35..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/TelemetryLogstash/config.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - Deploys Telemetry Logstash Service - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-186827048551040 - 1 - - false - - - - false - - - TelemetryLogstash - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-186827051364357 - 1 - - false - - - - false - - - TelemetryLogstash - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/telemetry-logstash/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Yarn/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Yarn/config.xml deleted file mode 100644 index 10a02619bf..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/Yarn/config.xml +++ /dev/null @@ -1,235 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/Core/Yarn - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - Yarn - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - Yarn - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - Yarn - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Yarn - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Yarn - - - ET_FORMATTED_HTML - true - - - job_names_to_deploy - <font color=green size=2><b>Choose the samza app names to deploy and this will kill the selected samza app and deploy them. Multi selection is available.</b></font> - choice-parameter-8026182213525059 - 1 - - false - - - - false - - - Yarn - - - PT_MULTI_SELECT - false - 1 - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/yarn/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml deleted file mode 100644 index dfe786f734..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml +++ /dev/null @@ -1,215 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/DataPipeline/Analytics - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - AnalyticsAPI - Deploy/dev/DataPipeline/AnalyticsAPI - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - AnalyticsAPI - Deploy/dev/DataPipeline/AnalyticsAPI - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - AnalyticsAPI - Deploy/dev/DataPipeline/AnalyticsAPI - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - AnalyticsAPI - Deploy/dev/DataPipeline/AnalyticsAPI - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - AnalyticsAPI - Deploy/dev/DataPipeline/AnalyticsAPI - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/analytics-api/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsGeoLocationDBSetup/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsGeoLocationDBSetup/config.xml deleted file mode 100644 index 23e99c74f0..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsGeoLocationDBSetup/config.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-188130479612620 - 1 - - false - - - - false - - - AnalyticsGeoLocationDBSetup - Deploy/dev/DataPipeline/AnalyticsGeoLocationDBSetup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-188130482273762 - 1 - - false - - - - false - - - AnalyticsGeoLocationDBSetup - Deploy/dev/DataPipeline/AnalyticsGeoLocationDBSetup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/geolocation-db-setup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsPopulatePSQLConsumerChannelMapping/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsPopulatePSQLConsumerChannelMapping/config.xml deleted file mode 100644 index 1f15972991..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsPopulatePSQLConsumerChannelMapping/config.xml +++ /dev/null @@ -1,152 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - Consumer_id - <font color=dimgray size=2><b>Mention the consumer ID.</b></font> - id - false - - - Channel_id - <font color=dimgray size=2><b>Channel ID to map with the Consumer ID.</b></font> - channel_id - false - - - status - <font color=dimgray size=2><b> 1 - to activate, 0 - to make it inactive</b></font> - - - 1 - 0 - - - - - Created_by - <font color=dimgray size=2><b>Created by.</b></font> - analytics-team - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - AnalyticsPopulatePSQLConsumerChannelMapping - Deploy/dev/DataPipeline/AnalyticsPopulatePSQLConsumerChannelMapping - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - AnalyticsPopulatePSQLConsumerChannelMapping - Deploy/dev/DataPipeline/AnalyticsPopulatePSQLConsumerChannelMapping - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/PopulatePSQL-ConsumerChannelMapping/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsReplayJobs/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsReplayJobs/config.xml deleted file mode 100644 index cf23738d91..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsReplayJobs/config.xml +++ /dev/null @@ -1,166 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - cql_query - <font color=dimgray size=2><b>Specify cql_query if any tables needs to be truncated.<b></font> - 0 - false - - - job_type - <font color=dimgray size=2><b>Specify the job type - Replay or Run.</b></font> - - - replay-job - run-job - generate-metrics - submit-job - - - - - job_id - <font color=dimgray size=2><b>Specify the job id.</b></font> - - false - - - start_date - <font color=dimgray size=2><b>Specify the start date. The default value is just a placeholder which can be changed as per need.</b></font> - 2017-05-01 - false - - - end_date - <font color=dimgray size=2><b>Specify the end date. The default value is just a placeholder which can be changed as per need.</b></font> - 2017-07-11 - false - - - pause_min - <font color=dimgray size=2><b>Specify the # of minutes to pause. The default value is just a placeholder which can be changed as per need.</b></font> - 30 - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - AnalyticsReplayJobs - Deploy/dev/DataPipeline/AnalyticsReplayJobs - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - AnalyticsReplayJobs - Deploy/dev/DataPipeline/AnalyticsReplayJobs - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/replay-jobs/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsStartJobManager/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsStartJobManager/config.xml deleted file mode 100644 index 99fa738f03..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/AnalyticsStartJobManager/config.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - pause_min - <font color=dimgray size=2><b>Pause for # of minutes.</b></font> - 5 - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - AnalyticsStartJobManager - Deploy/dev/DataPipeline/AnalyticsStartJobManager - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - AnalyticsStartJobManager - Deploy/dev/DataPipeline/AnalyticsStartJobManager - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/start-jobmanager/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ApiModule/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ApiModule/config.xml deleted file mode 100644 index 940c48fa63..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ApiModule/config.xml +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/DataPipeline/ApiModule - false - - - image_tag - <font color=red size=2><b>CAUTION: If the value is blank, image tag will be taken from the latest metadata.json.</b></font> - - false - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - ApiModule - Deploy/dev/DataPipeline/ApiModule - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - ApiModule - Deploy/dev/DataPipeline/ApiModule - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - ApiModule - Deploy/dev/DataPipeline/ApiModule - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/DataPipeline/ApiModule - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/druid-proxy/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/CassandraDbUpdate/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/CassandraDbUpdate/config.xml deleted file mode 100644 index b1efd0f52e..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/CassandraDbUpdate/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-188134496458577 - 1 - - false - - - - false - - - CassandraDbUpdate - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-188134511232202 - 1 - - false - - - - false - - - CassandraDbUpdate - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/cassandra/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataProducts/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataProducts/config.xml deleted file mode 100644 index 7826dc016a..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataProducts/config.xml +++ /dev/null @@ -1,226 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/DataPipeline/Analytics - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - DataProducts - Deploy/dev/DataPipeline/DataProducts - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - DataProducts - Deploy/dev/DataPipeline/DataProducts - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - DataProducts - Deploy/dev/DataPipeline/DataProducts - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - DataProducts - Deploy/dev/DataPipeline/DataProducts - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - DataProducts - Deploy/dev/DataPipeline/DataProducts - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/DataPipeline/Analytics - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/data-products/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataproductsConfigUpdate/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataproductsConfigUpdate/config.xml deleted file mode 100644 index 6e006a10c1..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/DataproductsConfigUpdate/config.xml +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - tags - <font color=red size=2><b> -Please provide the tag name. - Provide the comma separated value if you want to give more than 1 tags.[ Ex: clean-cronjobs,cronjobs,update-config ] -</b></font> - - false - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - DataproductsConfigUpdate - Deploy/dev/DataPipeline/DataproductsConfigUpdate - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - DataproductsConfigUpdate - Deploy/dev/DataPipeline/DataproductsConfigUpdate - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/data-products/Jenkinsfile.configupdate - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLDruidContentIndexer/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLDruidContentIndexer/config.xml deleted file mode 100644 index d6bcdef93c..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLDruidContentIndexer/config.xml +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Deploy/dev/DataPipeline/ETLJobs - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - ETLDruidContentIndexer - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - ETLDruidContentIndexer - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - ETLDruidContentIndexer - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - ETLDruidContentIndexer - - - ET_FORMATTED_HTML - true - - - script_to_run - <font color=dimgray size=2><b> -Default Druid content indexer job will run as cron.</b></font> - - - DRUID_CONTENT_INDEXER - - - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - ETLDruidContentIndexer - - - ET_FORMATTED_HTML - true - - - invoke_type - <font color=dimgray size=2><b> -If you select the "execute script from the invoke_type drop down then choose which script you want to execute."</b></font> - - - execute-script - - - - - - - 0 - 0 - - false - project - false - - - - - - H 22 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/content-snapshot-indexer/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml deleted file mode 100644 index f559a8b300..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLJobs/config.xml +++ /dev/null @@ -1,245 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/DataPipeline/ETLJobs - false - - - invoke_type - <font color=dimgray size=2><b> -Please select the action deploy or execute script.</b></font> - - - deploy - execute-script - - - - - script_to_run - <font color=dimgray size=2><b> -If you select the "execute script from the invoke_type drop down then choose which script you want to execute."</b></font> - - - USER_CACHE_INDEXER - DRUID_CONTENT_INDEXER - CONTENT_CACHE_INDEXER - DIALCODE_CACHE_INDEXER - - - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - ETLJobs - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - ETLJobs - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - ETLJobs - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - ETLJobs - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - ETLJobs - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/DataPipeline/ETLJobs - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/content-snapshot-indexer/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLUserCacheIndexer/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLUserCacheIndexer/config.xml deleted file mode 100644 index 553749d1f5..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/ETLUserCacheIndexer/config.xml +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - Deploy/dev/DataPipeline/ETLJobs - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - ETLUserCacheIndexer - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - ETLUserCacheIndexer - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - ETLUserCacheIndexer - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - ETLUserCacheIndexer - - - ET_FORMATTED_HTML - true - - - script_to_run - <font color=dimgray size=2><b> -user cache indexer script will run.</b></font> - - - USER_CACHE_INDEXER - - - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - ETLUserCacheIndexer - - - ET_FORMATTED_HTML - true - - - invoke_type - <font color=dimgray size=2><b> -Please select the action deploy or execute script.</b></font> - - - execute-script - - - - - - - 0 - 0 - - false - project - false - - - - - - H 22 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/content-snapshot-indexer/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaIndexer/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaIndexer/config.xml deleted file mode 100644 index 906b7afeb9..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaIndexer/config.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-188153004575082 - 1 - - false - - - - false - - - KafkaIndexer - Deploy/dev/DataPipeline/KafkaIndexer - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-188153015326365 - 1 - - false - - - - false - - - KafkaIndexer - Deploy/dev/DataPipeline/KafkaIndexer - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/kafka-indexer/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaSetup/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaSetup/config.xml deleted file mode 100644 index 6a96ea641a..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/KafkaSetup/config.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-188157054642539 - 1 - - false - - - - false - - - KafkaSetup - Deploy/dev/DataPipeline/KafkaSetup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-188157057910170 - 1 - - false - - - - false - - - KafkaSetup - Deploy/dev/DataPipeline/KafkaSetup - - - ET_UNORDERED_LIST - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/kafka/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Monitoring/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Monitoring/config.xml deleted file mode 100644 index dcfdb361be..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Monitoring/config.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-188158799721702 - 1 - - false - - - - false - - - Monitoring - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-188158802464010 - 1 - - false - - - - false - - - Monitoring - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - - - FAILURE - 2 - RED - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/monitor/DataPipeline/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml deleted file mode 100644 index 293eb390e9..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Secor/config.xml +++ /dev/null @@ -1,226 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/DataPipeline/Secor - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - Secor - Deploy/dev/DataPipeline/Secor - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - Secor - Deploy/dev/DataPipeline/Secor - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - Secor - Deploy/dev/DataPipeline/Secor - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Secor - Deploy/dev/DataPipeline/Secor - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Secor - Deploy/dev/DataPipeline/Secor - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/DataPipeline/Secor - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/secor/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml deleted file mode 100644 index 7a1bcd77f9..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml +++ /dev/null @@ -1,251 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/DataPipeline/DataPipeline - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-9061667106947 - 1 - - false - - - - false - - - Yarn - Deploy/dev/DataPipeline/Yarn - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-9061670571657 - 1 - - false - - - - false - - - Yarn - Deploy/dev/DataPipeline/Yarn - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-9061673103864 - 1 - - false - - - - false - - - Yarn - Deploy/dev/DataPipeline/Yarn - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Yarn - Deploy/dev/DataPipeline/Yarn - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Yarn - Deploy/dev/DataPipeline/Yarn - - - ET_FORMATTED_HTML - true - - - job_names_to_deploy - <font color=green size=2><b>Choose the samza app names to deploy and this will kill the selected samza app and deploy them. Multi selection is available.</b></font> - choice-parameter-8026182213525059 - 1 - - false - - - - false - - - Yarn - Deploy/dev/DataPipeline/Yarn - - - PT_MULTI_SELECT - false - 1 - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 1 - false - - - - pipelines/deploy/yarn/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/config.xml deleted file mode 100644 index 68477b8ac7..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml deleted file mode 100644 index d4d9795999..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraTrigger/config.xml +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/KnowledgePlatform/CassandraTrigger - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-12566219493457 - 1 - - false - - - - false - - - CassandraTrigger - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-12566221440336 - 1 - - false - - - - false - - - CassandraTrigger - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-12566223395914 - 1 - - false - - - - false - - - CassandraTrigger - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - CassandraTrigger - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - CassandraTrigger - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/KnowledgePlatform/CassandraTrigger - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/cassandra/Jenkinsfile.triggers - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ESMapping/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ESMapping/config.xml deleted file mode 100644 index 415af374cf..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ESMapping/config.xml +++ /dev/null @@ -1,147 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - branch_or_tag - - choice-parameter-9675060449018219 - 1 - - false - - - - false - - - ESMapping - Deploy/dev/KnowledgePlatform/ESMapping - - - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-9675060450520341 - 1 - - false - - - - false - - - ESMapping - Deploy/dev/KnowledgePlatform/ESMapping - - - ET_FORMATTED_HTML - true - - - file_name - <font color=dimgray size=2><b>enter the file name for template or mapping<br> - please add name without json extension.<br> - <br> - ex: test.json (templates or mapping) is added in ansible files, <br> - input should be test <br> - <br> - comma seperated values for multiple files <br> - ex: filename1,filename22 <br> - <br> - enter all to run all template and mappings <br> - </b></font> - - false - - - tag - - - - template - mapping - all - - - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/project-sunbird/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml deleted file mode 100644 index 434510f8e9..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml +++ /dev/null @@ -1,226 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - absolute_job_path - <font color=dimgray size=2><b>Do not change this value! The metadata.json will be copied from this job.</b></font> - ArtifactUpload/dev/KnowledgePlatform/KnowledgePlatform - false - - - artifact_source - <font color=dimgray size=2><b> -ArtifactRepo - Download the artifact from azure blob, JenkinsJob - Use the atrifact from Jenkins job.</b></font> - choice-parameter-14760318274338 - 1 - - false - - - - false - - - Search - Deploy/dev/KnowledgePlatform/Search - - - PT_SINGLE_SELECT - false - 1 - - - build_number - - choice-parameter-14760320375443 - 1 - - false - - - - false - - - Search - Deploy/dev/KnowledgePlatform/Search - - artifact_source - ET_FORMATTED_HTML - true - - - artifact_version - - choice-parameter-14760322347747 - 1 - - false - - - - false - - - Search - Deploy/dev/KnowledgePlatform/Search - - artifact_source - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-2544395024638227 - 1 - - false - - - - false - - - Search - Deploy/dev/KnowledgePlatform/Search - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2620434998790477 - 1 - - false - - - - false - - - Search - Deploy/dev/KnowledgePlatform/Search - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - ArtifactUpload/dev/KnowledgePlatform/KnowledgePlatform - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/search/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ValidateLearning/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ValidateLearning/config.xml deleted file mode 100644 index 70cf30e776..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/ValidateLearning/config.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-188181907964621 - 1 - - false - - - - false - - - ValidateLearning - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-188181915988837 - 1 - - false - - - - false - - - ValidateLearning - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/validate-learning/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/config.xml deleted file mode 100644 index 68477b8ac7..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/jobs/DeployedVersions/config.xml b/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/jobs/DeployedVersions/config.xml deleted file mode 100644 index 2c667ec581..0000000000 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Summary/jobs/DeployedVersions/config.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 10 - - - - - false - false - - - 0 - 0 - - false - project - false - - - - - - - Deploy/dev/Core/Content,Deploy/dev/Core/Player,Deploy/dev/Core/Learner,Deploy/dev/Core/Telemetry,Deploy/dev/Core/Proxy,Deploy/dev/KnowledgePlatform/Search,Deploy/dev/KnowledgePlatform/Learning,Deploy/dev/KnowledgePlatform/Yarn,Deploy/dev/DataPipeline/Secor,Deploy/dev/DataPipeline/Yarn,Deploy/dev/DataPipeline/AnalyticsAPI,Deploy/dev/DataPipeline/DataProducts - - SUCCESS - 0 - BLUE - true - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/summary/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/config.xml similarity index 99% rename from deploy/jenkins/jobs/Deploy/jobs/dev/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/config.xml index ca27afff70..8c8efc0760 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/config.xml @@ -1,6 +1,5 @@ - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/config.xml new file mode 100644 index 0000000000..fb78197ddd --- /dev/null +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/config.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/CreateUser/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/CreateUser/config.xml similarity index 64% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/CreateUser/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/CreateUser/config.xml index cfda6e5ec2..c3cddf3215 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/CreateUser/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/CreateUser/config.xml @@ -1,7 +1,6 @@ - - + - + false @@ -13,30 +12,30 @@ instance_name <font color=dimgray size=2><b>Enter ansible group name</b></font> - + false username <font color=dimgray size=2><b>Enter user name</b></font> - + false password <font color=dimgray size=2><b>Enter encrypted password</b></font> - + false public_key <font color=dimgray size=2><b>Enter public key in single quotes</b></font> - + false tag - + add-user @@ -44,71 +43,74 @@ - + private_branch - + choice-parameter-189741599993386 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CreateUser + OpsAdministration/DockDev/Core/CreateUser - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-189741602917876 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CreateUser + OpsAdministration/DockDev/Core/CreateUser - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -126,7 +128,7 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ApplicationElasticsearchBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/ElasticsearchBackup/config.xml similarity index 58% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ApplicationElasticsearchBackup/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/ElasticsearchBackup/config.xml index 54c8ced7ab..12b25cd615 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ApplicationElasticsearchBackup/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/ElasticsearchBackup/config.xml @@ -1,86 +1,88 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - + choice-parameter-189747244589805 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - ApplicationElasticsearchBackup + ElasticsearchBackup + OpsAdministration/DockDev/Core/ElasticsearchBackup - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-189747247305087 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - ApplicationElasticsearchBackup + ElasticsearchBackup + OpsAdministration/DockDev/Core/ElasticsearchBackup - + ET_FORMATTED_HTML true - + 0 0 false project false - + + @@ -89,8 +91,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -108,13 +110,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 0 false - pipelines/backup/es-backup/Jenkinsfile + pipelines/backup/es7-backup/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Postgres/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/Log4jFix/config.xml similarity index 51% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Postgres/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/Log4jFix/config.xml index bf512172cb..5992c0744a 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Postgres/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/Core/jobs/Log4jFix/config.xml @@ -1,87 +1,97 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - + choice-parameter-196489635829894 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Postgres + Log4jFix + OpsAdministration/DockDev/Core/Log4jFix - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-196489639391445 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Postgres + Log4jFix + OpsAdministration/DockDev/Core/Log4jFix - + ET_FORMATTED_HTML true + + hosts + <font style="color:dimgray;font-size:14px;"><b>You can pass ansible group / IPs from the inventory. Default is to pass env</b></font> + env + false + - + + 0 + 0 false project false - + + - - + + 2 @@ -90,24 +100,24 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + release-4.4.1 false - + true false - + 0 false - pipelines/provision/postgres/Jenkinsfile + pipelines/ops/log4j-fix/Jenkinsfile false false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/DataPipeline/config.xml new file mode 100644 index 0000000000..c20bd4ad2f --- /dev/null +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/DataPipeline/config.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Cassandra/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/DataPipeline/jobs/Log4jFix/config.xml similarity index 51% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Cassandra/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/DataPipeline/jobs/Log4jFix/config.xml index 01cae68572..39efc6778f 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Cassandra/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/DataPipeline/jobs/Log4jFix/config.xml @@ -1,89 +1,97 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - - choice-parameter-196486141556745 + + choice-parameter-196489635829894 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Cassandra + Log4jFix + OpsAdministration/DockDev/DataPipeline/Log4jFix - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-196486144020383 + + choice-parameter-196489639391445 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - Cassandra + Log4jFix + OpsAdministration/DockDev/DataPipeline/Log4jFix - + ET_FORMATTED_HTML true + + hosts + <font style="color:dimgray;font-size:14px;"><b>You can pass ansible group / IPs from the inventory. Default is to pass env</b></font> + env + false + - + 0 0 false project false - + + - - + + 2 @@ -92,22 +100,22 @@ return """<b>This parameter is not used</b>"&quo - ${branch_or_tag} + release-4.4.1 false - + true false - + 0 false - pipelines/provision/cassandra/Jenkinsfile + pipelines/ops/log4j-fix/Jenkinsfile false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/config.xml similarity index 99% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/config.xml index ca27afff70..8c8efc0760 100644 --- a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/DataPipeline/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/config.xml @@ -1,6 +1,5 @@ - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraBackup/config.xml similarity index 62% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraBackup/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraBackup/config.xml index 234226a025..21faaa03d1 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraBackup/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/CassandraBackup/config.xml @@ -1,19 +1,18 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false @@ -31,69 +30,71 @@ /var/lib/cassandra/data false - + private_branch - + choice-parameter-193690420291616 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CassandraBackup + OpsAdministration/DockDev/KnowledgePlatform/CassandraBackup - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-193690422104853 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true CassandraBackup + OpsAdministration/DockDev/KnowledgePlatform/CassandraBackup - + ET_FORMATTED_HTML true - + 0 0 false project false - - 1 + + @@ -102,26 +103,26 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 - https://github.com/project-sunbird/sunbird-learning-platform.git + https://github.com/project-sunbird/sunbird-learning-platform - ${branch_or_tag} + release-4.1.0 false - + true false - + 0 false @@ -131,5 +132,5 @@ return """<b>This parameter is not used</b>"&quo false - true + false \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CreateUser/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/CreateUser/config.xml similarity index 89% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CreateUser/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/CreateUser/config.xml index 97338a1827..614bd5d01b 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CreateUser/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/CreateUser/config.xml @@ -1,10 +1,10 @@ - + false - + false false @@ -44,52 +44,54 @@ - + private_branch choice-parameter-193692369324875 1 - false + true - + - false + true CreateUser + OpsAdministration/DockDev/KnowledgePlatform/CreateUser ET_FORMATTED_HTML true - + branch_or_tag choice-parameter-193692374018706 1 - false + true - + - false + true CreateUser + OpsAdministration/DockDev/KnowledgePlatform/CreateUser ET_FORMATTED_HTML @@ -107,8 +109,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -137,4 +139,4 @@ return """<b>This parameter is not used</b>"&quo false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/ElasticsearchBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/ElasticsearchBackup/config.xml similarity index 86% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/ElasticsearchBackup/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/ElasticsearchBackup/config.xml index d54244fc0e..4eba5c1199 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/ElasticsearchBackup/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/ElasticsearchBackup/config.xml @@ -1,5 +1,5 @@ - + false @@ -7,64 +7,66 @@ -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch choice-parameter-193692901127485 1 - false + true - + - false + true ElasticsearchBackup + OpsAdministration/DockDev/KnowledgePlatform/ElasticsearchBackup ET_FORMATTED_HTML true - + branch_or_tag choice-parameter-193692904321817 1 - false + true - + - false + true ElasticsearchBackup + OpsAdministration/DockDev/KnowledgePlatform/ElasticsearchBackup ET_FORMATTED_HTML @@ -89,8 +91,8 @@ return """<b>This parameter is not used</b>"&quo - - + + 2 @@ -119,4 +121,4 @@ return """<b>This parameter is not used</b>"&quo false - + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/DruidPostgresBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/Log4jFix/config.xml similarity index 51% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/DruidPostgresBackup/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/Log4jFix/config.xml index b63f0b4ebc..26f4b1e893 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/DruidPostgresBackup/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/Log4jFix/config.xml @@ -1,119 +1,121 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - - choice-parameter-193687699799775 + + choice-parameter-196489635829894 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - DruidPostgresBackup + Log4jFix + OpsAdministration/DockDev/KnowledgePlatform/Log4jFix - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-193687712890752 + + choice-parameter-196489639391445 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - DruidPostgresBackup + Log4jFix + OpsAdministration/DockDev/KnowledgePlatform/Log4jFix - + ET_FORMATTED_HTML true - remote - - druid-postgres + hosts + <font style="color:dimgray;font-size:14px;"><b>You can pass ansible group / IPs from the inventory. Default is to pass env</b></font> + env false - + 0 0 false project false - + + - - + + 2 - https://github.com/project-sunbird/sunbird-data-pipeline.git + https://github.com/project-sunbird/sunbird-devops.git - ${branch_or_tag} + release-4.4.1 false - + true false - + 0 false - pipelines/backup/postgresql-backup/Jenkinsfile + pipelines/ops/log4j-fix/Jenkinsfile false diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaOrphanprocessAlert/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/SamzaOrphanprocessAlert/config.xml similarity index 84% rename from deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaOrphanprocessAlert/config.xml rename to deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/SamzaOrphanprocessAlert/config.xml index 8146d565f5..f51a311523 100644 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaOrphanprocessAlert/config.xml +++ b/deploy/jenkins/jobs/OpsAdministration/jobs/DockDev/jobs/KnowledgePlatform/jobs/SamzaOrphanprocessAlert/config.xml @@ -1,43 +1,42 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + 0 0 false project false - - 1 + + - + Deploy/dev/DataPipeline/Yarn,Deploy/dev/KnowledgePlatform/Yarn SUCCESS @@ -52,8 +51,8 @@ - - + + 2 @@ -71,7 +70,7 @@ true false - + 0 false @@ -81,5 +80,5 @@ false - false - + true + \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ApplicationElasticsearchRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ApplicationElasticsearchRestore/config.xml deleted file mode 100644 index 0f8f73f2d2..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ApplicationElasticsearchRestore/config.xml +++ /dev/null @@ -1,127 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189745871212329 - 1 - - false - - - - false - - - ApplicationElasticsearchRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189745873861032 - 1 - - false - - - - false - - - ApplicationElasticsearchRestore - - - ET_FORMATTED_HTML - true - - - host - <b color:"#b666d2">Give the host IP in which you wanted to restore the ES. Do add the host ip in inventory file.</b> - 11.11.11.11 - false - - - snapshot_name - <b color:"#b666d2">Give the Snapshot Name of the snapshot which you want to restore from azure.</b> - snapshot_1562619680 - false - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/es-restore/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/Bootstrap/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/Bootstrap/config.xml deleted file mode 100644 index 9b168d96d0..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/Bootstrap/config.xml +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - hosts - <font color=teal size=2>enter the host name to be bootstrapped.</font> - core - false - - - private_branch - - choice-parameter-189744593687191 - 1 - - false - - - - false - - - Bootstrap - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189744596707715 - 1 - - false - - - - false - - - Bootstrap - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/bootstrap/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/CassandraBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/CassandraBackup/config.xml deleted file mode 100644 index 9ceaefbe6b..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/CassandraBackup/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189743214208409 - 1 - - false - - - - false - - - CassandraBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189743216959018 - 1 - - false - - - - false - - - CassandraBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 30 3 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/cassandra-backup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearDockerImages/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearDockerImages/config.xml deleted file mode 100644 index 0abf0e9bfb..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearDockerImages/config.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - false - - - false - false - - - 0 - 0 - - false - project - false - - - - - true - false - false - false - - - H 2 * * * - - - false - - - #docker image rm $(docker images | awk 'NR>1 {print $3}') --force 2> /dev/null -docker system prune -af - - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearWorkspace/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearWorkspace/config.xml deleted file mode 100644 index 087d526b05..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ClearWorkspace/config.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - false - - - false - false - - - - false - project - false - - - - - true - false - false - false - - - H 4 * * * - - - false - - - rm -rf /var/lib/jenkins/workspace/Build -rm -rf /var/lib/jenkins/workspace/Provision -rm -rf /var/lib/jenkins/workspace/OpsAdministration -rm -rf /var/lib/jenkins/workspace/ArtifactUpload -rm -rf /var/lib/jenkins/workspace/Deploy - - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ESMapping/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ESMapping/config.xml deleted file mode 100644 index 0227b7997a..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ESMapping/config.xml +++ /dev/null @@ -1,136 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - branch_or_tag - - choice-parameter-9675060449018219 - 1 - - false - - - - false - - - ESMapping - - - ET_FORMATTED_HTML - true - - - private_branch - - choice-parameter-9675060450520341 - 1 - - false - - - - false - - - ESMapping - - - ET_FORMATTED_HTML - true - - - indices_name - <font color=dimgray size=2><b>enter the new indices name to be created<br> - indices-name value should be same as the template(file names) added in es-mapping role (indice and mapping file) <br> - <br> - please add name without json or mappings.json extension.<br> - <br> - ex: test.json (indices) and test-mappings.json (mappings) is added in ansible files, <br> - input should be test <br> - <br> - comma seperated values for multiple indices <br> - ex: indices1,indices2 <br> - <br> - enter all to run all indices and mappings <br> - </b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/esmapping/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/GrafanaBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/GrafanaBackup/config.xml deleted file mode 100644 index 68aafba327..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/GrafanaBackup/config.xml +++ /dev/null @@ -1,117 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189743214208409 - 1 - - false - - - - false - - - GrafanaBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189743216959018 - 1 - - false - - - - false - - - GrafanaBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/grafana-backup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/JenkinsBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/JenkinsBackup/config.xml deleted file mode 100644 index b09d7e5429..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/JenkinsBackup/config.xml +++ /dev/null @@ -1,121 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189743214208409 - 1 - - false - - - - false - - - JenkinsBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189743216959018 - 1 - - false - - - - false - - - JenkinsBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 30 4 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/jenkins-backup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/KeyRotation/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/KeyRotation/config.xml deleted file mode 100644 index 1880fa9db7..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/KeyRotation/config.xml +++ /dev/null @@ -1,145 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - bootstrap_user - <font color="black" size=2><b>Deployer user</b></font> - deployer - false - - - bootstrap_user_public_key - <font color="black" size=2><b>Deployer user public key keep in single quotes</b></font> - - false - - - ssh_user - <font color="black" size=2><b>ops user</b></font> - ops - false - - - ssh_private_file - <font color="black" size=2><b>location of ssh key for ops user from '/'</b></font> - - false - - - ssh_public_key - <font color="black" size=2><b>ops public key</b></font> - - false - - - private_branch - - choice-parameter-189737247413523 - 1 - - false - - - - false - - - KeyRotation - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189737249857994 - 1 - - false - - - - false - - - KeyRotation - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/bootstrap/Jenkinsfile.rotatekey - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchBackup/config.xml deleted file mode 100644 index 17fa0572d6..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchBackup/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189736181593455 - 1 - - false - - - - false - - - LoggerElasticSearchBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189736184660192 - 1 - - false - - - - false - - - LoggerElasticSearchBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 30 1 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/logger-es-backup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchRestore/config.xml deleted file mode 100644 index 7982bb2c21..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/LoggerElasticSearchRestore/config.xml +++ /dev/null @@ -1,127 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189735035014631 - 1 - - false - - - - false - - - LoggerElasticSearchRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189735038967629 - 1 - - false - - - - false - - - LoggerElasticSearchRestore - - - ET_FORMATTED_HTML - true - - - host - <b color:"#b666d2">Give the host IP in which you wanted to restore the ES. Do add the host ip in inventory file.</b> - 10.0.0.12 - false - - - snapshot_name - <b color:"#b666d2">Give the Snapshot Name of the snapshot which you want to restore from azure.</b> - snapshot_1564041752 - false - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/logger-es-restore/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ManagedPostgresBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ManagedPostgresBackup/config.xml deleted file mode 100644 index 51657f25fb..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/ManagedPostgresBackup/config.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189733897665665 - 1 - - false - - - - false - - - PostgresManagedBackup - OpsAdministration/dev/Core/PostgresManagedBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189733901134743 - 1 - - false - - - - false - - - PostgresManagedBackup - OpsAdministration/dev/Core/PostgresManagedBackup - - - ET_FORMATTED_HTML - true - - - postgres_env - - dev_old - false - - - - - 0 - 0 - - false - project - false - - - - - - H 3 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/managed-postgres-backup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitDeploy/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitDeploy/config.xml deleted file mode 100644 index 413b0297a6..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitDeploy/config.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-193690420291616 - 1 - - false - - - - false - - - MonitDeploy - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193690422104853 - 1 - - false - - - - false - - - MonitDeploy - - - ET_FORMATTED_HTML - true - - - tag - - - - all - application-es - log-es - cassandra - - - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/monit-deploy/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitStatus/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitStatus/config.xml deleted file mode 100644 index 423e818557..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/MonitStatus/config.xml +++ /dev/null @@ -1,144 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - remote - <font color=teal size=2>enter the host name.</font> - - false - - - private_branch - - choice-parameter-193690420291616 - 1 - - false - - - - false - - - MonitStatus - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193690422104853 - 1 - - false - - - - false - - - MonitStatus - - - ET_FORMATTED_HTML - true - - - state - - - - started - stopped - - - - - tag - - - - status - start-stop-monit - - - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/monit-start-stop/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlBackup/config.xml deleted file mode 100644 index c8d49c9cd7..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlBackup/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189733897665665 - 1 - - false - - - - false - - - PostgresqlBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189733901134743 - 1 - - false - - - - false - - - PostgresqlBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - * 12 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/postgresql-backup/Jenkinsfile - false - - - true - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlRestore/config.xml deleted file mode 100644 index 9949088537..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PostgresqlRestore/config.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189732293676046 - 1 - - false - - - - false - - - PostgresqlRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189732297357674 - 1 - - false - - - - false - - - PostgresqlRestore - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/postgresql-restore/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusBackup/config.xml deleted file mode 100644 index 62420abc28..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusBackup/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189729368328896 - 1 - - false - - - - false - - - PrometheusBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189729371394455 - 1 - - false - - - - false - - - PrometheusBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 30 1 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/prometheus-backup/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusSanpshot/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusSanpshot/config.xml deleted file mode 100644 index 497f1633bd..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/PrometheusSanpshot/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189729368328896 - 1 - - false - - - - false - - - PrometheusSanpshot - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189729371394455 - 1 - - false - - - - false - - - PrometheusSanpshot - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 30 2 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/prometheus-backup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/SwarmBootstrap/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/SwarmBootstrap/config.xml deleted file mode 100644 index 429a4261f0..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/Core/jobs/SwarmBootstrap/config.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-189723213053334 - 1 - - false - - - - false - - - SwarmBootstrap - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-189723215007628 - 1 - - false - - - - false - - - SwarmBootstrap - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/bootstrap-swarm/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/Bootstrap/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/Bootstrap/config.xml deleted file mode 100644 index 7b842f76dd..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/Bootstrap/config.xml +++ /dev/null @@ -1,119 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - hosts - <font color=teal size=2>enter the host name to be bootstrapped.</font> - dp - false - - - private_branch - - choice-parameter-193680915486807 - 1 - - false - - - - false - - - Bootstrap - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193680923405976 - 1 - - false - - - - false - - - Bootstrap - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/bootstrap/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraBackup/config.xml deleted file mode 100644 index e99463288b..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraBackup/config.xml +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - remote - <font color=teal size=2>enter the host name.</font> - cassandra - false - - - data_dir - <font color=teal size=2>enter cassandra data directory.</font> - /var/lib/cassandra/data - false - - - private_branch - - choice-parameter-193681861366171 - 1 - - false - - - - false - - - CassandraBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193681863393052 - 1 - - false - - - - false - - - CassandraBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 30 5 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/cassandra-backup/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraRestore/config.xml deleted file mode 100644 index a120e7f0b7..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CassandraRestore/config.xml +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - remote - <font color=teal size=2>enter the host name.</font> - cassandra - false - - - artifact_version - <font color=teal size=2>Specify the artifact version to restore</font> - - false - - - private_branch - - choice-parameter-193682805945533 - 1 - - false - - - - false - - - CassandraRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193682809902019 - 1 - - false - - - - false - - - CassandraRestore - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/cassandra-restore/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ConsumerLagAlert/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ConsumerLagAlert/config.xml deleted file mode 100644 index 78c54d89f8..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ConsumerLagAlert/config.xml +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-2914866095851737 - 1 - - false - - - - false - - - ConsumerLagAlert - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2914866097410763 - 1 - - false - - - - false - - - ConsumerLagAlert - - - ET_FORMATTED_HTML - true - - - tag - - consumer_lag_monitor - false - - - - - 0 - 0 - - false - project - false - - - - - - H/60 * * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.throughputalert - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CreateUser/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CreateUser/config.xml deleted file mode 100644 index 933f47e1e2..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/CreateUser/config.xml +++ /dev/null @@ -1,140 +0,0 @@ - - - - - false - - - false - false - - - - - instance_name - <font color=dimgray size=2><b>Enter ansible group name</b></font> - - false - - - username - <font color=dimgray size=2><b>Enter user name</b></font> - - false - - - password - <font color=dimgray size=2><b>Enter encrypted password</b></font> - - false - - - public_key - <font color=dimgray size=2><b>Enter public key in single quotes</b></font> - - false - - - tag - - - - add-user - delete-user - - - - - private_branch - - choice-parameter-193683662067116 - 1 - - false - - - - false - - - CreateUser - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193683665760402 - 1 - - false - - - - false - - - CreateUser - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/createuser/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/DataproductsAlert/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/DataproductsAlert/config.xml deleted file mode 100644 index 570cefb6e4..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/DataproductsAlert/config.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-2914866095851737 - 1 - - false - - - - false - - - DataproductsAlert - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2914866097410763 - 1 - - false - - - - false - - - DataproductsAlert - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 30 10 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.dataproductalert - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchBackup/config.xml deleted file mode 100644 index 068045858f..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchBackup/config.xml +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - remote - <font color=teal size=2>enter any one host name or ip if it is a cluster</font> - - false - - - private_branch - - choice-parameter-193684482193674 - 1 - - false - - - - false - - - ElasticsearchBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193684493817846 - 1 - - false - - - - false - - - ElasticsearchBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - H 2 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/elasticsearch-backup/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchRestore/config.xml deleted file mode 100644 index 26d8883329..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/ElasticsearchRestore/config.xml +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - host - <font color=teal size=2>enter any one host name or ip if it is a cluster</font> - - false - - - SNAPSHOT_NUMBER - <font color=teal size=2>Enter Snapshot number to restore. -curl command to get snapshot number: -curl http://localhost:9200/_snapshot/azurebackup/_all, Parse the json and get the valid snapshot number to restore</font> - - false - - - private_branch - - choice-parameter-193685371526717 - 1 - - false - - - - false - - - ElasticsearchRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193685378659458 - 1 - - false - - - - false - - - ElasticsearchRestore - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/elasticsearch-restore/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/InfluxDBBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/InfluxDBBackup/config.xml deleted file mode 100644 index 14d6355551..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/InfluxDBBackup/config.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-193686205164304 - 1 - - false - - - - false - - - InfluxDBBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193686227117959 - 1 - - false - - - - false - - - InfluxDBBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 0 0 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/influxdb-backup/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/KeyRotation/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/KeyRotation/config.xml deleted file mode 100644 index faaea481ff..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/KeyRotation/config.xml +++ /dev/null @@ -1,145 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - bootstrap_user - <font color="black" size=2><b>Deployer user</b></font> - deployer - false - - - bootstrap_user_public_key - <font color="black" size=2><b>Deployer user public key keep in single quotes</b></font> - - false - - - ssh_user - <font color="black" size=2><b>ops user</b></font> - ops - false - - - ssh_private_file - <font color="black" size=2><b>location of ssh key for ops user from '/'</b></font> - - false - - - ssh_public_key - <font color="black" size=2><b>ops public key</b></font> - - false - - - private_branch - - choice-parameter-193687012897757 - 1 - - false - - - - false - - - KeyRotation - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193687017745852 - 1 - - false - - - - false - - - KeyRotation - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/bootstrap/Jenkinsfile.rotatekey - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/MonitDeploy/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/MonitDeploy/config.xml deleted file mode 100644 index abbec5a206..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/MonitDeploy/config.xml +++ /dev/null @@ -1,138 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-193690420291616 - 1 - - false - - - - false - - - MonitDeploy - OpsAdministration/dev/DataPipeline/MonitDeploy - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193690422104853 - 1 - - false - - - - false - - - MonitDeploy - OpsAdministration/dev/DataPipeline/MonitDeploy - - - ET_FORMATTED_HTML - true - - - tag - - - - all - logstash - secor - yarnmaster - yarnslave - influxdb - cassandra - analytics-api - redis - zookeeper - - - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/kaali09/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/monit/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlBackup/config.xml deleted file mode 100644 index fac30b9363..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlBackup/config.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-193687699799775 - 1 - - false - - - - false - - - PostgresqlBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193687712890752 - 1 - - false - - - - false - - - PostgresqlBackup - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/postgresql-backup/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlRestore/config.xml deleted file mode 100644 index f3bfd06a63..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/PostgresqlRestore/config.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-193688569045596 - 1 - - false - - - - false - - - PostgresqlRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193688572421965 - 1 - - false - - - - false - - - PostgresqlRestore - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/postgresql-restore/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlert/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlert/config.xml deleted file mode 100644 index c4a2791b07..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlert/config.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-2914866095851737 - 1 - - false - - - - false - - - SamzaJobsAlert - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2914866097410763 - 1 - - false - - - - false - - - SamzaJobsAlert - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - */30 * * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.jobalert - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlertProvision/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlertProvision/config.xml deleted file mode 100644 index 89b09c5717..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsAlertProvision/config.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-2914866095851737 - 1 - - false - - - - false - - - SamzaJobsAlertProvision - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2914866097410763 - 1 - - false - - - - false - - - SamzaJobsAlertProvision - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.jobalertprovision - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsKill/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsKill/config.xml deleted file mode 100644 index e77ed5775b..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaJobsKill/config.xml +++ /dev/null @@ -1,146 +0,0 @@ - - - - - false - - - false - false - - - - - private_branch - - choice-parameter-193683662067116 - 1 - - false - - - - false - - - SamzaJobsKill - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193683665760402 - 1 - - false - - - - false - - - SamzaJobsKill - - - ET_FORMATTED_HTML - true - - - jobstrings - <font color=green size=2><b>Choose the job to kill and for multi selection, press ctrl^ and choose</b></font> - - choice-parameter-6571948572697445 - 1 - - false - - - - false - - - SamzaJobsKill - - - PT_MULTI_SELECT - false - 1 - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.killjob - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaLogsBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaLogsBackup/config.xml deleted file mode 100644 index 3dc7f04d88..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaLogsBackup/config.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-2914866095851737 - 1 - - false - - - - false - - - SamzaLogsBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2914866097410763 - 1 - - false - - - - false - - - SamzaLogsBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 15 5 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.logbackup - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaMonitoringProvision/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaMonitoringProvision/config.xml deleted file mode 100644 index 15ad71d1a8..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaMonitoringProvision/config.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.provision - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputAlert/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputAlert/config.xml deleted file mode 100644 index d4d40ccfa9..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/DataPipeline/jobs/SamzaThroughputAlert/config.xml +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-2914866095851737 - 1 - - false - - - - false - - - SamzaThroughputAlert - OpsAdministration/dev/DataPipeline/SamzaThroughputAlert - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-2914866097410763 - 1 - - false - - - - false - - - SamzaThroughputAlert - OpsAdministration/dev/DataPipeline/SamzaThroughputAlert - - - ET_FORMATTED_HTML - true - - - tag - - throughput_monitor - false - - - - - 0 - 0 - - false - project - false - - - - - - H/60 * * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/ops/samza/Jenkinsfile.throughputalert - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Bootstrap/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Bootstrap/config.xml deleted file mode 100644 index 62b910c1ec..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Bootstrap/config.xml +++ /dev/null @@ -1,118 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - false - false - - - - - hosts - <font color=teal size=2>enter the host name to be bootstrapped.</font> - lp - false - - - private_branch - - choice-parameter-193689498769432 - 1 - - false - - - - false - - - Bootstrap - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193689502753641 - 1 - - false - - - - false - - - Bootstrap - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/bootstrap/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraRestore/config.xml deleted file mode 100644 index aa26d8091b..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/CassandraRestore/config.xml +++ /dev/null @@ -1,135 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - remote - <font color=teal size=2>enter the single host name.</font> - cassandra-1 - false - - - backup_file_name - <font color=teal size=2>Specify the backup file name from which you need to restore the data</font> - - false - - - private_branch - - choice-parameter-193691352932058 - 1 - - false - - - - false - - - CassandraRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193691356042243 - 1 - - false - - - - false - - - CassandraRestore - - - ET_FORMATTED_HTML - true - - - keyspace_names - Please provide the keyspace names with comma separated values - -ex: dev_script_store,dev_hierarchy_store - - false - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/restore/cassandra/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/ElasticsearchRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/ElasticsearchRestore/config.xml deleted file mode 100644 index 0372d6d3c5..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/ElasticsearchRestore/config.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - host - <font color=teal size=2>enter any one host name or ip if it is a cluster</font> - - false - - - SNAPSHOT_NUMBER - <font color=teal size=2>Enter Snapshot number to restore. -curl command to get snapshot number: -curl http://localhost:9200/_snapshot/azurebackup/_all, Parse the json and get the valid snapshot number to restore</font> - - false - - - private_branch - - choice-parameter-193693971284924 - 1 - - false - - - - false - - - ElasticsearchRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193693974507874 - 1 - - false - - - - false - - - ElasticsearchRestore - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/elasticsearch-restore/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/KeyRotation/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/KeyRotation/config.xml deleted file mode 100644 index 70003b8d7f..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/KeyRotation/config.xml +++ /dev/null @@ -1,145 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - bootstrap_user - <font color="black" size=2><b>Deployer user</b></font> - deployer - false - - - bootstrap_user_public_key - <font color="black" size=2><b>Deployer user public key keep in single quotes</b></font> - - false - - - ssh_user - <font color="black" size=2><b>ops user</b></font> - ops - false - - - ssh_private_file - <font color="black" size=2><b>location of ssh key for ops user from '/'</b></font> - - false - - - ssh_public_key - <font color="black" size=2><b>ops public key</b></font> - - false - - - private_branch - - choice-parameter-193694766371480 - 1 - - false - - - - false - - - KeyRotation - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193694770443996 - 1 - - false - - - - false - - - KeyRotation - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/bootstrap/Jenkinsfile.rotatekey - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitDeploy/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitDeploy/config.xml deleted file mode 100644 index a8e7cfc7c2..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitDeploy/config.xml +++ /dev/null @@ -1,130 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - hosts - <font color=teal size=2>enter the host name.</font> - - false - - - private_branch - - choice-parameter-193690420291616 - 1 - - false - - - - false - - - MonitDeploy - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193690422104853 - 1 - - false - - - - false - - - MonitDeploy - - - ET_FORMATTED_HTML - true - - - service - - - false - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/monit-deploy/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitStatus/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitStatus/config.xml deleted file mode 100644 index 9bdcb636dd..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/MonitStatus/config.xml +++ /dev/null @@ -1,144 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - remote - <font color=teal size=2>enter the host name.</font> - - false - - - private_branch - - choice-parameter-193690420291616 - 1 - - false - - - - false - - - MonitStatus - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193690422104853 - 1 - - false - - - - false - - - MonitStatus - - - ET_FORMATTED_HTML - true - - - state - - - - started - stopped - - - - - tag - - - - status - start-stop-monit - - - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/deploy/monit-start-stop/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jBackup/config.xml deleted file mode 100644 index 0648e10231..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jBackup/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-193695591871973 - 1 - - false - - - - false - - - Neo4jBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193695594771667 - 1 - - false - - - - false - - - Neo4jBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - H 2 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/neo4j/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jRestore/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jRestore/config.xml deleted file mode 100644 index ea94929067..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jRestore/config.xml +++ /dev/null @@ -1,127 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - neo4j_backup_file_name - - - false - - - hosts - - - false - - - private_branch - - choice-parameter-193696475907326 - 1 - - false - - - - false - - - Neo4jRestore - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193696489739689 - 1 - - false - - - - false - - - Neo4jRestore - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/neo4j-restore/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/RedisBackup/config.xml b/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/RedisBackup/config.xml deleted file mode 100644 index 7bb0fedf92..0000000000 --- a/deploy/jenkins/jobs/OpsAdministration/jobs/dev/jobs/KnowledgePlatform/jobs/RedisBackup/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-193697432119747 - 1 - - false - - - - false - - - RedisBackup - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-193697441891806 - 1 - - false - - - - false - - - RedisBackup - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - H 2 * * * - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/backup/redis-backup/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/config.xml similarity index 99% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/config.xml index ca27afff70..8c8efc0760 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/config.xml @@ -1,6 +1,5 @@ - diff --git a/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/config.xml new file mode 100644 index 0000000000..92618cba96 --- /dev/null +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/config.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + All + false + false + + + + + + + + false + + + + \ No newline at end of file diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/OnboardConsumers/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/Cassandra/config.xml similarity index 88% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/OnboardConsumers/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/Cassandra/config.xml index d1a4d4cfc1..18d91e8fae 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/Core/jobs/OnboardConsumers/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/Cassandra/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -22,7 +22,7 @@ private_branch - choice-parameter-186788940114941 + choice-parameter-196486141556745 1 - false + true - false + true - OnboardConsumers - Deploy/dev/Core/OnboardConsumers + Cassandra + Provision/DockDev/Core/Cassandra ET_FORMATTED_HTML @@ -48,7 +48,7 @@ return """<b>This parameter is not used</b>"&quo branch_or_tag - choice-parameter-186788943531283 + choice-parameter-196486144020383 1 - false + true - false + true - OnboardConsumers - Deploy/dev/Core/OnboardConsumers + Cassandra + Provision/DockDev/Core/Cassandra ET_FORMATTED_HTML @@ -104,12 +104,12 @@ return """<b>This parameter is not used</b>"&quo true false - 1 + 0 false - pipelines/deploy/am-onboard-consumers/Jenkinsfile + pipelines/provision/cassandra/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/keycloak-test/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/Es7/config.xml similarity index 54% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/keycloak-test/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/Es7/config.xml index e335f972dc..ede7836306 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/keycloak-test/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/Es7/config.xml @@ -1,88 +1,91 @@ - - + - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - - choice-parameter-196487835595646 + + choice-parameter-186487879604743 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - keycloak-test + Es7 + Provision/DockDev/Core/Es7 - + ET_FORMATTED_HTML true - + branch_or_tag - - choice-parameter-196487838166797 + + choice-parameter-186487885338467 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true - keycloak-test + Es7 + Provision/DockDev/Core/Es7 - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -100,13 +103,13 @@ return """<b>This parameter is not used</b>"&quo true false - + 1 false - pipelines/provision/keycloak/Jenkinsfile + pipelines/provision/es7/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Keycloak/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/PostgresDbUpdate/config.xml similarity index 87% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Keycloak/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/PostgresDbUpdate/config.xml index 8b32f3a239..bd722638f5 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Keycloak/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/Core/jobs/PostgresDbUpdate/config.xml @@ -7,9 +7,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -22,7 +22,7 @@ private_branch - choice-parameter-196487835595646 + choice-parameter-196490490920280 1 - false + true - false + true - Keycloak - Provision/dev/Core/Keycloak + PostgresDbUpdate + Provision/DockDev/Core/PostgresDbUpdate ET_FORMATTED_HTML @@ -48,7 +48,7 @@ return """<b>This parameter is not used</b>"&quo branch_or_tag - choice-parameter-196487838166797 + choice-parameter-196490493760485 1 - false + true - false + true - Keycloak - Provision/dev/Core/Keycloak + PostgresDbUpdate + Provision/DockDev/Core/PostgresDbUpdate ET_FORMATTED_HTML @@ -104,12 +104,12 @@ return """<b>This parameter is not used</b>"&quo true false - 1 + 0 false - pipelines/provision/keycloak/Jenkinsfile + pipelines/provision/postgres-db-update-managed/Jenkinsfile false diff --git a/deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/config.xml similarity index 100% rename from deploy/jenkins/jobs/ArtifactUpload/jobs/dev/jobs/Core/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/config.xml diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/RedisCluster/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Cassandra/config.xml similarity index 91% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/RedisCluster/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Cassandra/config.xml index d65b185419..46cb0c4fb6 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/RedisCluster/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Cassandra/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -42,11 +42,11 @@ return """<b>This parameter is not used</b>"&quo - false + true - RedisCluster - Provision/dev/DataPipeline/RedisCluster + Cassandra + DockEnv/Provision/dev/KnowledgePlatform/Cassandra ET_FORMATTED_HTML @@ -69,11 +69,11 @@ return """<b>This parameter is not used</b>"&quo - false + true - RedisCluster - Provision/dev/DataPipeline/RedisCluster + Cassandra + DockEnv/Provision/dev/KnowledgePlatform/Cassandra ET_FORMATTED_HTML @@ -99,7 +99,7 @@ return """<b>This parameter is not used</b>"&quo 2 - https://github.com/project-sunbird/sunbird-devops.git + https://github.com/project-sunbird/sunbird-learning-platform.git @@ -119,7 +119,7 @@ return """<b>This parameter is not used</b>"&quo - pipelines/provision/redis-cluster/Jenkinsfile + pipelines/provision/cassandra/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/CompositeSearch/config.xml similarity index 89% rename from deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/CompositeSearch/config.xml index b2b030f664..ad36d7253e 100644 --- a/deploy/jenkins/jobs/Deploy/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4jDefinitionUpdate/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/CompositeSearch/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -29,7 +29,7 @@ private_branch - choice-parameter-188174424977419 + choice-parameter-196502397927441 1 - false + true - false + true - Neo4jDefinitionUpdate - Deploy/dev/KnowledgePlatform/Neo4jDefinitionUpdate + CompositeSearch + Provision/DockDev/KnowledgePlatform/CompositeSearch ET_FORMATTED_HTML @@ -55,7 +55,7 @@ return """<b>This parameter is not used</b>"&quo branch_or_tag - choice-parameter-188174429374717 + choice-parameter-196502408664232 1 - false + true - false + true - Neo4jDefinitionUpdate - Deploy/dev/KnowledgePlatform/Neo4jDefinitionUpdate + CompositeSearch + Provision/DockDev/KnowledgePlatform/CompositeSearch ET_FORMATTED_HTML @@ -119,7 +119,7 @@ return """<b>This parameter is not used</b>"&quo - pipelines/deploy/neo4j-definition-update/Jenkinsfile + pipelines/provision/composite-search/Jenkinsfile false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Kafka/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Kafka/config.xml similarity index 96% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Kafka/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Kafka/config.xml index c13f5f045c..5da23a98bf 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Kafka/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Kafka/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -38,11 +38,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Kafka @@ -64,11 +64,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Kafka diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Learning/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml similarity index 96% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Learning/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml index 9eb3a8c0b7..d1cb8a281d 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Learning/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Learning/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -38,11 +38,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Learning @@ -64,11 +64,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Learning diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml similarity index 61% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml index 5add9187cd..e959b48076 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Neo4j/config.xml @@ -1,99 +1,101 @@ - - + - + hudson.model.ParametersDefinitionProperty com.sonyericsson.rebuild.RebuildSettings - + false -1 - -1 + 10 -1 - 5 + 2 - + false false - + private_branch - + choice-parameter-196504831541165 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Neo4j + Provision/DockDev/KnowledgePlatform/Neo4j - + ET_FORMATTED_HTML true - + branch_or_tag - + choice-parameter-196504838020082 1 - false +return """<b>This parameter is not used</b>""" + true - - - false + + + true Neo4j + Provision/DockDev/KnowledgePlatform/Neo4j - + ET_FORMATTED_HTML true - + 0 0 false project false - + + - - + + 2 @@ -106,12 +108,12 @@ return """<b>This parameter is not used</b>"&quo false - + true false - + 0 false diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Redis/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Redis/config.xml similarity index 96% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Redis/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Redis/config.xml index 8bb0df164d..0a4bb57b00 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Redis/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Redis/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -38,11 +38,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Redis @@ -65,11 +65,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Redis diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/RedisCluster/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/RedisCluster/config.xml similarity index 96% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/RedisCluster/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/RedisCluster/config.xml index b9b5b38d14..474f1ec169 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/RedisCluster/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/RedisCluster/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -38,11 +38,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Redis_Cluster @@ -64,11 +64,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Redis_Cluster diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Zookeeper/config.xml b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Zookeeper/config.xml similarity index 96% rename from deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Zookeeper/config.xml rename to deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Zookeeper/config.xml index 740a853a85..95733ff17b 100644 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Zookeeper/config.xml +++ b/deploy/jenkins/jobs/Provision/jobs/DockDev/jobs/KnowledgePlatform/jobs/Zookeeper/config.xml @@ -14,9 +14,9 @@ -1 - -1 + 10 -1 - 5 + 2 @@ -38,11 +38,11 @@ return """<input name="value" value="${private_ } else return """<b>This parameter is not used</b>""" - false + true - false + true Zookeeper @@ -64,11 +64,11 @@ return """<input name="value" value="" cla } else return """<b>This parameter is not used</b>""" - false + true - false + true Zookeeper diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/config.xml deleted file mode 100644 index 6fe3ca0b64..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/JenkinsSlave/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/JenkinsSlave/config.xml deleted file mode 100644 index 3f3e9b8f3a..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/JenkinsSlave/config.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - - <font color=red size=2><b>This jobs is currently disabled as it's not being used.</b></font> - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - jenkins_host - <font color=dimgray size=2><b>Provide the IP of Jenkins host.</b></font> - - false - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/jenkins-slave/Jenkinsfile - false - - - true - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Kafka/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Kafka/config.xml deleted file mode 100644 index 9d6f8c1e8e..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Kafka/config.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196486974912295 - 1 - - false - - - - false - - - Kafka - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196486977688470 - 1 - - false - - - - false - - - Kafka - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/kafka/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Logstash/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Logstash/config.xml deleted file mode 100644 index 95778c7d70..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Logstash/config.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-1356872058540220 - 1 - - false - - - - false - - - Logstash - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-1356872059801019 - 1 - - false - - - - false - - - Logstash - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/logstash/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdate/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdate/config.xml deleted file mode 100644 index 5ca5d99add..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdate/config.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196490490920280 - 1 - - false - - - - false - - - PostgresDbUpdate - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196490493760485 - 1 - - false - - - - false - - - PostgresDbUpdate - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/postgres-db-update/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdateManaged/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdateManaged/config.xml deleted file mode 100644 index 504dfb72b3..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/PostgresDbUpdateManaged/config.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196490490920280 - 1 - - false - - - - false - - - PostgresDbUpdateManaged - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196490493760485 - 1 - - false - - - - false - - - PostgresDbUpdateManaged - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/postgres-db-update-managed/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Registry/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Registry/config.xml deleted file mode 100644 index 7a4cd19552..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Registry/config.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196491343843987 - 1 - - false - - - - false - - - Registry - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196491346584243 - 1 - - false - - - - false - - - Registry - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/registry/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Secor/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Secor/config.xml deleted file mode 100644 index 102641d9ff..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/Core/jobs/Secor/config.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196492081645652 - 1 - - false - - - - false - - - Secor - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196492094618716 - 1 - - false - - - - false - - - Secor - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/secor/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml deleted file mode 100644 index b09d36dcac..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsAPI/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196492871381509 - 1 - - false - - - - false - - - AnalyticsAPI - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196492874659821 - 1 - - false - - - - false - - - AnalyticsAPI - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/analytics-api/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSecor/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSecor/config.xml deleted file mode 100644 index c20e767a03..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSecor/config.xml +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - false - false - - - - - private_branch - - choice-parameter-196493724128621 - 1 - - false - - - - false - - - AnalyticsSecor - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196493728691761 - 1 - - false - - - - false - - - AnalyticsSecor - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/secor/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSpark/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSpark/config.xml deleted file mode 100644 index 3e78f2bae0..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/AnalyticsSpark/config.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196494527011530 - 1 - - false - - - - false - - - AnalyticsSpark - Provision/dev/DataPipeline/AnalyticsSpark - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196494532752488 - 1 - - false - - - - false - - - AnalyticsSpark - Provision/dev/DataPipeline/AnalyticsSpark - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/spark/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Cassandra/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Cassandra/config.xml deleted file mode 100644 index 3ddc489905..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Cassandra/config.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196495362297824 - 1 - - false - - - - false - - - Cassandra - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196495365827113 - 1 - - false - - - - false - - - Cassandra - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/cassandra/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Druid/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Druid/config.xml deleted file mode 100644 index 7d0c034d93..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Druid/config.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/druid/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/InfluxDB/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/InfluxDB/config.xml deleted file mode 100644 index e0d7d7981f..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/InfluxDB/config.xml +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - false - false - - - - - private_branch - - choice-parameter-196496186070999 - 1 - - false - - - - false - - - InfluxDB - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196496195598788 - 1 - - false - - - - false - - - InfluxDB - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/influxdb/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kafka/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kafka/config.xml deleted file mode 100644 index fb292a9750..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kafka/config.xml +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196496946659342 - 1 - - false - - - - false - - - Kafka - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196496948791638 - 1 - - false - - - - false - - - Kafka - - - ET_FORMATTED_HTML - true - - - remote - - processing-cluster-kafka - false - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/kafka/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kibana/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kibana/config.xml deleted file mode 100644 index cac92eae53..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Kibana/config.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196497749695581 - 1 - - false - - - - false - - - Kibana - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196497753237991 - 1 - - false - - - - false - - - Kibana - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/kibana/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/MLWorkbench/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/MLWorkbench/config.xml deleted file mode 100644 index 86592f868a..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/MLWorkbench/config.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-devops.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - true - false - - 0 - false - - - - pipelines/provision/ml-workbench/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/NodeJs/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/NodeJs/config.xml deleted file mode 100644 index 9fa3048882..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/NodeJs/config.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196492871381509 - 1 - - false - - - - false - - - NodeJs - Provision/dev/DataPipeline/NodeJs - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196492874659821 - 1 - - false - - - - false - - - NodeJs - Provision/dev/DataPipeline/NodeJs - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/analytics-api/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Postgres/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Postgres/config.xml deleted file mode 100644 index bfed6405d9..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Postgres/config.xml +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - false - false - - - - - private_branch - - choice-parameter-196498570819230 - 1 - - false - - - - false - - - Postgres - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196498577913500 - 1 - - false - - - - false - - - Postgres - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/postgres-lpa/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/TelemetrySearch/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/TelemetrySearch/config.xml deleted file mode 100644 index d8fa81c34f..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/TelemetrySearch/config.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196499327272611 - 1 - - false - - - - false - - - TelemetrySearch - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196499346601896 - 1 - - false - - - - false - - - TelemetrySearch - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/telemetry-elasticsearch/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml deleted file mode 100644 index f1baf8e9db..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Yarn/config.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196500122471866 - 1 - - true - - - - false - - - Yarn - Provision/dev/DataPipeline/Yarn - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196500128714203 - 1 - - true - - - - true - - - Yarn - Provision/dev/DataPipeline/Yarn - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/yarn/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Zookeeper/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Zookeeper/config.xml deleted file mode 100644 index 8e02e9159d..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/Zookeeper/config.xml +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - false - false - - - - - private_branch - - choice-parameter-196500899115571 - 1 - - false - - - - false - - - Zookeeper - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196500913815161 - 1 - - false - - - - false - - - Zookeeper - - - ET_FORMATTED_HTML - true - - - remote - - processing-cluster-zookeepers - false - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/zookeeper/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/postgres-managed/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/postgres-managed/config.xml deleted file mode 100644 index 1a2bcd6580..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/DataPipeline/jobs/postgres-managed/config.xml +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - false - false - - - - - private_branch - - choice-parameter-196498570819230 - 1 - - false - - - - false - - - postgres-managed - Provision/dev/DataPipeline/postgres-managed - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196498577913500 - 1 - - false - - - - false - - - postgres-managed - Provision/dev/DataPipeline/postgres-managed - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-data-pipeline.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/postgres-managed/Jenkinsfile - false - - - false - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/config.xml deleted file mode 100644 index ca27afff70..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/config.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - All - false - false - - - - - - - - false - - - - \ No newline at end of file diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Cassandra/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Cassandra/config.xml deleted file mode 100644 index dbf93f6595..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Cassandra/config.xml +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196501654566824 - 1 - - false - - - - false - - - Cassandra - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196501660936815 - 1 - - false - - - - false - - - Cassandra - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/cassandra/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml deleted file mode 100644 index 1865d82b1a..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Search/config.xml +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196506358953190 - 1 - - false - - - - false - - - Search - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196506370617817 - 1 - - false - - - - false - - - Search - - - ET_FORMATTED_HTML - true - - - - - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/search/Jenkinsfile - false - - - false - diff --git a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml b/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml deleted file mode 100644 index acdf2ac7f1..0000000000 --- a/deploy/jenkins/jobs/Provision/jobs/dev/jobs/KnowledgePlatform/jobs/Yarn/config.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - hudson.model.ParametersDefinitionProperty - com.sonyericsson.rebuild.RebuildSettings - - - - - false - - - - -1 - -1 - -1 - 5 - - - - - false - false - - - - - private_branch - - choice-parameter-196507093304506 - 1 - - false - - - - false - - - Yarn - - - ET_FORMATTED_HTML - true - - - branch_or_tag - - choice-parameter-196507098492671 - 1 - - false - - - - false - - - Yarn - - - ET_FORMATTED_HTML - true - - - - - 0 - 0 - - false - project - false - - - - - - - - - 2 - - - https://github.com/project-sunbird/sunbird-learning-platform.git - - - - - ${branch_or_tag} - - - false - - - - true - false - - 0 - false - - - - pipelines/provision/yarn/Jenkinsfile - false - - - false - diff --git a/private_repo/ansible/inventory/DockDev/Core/common.yml b/private_repo/ansible/inventory/DockDev/Core/common.yml new file mode 100644 index 0000000000..bd41f2db05 --- /dev/null +++ b/private_repo/ansible/inventory/DockDev/Core/common.yml @@ -0,0 +1,280 @@ +env: dev #Name of the environment, e.g. dev, staging or production. +domain_name: #Domain on which the portal will be accessed. e.g. staging.{implementation-name}.org +proto: https # Protocol + +sunbird_domain_name: #Sunbirded domain name + +ekstep_s3_env: qa # dev or qa of ekstep for plugins +learningservice_ip: # Load balancer IP for learning server +keycloak_url: # KSunbirdED eycloak Load balancer IP; eg http://10.10.10.10 + + +# Sunbird Application name and framework name +sunbird_default_channel: # Organization channel name which portal will connect to +sunbird_app_name: # By default app name will be sunbird + +#### artifact upload +artifacts_container: 'artifacts' # blob container name to save built artifacts + + +#sunbird_cassandra_replication_strategy: '{"class":"NetworkTopologyStrategy","datacenter1":2}' # If using cluster give this value and choose datacenter and replication factor as required '{"class":"NetworkTopologyStrategy","datacenter1":2}' if not using cluster give this value '{"class":"SimpleStrategy","replication_factor":1}' + +##################################################################################################### +monitor_alerts_mail_from_email: # From Address for alert mails +sunbird_msg_sender: +sunbird_android_app_url: "" # Playstore url of android app; default is subird.org + +plugin_container_name: + +keycloak_auth_server_url: "https://{{sunbird_domain_name}}/auth" + +kong_postgres_host: "{{ dock_postgres_host }}" +sunbird_instance: dock +sunbird_telemetry_kafka_topic: sunbirddock.telemetry.ingestion +sunbird_data_pipeline_kafka_topic: sunbirddock.telemetry.ingest +sunbird_url_shortner_enable: true +sunbird_qrimage_topic: sunbirddock.qrimage.request +sunbird_linked_content_base_url: "{{ proto }}://{{ domain_name }}/play/content/" + +kong_all_consumer_groups: + - announcementAccess + - appAccess + - appAdmin + - appUpdate + - badgeAccess + - badgeAdmin + - badgeCreate + - badgeUpdate + - certificateAccess + - certificateAdmin + - certificateCreate + - certificateUpdate + - channelAccess + - channelCreate + - channelUpdate + - contentAccess + - contentAdmin + - contentCreate + - contentUpdate + - courseAccess + - courseAdmin + - courseCreate + - courseUpdate + - deviceCreate + - dialcodeAccess + - dialcodeAdmin + - dialcodeCreate + - dialcodeUpdate + - frameworkAccess + - locationAccess + - nominationAccess + - nominationAdmin + - nominationCreate + - nominationUpdate + - noteAccess + - noteAdmin + - noteCreate + - noteUpdate + - objectAccess + - orgAccess + - orgCreate + - pageAccess + - pluginAccess + - preferenceAccess + - preferenceCreate + - preferenceUpdate + - programAccess + - programAdmin + - programCreate + - programTenantList + - programUpdate + - registryAccess + - registryAdmin + - registryCreate + - registryUpdate + - reportsAccess + - reportsAdmin + - reportsCreate + - reportsUpdate + - ssoCreate + - userAccess + - userAdmin + - userCreate + - userTempAdmin + - userUpdate + - refreshTokenCreate + - anonymousContentAccess + - anonymousUserCreate + - anonymousUserAccess + - anonymousAppAccess + + +# Consumers to be on-boarded +kong_consumers: + - username: api-management-test-user + groups: "{{ kong_all_consumer_groups }}" + print_credentials: true + state: present + rate_limits: "{{ premium_consumer_rate_limits }}" + - username: api-management-test-user + groups: "{{ kong_all_consumer_groups }}" + print_credentials: true + state: present + rate_limits: "{{ premium_consumer_rate_limits }}" + +kong_postgres_database: + +sunbird_dial_repo_api_base_url: "https://qa.ekstep.in/api" + +## keycloak +keycloak_postgres_database: keycloak_3017 # keycloak version 7, the migration will append 7 to the existing KC3 DB in the name - EXISTING_KC3_DB_NAME7 +## player +#desktop_app_storage_url: "https://sunbirdofflineinstaller.blob.core.windows.net/dev-offlineinstaller" +environment_id: 10000000 +graph_passport_key: "{{core_vault_graph_passport_key}}" + +## KP configuration ## +azure_public_container: +cassandra_keyspace_prefix: dock + + +#Kubernetes variables +namespace: dock +imagepullsecrets: +dockerhub: +kubeconfig_path: +sunbird_portal_player_cdn_enabled: false +private_ingressgateway_ip: +nginx_public_ingress_ip: +storage_class_name: "managed-premium" +keycloak_lb_ip: +cloud_storage_url: +sunbird_lms_base_url: "http://{{private_ingressgateway_ip}}/api" ### keycloak env variable +private_ingress_custom_annotations: true + +sunbird_sso_client_id: "lms" +apimanager_liveness_readiness: + healthcheck: false + + + +######### dock variables ######### +schemas_container_name: content-service +kp_schema_base_path: +player_repository: creation-player +dock_api_auth_token: "{{ core_vault_dock_api_auth_token }}" +sunbird_learner_player_url: +sunbird_program_base_url: +enc_n_keys: 50 # Total number of keys required for encryption +enc_n_reserved_keys: 15 # Number of keys which app reserves for usage +sunbird_kp_content_service_base_url: http://content-service:9000/ +sunbird_kp_assessment_service_base_url: http://assessment-service:9000/ +sunbird_kp_learning_service_base_url: http://{{ learningservice_ip }}:8080/learning-service/ +dock_base_url: "https://{{domain_name}}" +dock_channel: + +core_vault_postgres_username: +dock_postgres_host: +dock_postgres_user: "{{ core_vault_dock_postgres_user }}" +dock_postgres_password: "{{ core_vault_dock_postgres_password }}" + +programs_service_postgres_host: "{{ dock_postgres_host }}" +programs_service_postgres_username: "{{ dock_postgres_user }}" +programs_service_postgres_password: "{{ dock_postgres_password }}" +programs_postgres_db: sunbird_programs +sunbird_opensaber_service_url: "http://opensaber-service:8080" +dock_api_call_log_status: false +opensaber_search_limit: 1000 +opensaber_db_pool_size: 250 +sunbird_portal_url: https://{{sunbird_domain_name}}/api/ +sunbird_auto_creation_topic: sunbirddev.auto.creation.job.request +sunbird_program_db_pool: 100 + +sunbird_opensaber_service_url: "http://opensaber-service:8080" +postgresql_users: + - name: "{{kong_postgres_user}}" + login_host: "{{kong_postgres_host}}" + login_password: "{{kong_postgres_password}}" + password: "{{kong_postgres_password}}" + db: "{{kong_postgres_database}}" + login_user: "{{kong_postgres_user}}" + priv: "ALL" + - name: "{{programs_service_postgres_username}}" + login_host: "{{programs_service_postgres_host}}" + login_password: "{{programs_service_postgres_password}}" + password: "{{ programs_service_postgres_password }}" # encrypted password + db: "{{programs_postgres_db}}" + login_user: "{{programs_service_postgres_username}}" + priv: "ALL" + + +postgresql_databases: + - name: "{{programs_postgres_db}}" + login_host: "{{programs_service_postgres_host}}" + login_password: "{{programs_service_postgres_password}}" + owner: "{{programs_service_postgres_username}}" + login_user: "{{programs_service_postgres_username}}" + - name: "{{ kong_postgres_database }}" + login_host: "{{ kong_postgres_host }}" + login_password: "{{ kong_postgres_password }}" + owner: "{{ kong_postgres_user }}" + login_user: "{{ kong_postgres_user }}" + + +sunbird_content_url: + +sunbird_search_service_api_base_url: "http://{{private_ingressgateway_ip}}/search" + +sunbird_learner_url: +portal_cloud_storage_url: "https://{{cloud_public_storage_accountname}}/content-service/" + +# Postgresql Migraion +postgresql_migration_user: "{{ core_vault_dock_postgres_user }}" +postgresql_migration_endpoint: "{{ dock_postgres_host }}" +postgresql_migration_password: "{{ core_vault_dock_postgres_password }}" + +master_category_validation_enabled: no + +core_private_ingressgateway_ip: #private ingress IP of sunbirded + + +# Postgres upgrade missing vars +dp_postgres_host: "{{ dock_postgres_host }}" +dp_postgres_username: "{{ core_vault_postgres_username }}" + +av_kafka_topic_create: true + +# CSP vars +cloud_service_provider: + +cloud_public_storage_accountname: "" +cloud_public_storage_endpoint: "" +cloud_public_storage_region: "" +cloud_public_storage_project: "" + +cloud_private_storage_accountname: "" +cloud_private_storage_endpoint: "" +cloud_private_storage_region: "" +cloud_private_storage_project: "" + +cloud_management_storage_accountname: "" +cloud_management_storage_endpoint: "" +cloud_management_storage_region: "" +cloud_management_storage_project: "" + +cloud_artifact_storage_accountname: "" +cloud_artifact_storage_endpoint: "" +cloud_artifact_storage_region: "" +cloud_artifact_storage_project: "" + +cloud_storage_publicreports_bucketname: "reports" +cloud_storage_privatereports_bucketname: "reports" +cloud_storage_telemetry_bucketname: "telemetry-data-store" +cloud_storage_schemas_bucketname: "content-service" +cloud_storage_flink_bucketname: "flink-check-points-store" +cloud_storage_plugin_bucketname: "sunbird-content-dock" +cloud_storage_cassandrabackup_bucketname: "cassandra-backup" +cloud_storage_esbackup_bucketname: "elasticsearch-snapshots" +cloud_storage_neo4jbackup_bucketname: "neo4j-backup" +cloud_storage_redisbackup_bucketname: "redis-backup" +cloud_storage_artifacts_bucketname: "{{ artifacts_container }}" diff --git a/private_repo/ansible/inventory/DockDev/Core/hosts b/private_repo/ansible/inventory/DockDev/Core/hosts new file mode 100644 index 0000000000..8745593ff4 --- /dev/null +++ b/private_repo/ansible/inventory/DockDev/Core/hosts @@ -0,0 +1,93 @@ +[lp-cassandra] +15.2.1.4 +15.2.1.5 +15.2.1.6 + +[learning-neo4j-node1] +15.2.1.9 + +[redis1] +15.2.3.4 + +[composite-search-cluster] +15.2.1.8 + +[es-1] +15.2.1.8 es_instance_name=es-1 es_etc_node_master=true es_etc_node_data=true + +[es7] +15.2.1.10 es_instance_name=es7 es_etc_node_master=true es_etc_node_data=true + +[es-backup:children] +es-1 + +[es:children] +es-1 + +[mlworkbench] +15.2.3.13 + +[cassandra-1] +15.2.1.4 + +[cassandra-2] +15.2.1.5 + +[cassandra-3] +15.2.1.6 + +[cassandra:children] +cassandra-1 +cassandra-2 +cassandra-3 + +[kafka-1] +15.2.1.7 + +[sunbird-processing-cluster-kafka] +11.2.3.9 ansible_ssh_port=2200 + +[processing-cluster-kafka] +15.2.1.7 + +[processing-cluster-zookeepers] +15.2.1.7 + +[zookeeper:children] +processing-cluster-zookeepers + + +[kafka:children] +kafka-1 + +[local] +localhost ansible_connection=local + +[kong-api] +localhost + + +[core:children] +es +cassandra +es7 +processing-cluster-kafka +local + + +############################################################################################ + +[env:children] +kafka +core +cassandra +processing-cluster-kafka + +[all:vars] +cluster_name=DC1 +ansible_ssh_user=deployer +ansible_ssh_private_key_file=/var/lib/jenkins/secrets/deployer_ssh_key +monitor_stateful=1 + + + diff --git a/private_repo/ansible/inventory/DockDev/Core/secrets.yml b/private_repo/ansible/inventory/DockDev/Core/secrets.yml new file mode 100644 index 0000000000..8201e9905f --- /dev/null +++ b/private_repo/ansible/inventory/DockDev/Core/secrets.yml @@ -0,0 +1,74 @@ +core_vault_sunbird_ekstep_api_key: +core_vault_sunbird_encryption_key: + +core_vault_postgres_password: +core_vault_graph_passport_key: +core_vault_sunbird_azure_storage_key: +core_vault_docker_registry_url: # use this value if using dockerhub +core_vault_docker_registry_user: +core_vault_docker_registry_password: +core_vault_artifact_azure_account_key: + +core_vault_proxy_site_key: |+ + +core_vault_proxy_site_crt: |+ + + +core_vault_sunbird_fcm_account_key: +core_vault_keycloak_api_management_user_password: +core_vault_keystore_password: cassandra #Password to use for encrypting cassandra keystore. Use a strong password. +core_vault_truststore_password: cassandra # Password for cassandra trust store +vault_core_url_shortner_access_token: "" # Url shortner access token for learning-service; only if url_shortner enabled + + +# Portal one google sso +core_vault_sunbird_google_oauth_clientId_portal: +core_vault_sunbird_google_oauth_clientSecret_portal: +core_vault_sunbird_google_captcha_site_key_portal: +core_vault_sunbird_google_keycloak_secret: + +# Oauth for logger kibana +core_vault_kibana_google_client_id: +core_vault_kibana_google_client_secret: +# Delete this once we move all in to Kubernetes +core_vault_kibana_cookie_secret: + +### db backup secrets +core_vault_backup_azure_storage_secret: +core_vault_sunbird_analytics_blob_account_key: + +sunbird_dial_repo_api_key: +core_vault_graph_passport_key: + + +#Kubernetes variables +core_vault_kibana_cookie_secret: # Cookie secret for kibana Oauth + +google_captcha_private_key: + +##### chatbot variable ###### +sunbird_api_auth_token_bot: + + +core_vault_dock_postgres_user: "{{ core_vault_postgres_username }}" +core_vault_dock_postgres_password: "{{ core_vault_postgres_password }}" + +sunbird_api_auth_token_bot: +auto_creator_gdrive_api_key: + +# Content Service Google Drive Key# +learning_content_drive_apiKey: + +auto_creator_gservice_acct_cred: + +sunbird_google_oauth_client_email: +sunbird_google_oauth_private_key: + +# Postgres upgrade missing vars +dp_postgres_password: "{{ core_vault_postgres_password }}" + +# CSP vars +cloud_public_storage_secret: +cloud_private_storage_secret: +cloud_management_storage_secret: +cloud_artifact_storage_secret: diff --git a/private_repo/ansible/inventory/DockDev/KnowledgePlatform/common.yml b/private_repo/ansible/inventory/DockDev/KnowledgePlatform/common.yml new file mode 100644 index 0000000000..d4d59788d2 --- /dev/null +++ b/private_repo/ansible/inventory/DockDev/KnowledgePlatform/common.yml @@ -0,0 +1,312 @@ + +env: +env_name: "{{ env }}" +cloud_storage_config_environment: "{{env}}" + +proto: +domain_name: +ekstep_domain_name: "https://qa.ekstep.in" + +sunbird_public_storage_account_name: +azure_public_container: +azure_account_name: +learnings: + paths: ['/data', '/data/graphDB', '/data/logs', '/data/contentBundle', '/data/properties', '/home/learning/tmp', '/home/learning/platform'] + service_config: ['consumer-config.xml'] + + +# This variable should change value per env +# eg: dev 1xx; staging 2xxx +environment_id: + +########### jenkinspipeline upload artifact ############ +artifacts_container: artifacts +lp_artifact_azure_account_name: +artifact_azure_account_name: + +neo4j_zip: neo4j-community-3.3.9-unix.tar.gz # Neo4j file name present in the azure blob artifacts folder (only neo4j 3.4 and below is supported) +neo4j_home: "{{learner_user_home}}/{{neo4j_dir}}/neo4j-community-3.3.9" # update the version number here of the neo4j +neo4j_enterprise: false + + +sunbird_installation: "Sunbird_Dev" +## kubernetes variables ### overriding swarm manager lb ip to private ingress ip ### +private_ingressgateway_ip: +learner_service_base_url: "http://{{private_ingressgateway_ip}}/learner" ## lp samza jobs +cert_service_base_url: "http://{{private_ingressgateway_ip}}/cert" ### lp samza jobs +kp_content_service_base_url: "http://{{private_ingressgateway_ip}}/content" +cert_reg_service_base_url: "http://{{private_ingressgateway_ip}}/certreg" +kp_print_service_base_url: "http://{{private_ingressgateway_ip}}/print" +kp_search_service_base_url: "http://{{private_ingressgateway_ip}}/search" + +processing_kafka_topics: + - name: telemetry.raw + num_of_partitions: 4 + replication_factor: 1 + - name: telemetry.valid + num_of_partitions: 4 + replication_factor: 1 + - name: telemetry.unique + num_of_partitions: 8 + replication_factor: 1 + - name: telemetry.duplicate + num_of_partitions: 1 + replication_factor: 1 + - name: telemetry.sink + num_of_partitions: 8 + replication_factor: 1 + - name: telemetry.with_location + num_of_partitions: 8 + replication_factor: 1 + - name: telemetry.de_normalized + num_of_partitions: 4 + replication_factor: 1 + - name: telemetry.log + num_of_partitions: 1 + replication_factor: 1 + - name: analytics.job_queue + num_of_partitions: 1 + replication_factor: 1 + - name: learning.graph.events + num_of_partitions: 1 + replication_factor: 1 + - name: pipeline_metrics + num_of_partitions: 1 + replication_factor: 1 + - name: metrics + num_of_partitions: 1 + replication_factor: 1 + - name: learning.graph.events.fail + num_of_partitions: 1 + replication_factor: 1 + - name: analytics_metrics + num_of_partitions: 1 + replication_factor: 1 + - name: learning.job.request + num_of_partitions: 1 + replication_factor: 1 + - name: learning.job.request.fail + num_of_partitions: 1 + replication_factor: 1 + - name: learning.republish.job.request + num_of_partitions: 1 + replication_factor: 1 + - name: telemetry.derived + num_of_partitions: 1 + replication_factor: 1 + - name: telemetry.failed + num_of_partitions: 1 + replication_factor: 1 + - name: telemetry.malformed + num_of_partitions: 1 + replication_factor: 1 + - name: telemetry.extractor.failed + num_of_partitions: 1 + replication_factor: 1 + - name: telemetry.indexer.failed + num_of_partitions: 1 + replication_factor: 1 + - name: coursebatch.job.request + num_of_partitions: 1 + replication_factor: 1 + - name: content.postpublish.request + num_of_partitions: 1 + replication_factor: 1 + - name: coursebatch.certificate.request + num_of_partitions: 1 + replication_factor: 1 + - name: system.command + num_of_partitions: 1 + replication_factor: 1 + - name: learning.events.failed + num_of_partitions: 1 + replication_factor: 1 + - name: auto.creation.job.request + num_of_partitions: 1 + replication_factor: 1 + - name: auto.creation.job.request.failed + num_of_partitions: 1 + replication_factor: 1 + - name: contentstate.invalid + num_of_partitions: 1 + replication_factor: 1 + - name: db.query.events + num_of_partitions: 1 + replication_factor: 1 + - name: mvc.events.failed + num_of_partitions: 1 + replication_factor: 1 + - name: mvc.processor.job.request + num_of_partitions: 1 + replication_factor: 1 + - name: auto.creation.job.failedevent + num_of_partitions: 1 + replication_factor: 1 + - name: assessment.publish.request + num_of_partitions: 1 + replication_factor: 1 + - name: publish.job.request + num_of_partitions: 1 + replication_factor: 1 + + +processing_kafka_overriden_topics: + - name: telemetry.raw + retention_time: 604800000 + replication_factor: 1 + - name: telemetry.valid + retention_time: 604800000 + replication_factor: 1 + - name: telemetry.unique + retention_time: 604800000 + replication_factor: 1 + - name: telemetry.duplicate + retention_time: 86400000 + replication_factor: 1 + - name: telemetry.sink + retention_time: 259200000 + replication_factor: 1 + - name: telemetry.with_location + retention_time: 86400000 + replication_factor: 1 + - name: telemetry.de_normalized + retention_time: 86400000 + replication_factor: 1 + - name: telemetry.log + retention_time: 86400000 + replication_factor: 1 + - name: analytics.job_queue + retention_time: 86400000 + replication_factor: 1 + - name: learning.graph.events + retention_time: 1209600000 + replication_factor: 1 + - name: pipeline_metrics + retention_time: 259200000 + replication_factor: 1 + - name: metrics + retention_time: 604800000 + replication_factor: 1 + - name: learning.graph.events.fail + retention_time: 1209600000 + replication_factor: 1 + - name: analytics_metrics + retention_time: 86400000 + replication_factor: 1 + - name: learning.job.request + retention_time: 1209600000 + replication_factor: 1 + - name: learning.job.request.fail + retention_time: 1296000000 + replication_factor: 1 + - name: telemetry.derived + retention_time: 259200000 + replication_factor: 1 + - name: assessment.publish.request + retention_time: 1209600000 + replication_factor: 1 + - name: publish.job.request + retention_time: 1209600000 + replication_factor: 1 + # Error/Failed Topics + - name: telemetry.failed + retention_time: 604800000 + replication_factor: 1 + - name: telemetry.malformed + retention_time: 604800000 + replication_factor: 1 + - name: telemetry.extractor.failed + retention_time: 604800000 + replication_factor: 1 + - name: telemetry.indexer.failed + retention_time: 604800000 + replication_factor: 1 + - name: coursebatch.job.request + retention_time: 1209600000 + replication_factor: 1 + - name: content.postpublish.request + retention_time: 1209600000 + replication_factor: 1 + - name: coursebatch.certificate.request + retention_time: 1209600000 + replication_factor: 1 + - name: learning.events.failed + retention_time: 604800000 + replication_factor: 1 + - name: auto.creation.job.request + retention_time: 1209600000 + replication_factor: 1 + - name: auto.creation.job.request.failed + retention_time: 1296000000 + replication_factor: 1 + - name: contentstate.invalid + retention_time: 604800000 + replication_factor: 1 + - name: db.query.events + retention_time: 604800000 + replication_factor: 1 + - name: mvc.events.failed + retention_time: 1209600000 + replication_factor: 1 + - name: mvc.processor.job.request + retention_time: 1209600000 + replication_factor: 1 + - name: auto.creation.job.failedevent + retention_time: 1209600000 + replication_factor: 1 + +### Flink Jobs vars +kubeconfig_path: +dockerhub: +docker_registry: + +kp_schema_base_path: +master_category_validation_enabled: no + +content_stream_enabled: false + +plugin_media_base_url: "https://{{domain_name}}" + +# Uncomment the variable based on your cloud provider (as a default we have kept Azure variable uncommented) +# GCP +# cloud_storage_url: https://storage.cloud.google.com/{{ gcloud_public_bucket_name }} +# AWS +# cloud_storage_url: # aws storage url to be updated +# Azure +#cloud_storage_url: "https://{{ sunbird_public_storage_account_name }}.blob.core.windows.net" + + +# CSP vars +cloud_service_provider: azure + +cloud_public_storage_accountname: "" +cloud_public_storage_endpoint: "" +cloud_public_storage_region: "" +cloud_public_storage_project: "" + +cloud_private_storage_accountname: "" +cloud_private_storage_endpoint: "" +cloud_private_storage_region: "" +cloud_private_storage_project: "" + +cloud_management_storage_accountname: "" +cloud_management_storage_endpoint: "" +cloud_management_storage_region: "" +cloud_management_storage_project: "" + +cloud_artifact_storage_accountname: "" +cloud_artifact_storage_endpoint: "" +cloud_artifact_storage_region: "" +cloud_artifact_storage_project: "" + +cloud_storage_publicreports_bucketname: "reports" +cloud_storage_privatereports_bucketname: "reports" +cloud_storage_telemetry_bucketname: "telemetry-data-store" +cloud_storage_schemas_bucketname: "content-service" +cloud_storage_flink_bucketname: "flink-check-points-store" +cloud_storage_plugin_bucketname: "" +cloud_storage_cassandrabackup_bucketname: "cassandra-backup" +cloud_storage_esbackup_bucketname: "elasticsearch-snapshots" +cloud_storage_neo4jbackup_bucketname: "neo4j-backup" +cloud_storage_redisbackup_bucketname: "redis-backup" +cloud_storage_artifacts_bucketname: "{{ artifacts_container }}" diff --git a/private_repo/ansible/inventory/dev/KnowledgePlatform/hosts b/private_repo/ansible/inventory/DockDev/KnowledgePlatform/hosts similarity index 51% rename from private_repo/ansible/inventory/dev/KnowledgePlatform/hosts rename to private_repo/ansible/inventory/DockDev/KnowledgePlatform/hosts index 0fc235f90c..909e534b12 100644 --- a/private_repo/ansible/inventory/dev/KnowledgePlatform/hosts +++ b/private_repo/ansible/inventory/DockDev/KnowledgePlatform/hosts @@ -1,28 +1,29 @@ ######################## LP ######################## [learning1] -15.0.3.11 - -[swarm-bootstrap-manager] -15.0.1.4 +15.2.3.4 [learningall:children] learning1 [search1] -15.0.3.5 +15.2.3.5 [searchall:children] search1 [redis1] -15.0.3.11 +15.2.3.4 [redisall:children] redis1 +[dp-redis:children] # added this var for dummy host as ansible is script failing. +redis1 + [learning-neo4j-node1] -15.0.2.9 +15.2.1.9 + # Enable following host, if you're have neo4j cluster and an arbiter for election # [arbiter] @@ -31,43 +32,52 @@ redis1 [learning-neo4j-cluster:children] learning-neo4j-node1 -[cassandra-node-1] # The old cassandra group has been renamed to cassandra-node-* to accomadate for clusters -15.0.2.7 +[core-es-1] +15.2.1.8 + +[core-es:children] +core-es-1 + +[cassandra-node-1] +15.2.1.4 + +[cassandra-node-2] +15.2.1.5 + +[cassandra-node-3] +15.2.1.6 [cassandra:children] cassandra-node-1 +cassandra-node-2 +cassandra-node-3 [dp-cassandra] -15.0.2.7 +11.2.3.59 -[core-cassandra] -15.0.2.5 +[core-cassandra-1] +15.2.1.4 -[core-es-1] -18.0.0.9 # This should be elasticsearch master IP of Core +[core-cassandra-2] +15.2.1.5 -[core-es:children] -core-es-1 - -[composite-search-cluster] -15.0.2.6 +[core-cassandra-3] +15.2.1.6 -[yarn-master] -15.0.3.10 +[core-cassandra:children] +core-cassandra-1 +core-cassandra-2 +core-cassandra-3 -[yarn-slave] -15.0.3.10 #yarn master -15.0.3.13 +[composite-search-cluster] +15.2.1.8 -[yarn:children] -yarn-master -yarn-slave [processing-cluster-kafka] -15.0.3.14 +15.2.1.7 [processing-cluster-zookeepers] -15.0.3.14 +15.2.1.7 [zookeeper:children] processing-cluster-zookeepers @@ -75,41 +85,26 @@ processing-cluster-zookeepers [local] localhost ansible_connection=local + [lp:children] learningall searchall learning-neo4j-cluster cassandra redisall -yarn composite-search-cluster processing-cluster-kafka zookeeper local +core-es + [env:children] lp -swarm-bootstrap-manager [env:vars] -ansible_ssh_user=deployer +ansible_ssh_user="deployer" ansible_ssh_private_key_file=/var/lib/jenkins/secrets/deployer_ssh_key -####################### Monitoring ######################## -[logstash-ps] -15.0.3.11 - -[process-exporter:children] -logstash-ps -cassandra-ps -[cassandra-ps] -15.0.2.7 -[process-exporter:vars] -ansible_ssh_user=deployer -ansible_ssh_private_key_file=/var/lib/jenkins/secrets/deployer_ssh_key - -[all:vars] -ansible_ssh_user=deployer -ansible_ssh_private_key_file=/var/lib/jenkins/secrets/deployer_ssh_key diff --git a/private_repo/ansible/inventory/DockDev/KnowledgePlatform/secrets.yml b/private_repo/ansible/inventory/DockDev/KnowledgePlatform/secrets.yml new file mode 100644 index 0000000000..906d5698d1 --- /dev/null +++ b/private_repo/ansible/inventory/DockDev/KnowledgePlatform/secrets.yml @@ -0,0 +1,26 @@ +############## Admin ###################### +core_vault_docker_registry_url: "" +core_vault_docker_registry_user: +core_vault_docker_registry_password: + +############## LP ###################### +lp_vault_azure_storage_secret: +sunbird_public_storage_account_key: +lp_vault_graph_passport_key: # can be any random string; to check integrity of content submitted for reviewal +lp_vault_youtube_api_key: +lp_vault_dial_service_authorization: +lp_vault_backup_azure_storage_secret: +lp_vault_artifact_azure_account_key: + + +### Google drive key ### +auto_creator_gdrive_api_key: + +auto_creator_gservice_acct_cred: + +# CSP vars +cloud_public_storage_secret: +cloud_private_storage_secret: +cloud_management_storage_secret: +cloud_artifact_storage_secret: + diff --git a/private_repo/ansible/inventory/dev/Core/common.yml b/private_repo/ansible/inventory/dev/Core/common.yml deleted file mode 100644 index 3bcd128237..0000000000 --- a/private_repo/ansible/inventory/dev/Core/common.yml +++ /dev/null @@ -1,160 +0,0 @@ -############## Release-1.14.0 ################## - -env: #Name of the environment, e.g. dev, staging or production. -env_name: "{{ env }}" -domain_name: #Domain on which the portal will be accessed. e.g. staging.{implementation-name}.org -proto: # Protocol - -# External service ips -# should be accessible from core containers -learningservice_ip: # Load balancer IP for learning server -searchservice_ip: # search service Load balancer IP -analyticsapi_ip: # Analytics Service Load Balancer IP -keycloak_url: "" # Keycloak Load balancer IP; eg http://10.10.10.10 -sunbird_swarm_manager_lb_ip: # Swarm manager load balancer private IP. If you don't have a load swarm manager load balancer, you can use swarm manager private ip. - -# Sunbird Application name and framework name -sunbird_default_channel: # Organization channel name which portal will connect to -sunbird_app_name: # By default app name will be sunbird - -# Cloud Account details -sunbird_content_azure_storage_container: # Conatainer store assets/public -## Blob where data analytics pushing content -## Check same variable in DP common.yml -artifacts_container: '' # Azure blob container name to save built artifacts - -## Mail config -mail_server_host: -mail_server_username: "" -alerts_mailing_list : "" # Comma separated mail list for Alerts; eg: user1@mail.com, user2@mail.com -sunbird_mail_server_from_email: # Email ID that should be as from address in mails -sunbird_env_logo_url: # put public url for logo, this logo url will be used in email sending. - -########################### Release-2.9.0 variables ####################################### -# public storage account with content conatiner. -sunbird_azure_public_storage_account_name: -sunbird_private_storage_account_name: - -# Used to store the private contents of the storage account. -sunbird_azure_private_storage_account_name: - -# used to store backups for or application DB's -sunbird_azure_management_storage_account_name: - -# This account need to be private to store jenkins build artifacts which will be used commonly between environments. -sunbird_azure_artifact_storage_account_name: - -# Certs related vars -certs_badge_name: "" # Course Completion Certificate Name e.g value is "Course Completion Certificate" -certs_badge_description: "" # Descripton of course Completion e.g value is "Successfully completed course on Sunbird" -certs_badge_image: "" # Image of the certs badge e.g value is "sunbird" -certs_badge_root_org_id: "" # Root org ID for which the certs will be created e.g value is "0124229474659643111" -certs_badge_issuer_name: "" # The issuer of the certs name e.g value is "Government of karnataka" -certs_badge_issuer_url: "" # Issuer organisation official URL e.g value is "https://testdomain.in" -cert_service_cloud_storage_type: azure - -#### Content-service #### -environment_id: # value as to be as Knowledgeplatfom/common.yml environment_id -graph_passport_key: "{{core_vault_graph_passport_key}}" - - -# Kubernetes variables -namespace: dev -imagepullsecrets: devregistrysecret -# this willl be prepended to your image -# for example, if you give -# dockerhub: sunbird -# kubernetes will try to download : sunbird/player: -# so give proper value if you're using private registry -dockerhub: - -kubeconfig_path: "/var/lib/jenkins/secrets/k8s.yaml" -kibana_oauth_authenticated_email_domains_kube: '["domain.com","domain1.com"]' -sunbird_portal_player_cdn_enabled: false -# Ip of nginx private ingress -# Give Ip Address with which the private ingress should be created -# For safety reason, give ip address from bottom range of cidr -# for ex: if cidr is 11.2.1.0/24 -private_ingressgateway_ip: 11.2.1.220 -storage_class_name: "" -# Ip Address of the keycloak without http -# eg: 11.2.1.10 -keycloak_lb_ip: - -# Enable following if you're using kubernetes - -## sunbird_lms_base_url: "http://{{private_ingressgateway_ip}}/api" ### keycloak env variable -## sunbird_user_service_base_url: "http://{{private_ingressgateway_ip}}/learner" #### keycloak env variable -## __lms_host__: "http://{{private_ingressgateway_ip}}/learner" ### yarn job -## sunbird_content_service_api_base_url: "http://{{private_ingressgateway_ip}}/content" -## sunbird_search_service_api_base_url: "http://{{private_ingressgateway_ip}}/search" -## sunbird_user_service_api_base_url: "http://{{private_ingressgateway_ip}}/learner" -## kibana_service: kibana.logging.svc.cluster.local:5601 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -## Not Manadatory Variables - -# Kibana oauth authorized domains; for accessing kibana dashboard -kibana_oauth_authenticated_email_domains: - - domain1 - - domain2 -kibana_oauth_authenticated_email_ids: - - email1 - - email2 -monitor_alerts_mail_from_email: # From Address for alert mails -sunbird_msg_sender: # SMS from Address; exact 6 char -sunbird_android_app_url: "" # Playstore url of android app; default is subird.org - -# NOT MANDATORY VARS -sunbird_public_storage_account_name: "{{sunbird_azure_public_storage_account_name}}" -keycloak_api_management_user_email: "admin@sunbird.org" -jenkins_url: # Jenkins urls to be accessed from slaves; eg "http://10.20.0.12:8080/jenkins" -sunbird_installation_email: "admin@sunbird.org" # fallback email for badger badge creation if the user doesn't have email address. -upstream_url: "{{sunbird_azure_public_storage_account_name}}.blob.core.windows.net/{{sunbird_content_azure_storage_container}}" # Proxy url to get /assets/public -ekstep_s3_env: "" # This variable is not used and leave the value as empty - -############## Release-1.15.0 & 2.0.0 ################## -#sunbird_cassandra_replication_strategy: '{"class":"NetworkTopologyStrategy","datacenter1":2}' # If using cluster give this value and choose datacenter and replication factor as required '{"class":"NetworkTopologyStrategy","datacenter1":2}' if not using cluster, leave this variable commented - -cert_service_container_name: e-credentials # conatiner name for cert service to store cert templates -cert_service_cloud_storage_type: azure # can be updated if we are using some other blob - - -### Modified for plugins - Release - 2.4.0 ### -sunbird_ekstep_proxy_base_url: "{{proto}}://{{domain_name}}" -plugin_upstream_url: "{{upstream_url}}" -azure_plugin_storage_account_name: "{{sunbird_azure_public_storage_account_name}}" -azure_plugin_storage_account_key: "{{sunbird_public_storage_account_key}}" -plugin_container_name: "{{sunbird_content_azure_storage_container}}" - -#freshDesk dummy variable -# freshDesk_url: "" # Enble only if you have proper url -freshDesk_token: "" diff --git a/private_repo/ansible/inventory/dev/Core/hosts b/private_repo/ansible/inventory/dev/Core/hosts deleted file mode 100644 index c97aa705fa..0000000000 --- a/private_repo/ansible/inventory/dev/Core/hosts +++ /dev/null @@ -1,195 +0,0 @@ -# Alert manager nodes which should be clustered -# This values should be one of any manager node, if you've multinode cluster -[alert-manager:children] -# By default this value can be swarm-manager-1 or 2 or n; but for a single -# cluster it should be one value. -# If you have multiple cluster you can list all ips below one by one -swarm-manager-1 - -[swarm-manager-1] -18.0.0.15 swarm_master=true - -# This host will make sure prometheus for all stateful services -# will run on a single node, as it has storage dependancy -# By default this host is same as docker swarm prometheus -[swarm-agent-for-prometheus-stateful:children] -swarm-agent-for-prometheus - -[swarm-manager:children] -swarm-manager-1 - -[swarm-node-1] -11.3.0.27 - -[swarm-worker:children] -swarm-node-1 - -[keycloak-1] -18.0.0.9 - -[keycloak:children] -keycloak-1 - -[log-es-2] -18.0.0.15 es_instance_name=log-es-2 node_name=log-es-2 es_etc_node_master=true es_etc_node_data=true - -[log-es:children] -log-es-2 - -[swarm-agent-for-prometheus-1] -18.0.0.15 - -[swarm-agent-for-prometheus:children] -swarm-agent-for-prometheus-1 - -[swarm-agent-for-prometheus-stateful:children] -swarm-agent-for-prometheus - -[swarm-dashboard-1] -18.0.0.15 - -[swarm-dashboard:children] -swarm-dashboard-1 - -[swarm-agent-dashboard-1] -18.0.0.15 - -[swarm-agent-dashboard:children] -swarm-agent-dashboard-1 - -[alertmanager_stateful:children] -swarm-agent-dashboard - -[swarm-agent-for-alertmanager-1] -18.0.0.15 - -[es-1] -18.0.0.9 es_instance_name=es-1 es_etc_node_master=true es_etc_node_data=true - -[es-backup:children] -es-1 - -[log-es-backup:children] -log-es-2 - -[es:children] -es-1 - -[cassandra-1] -18.0.0.9 - -[cassandra:children] -cassandra-1 - -[postgresql-master-1] -18.0.0.9 - -[postgresql-master:children] -postgresql-master-1 - -[postgresql-slave-1] -18.0.0.9 - -[postgresql-slave:children] -postgresql-slave-1 - -[postgres:children] -postgresql-slave -postgresql-master - -[kafka-1] -18.0.0.13 kafka_id=1 - -[processing-cluster-kafka] -18.0.0.13 - -[kafka:children] -kafka-1 - -[processing-cluster-zookeepers] -18.0.0.50 # Zookeeper IP of processing cluster in Data pipeline - -[zookeeper:children] -processing-cluster-zookeepers - -[lp-redis] -18.0.0.51 # Redis master IP of Knowledge platform - -[lp-redis-ps:children] -lp-redis - -[redis-ps:children] -lp-redis-ps - -[redis-exporter-targets:children] -lp-redis - -[learning-neo4j-node1] -15.0.2.9 # Neo4j ip of Knowledge platform - -[lp-cassandra] -18.0.0.9 # cassandra ip of Knowledge platform - -[dp-cassandra] -18.0.0.9 # cassandra ip of Datapipeline - -[local] -localhost - -[swarm-agent-for-alertmanager:children] -swarm-agent-for-alertmanager-1 - -[kong-api] -localhost - -[swarm-bootstrap-manager:children] -swarm-manager - -[swarm-nodes:children] -swarm-manager -swarm-bootstrap-manager -swarm-agent-for-prometheus -swarm-agent-for-alertmanager - -[node-exporter:children] -swarm-manager - -[log-forwarder:children] -swarm-manager - -[composite-search-cluster] -15.0.2.6 - -[core:children] -es -log-es -cassandra -postgresql-master -postgresql-slave -swarm-nodes -swarm-manager -kafka -keycloak -swarm-dashboard -swarm-agent-dashboard -composite-search-cluster - -[env:children] -core -local - -[log-forwarder:children] -swarm-manager - -[dp-druid-broker] -11.3.0.3 # Druid broker IP for druid proxy api - -[all:vars] -# If you want to tag your prometheus data with unique cluster ids -# useful in case of prometheus federation -# -# cluster_name=DC1 -# -ansible_ssh_user=deployer -ansible_ssh_private_key_file=/var/lib/jenkins/secrets/deployer_ssh_key -logger_es6_host="{{ groups['log-es-2'][0] }}" diff --git a/private_repo/ansible/inventory/dev/Core/secrets.yml b/private_repo/ansible/inventory/dev/Core/secrets.yml deleted file mode 100644 index f9f5043bd7..0000000000 --- a/private_repo/ansible/inventory/dev/Core/secrets.yml +++ /dev/null @@ -1,118 +0,0 @@ -# !! Might deprecate -core_vault_sunbird_ekstep_api_key: -core_vault_sunbird_encryption_key: #Random hash to encrypt data -core_vault_kong__test_jwt: - -############# Core ####################### -####### Secrets ####### - -core_vault_sunbird_trampoline_secret: # some 8 digit password for keycloak sso user -core_vault_postgres_password: -core_vault_sunbird_azure_storage_key : -core_vault_docker_registry_url: "https://index.docker.io/v1" # use this value if using dockerhub -core_vault_docker_registry_user: -core_vault_docker_registry_password: -core_vault_proxy_site_key: |+ - -core_vault_proxy_site_crt: |+ - -core_vault_ansible_vault_password: - -################### DONT FILL THESE VARIABLES INITIALLY ################### - -core_vault_sunbird_sso_publickey: # Get After Keycloak Deployment -core_vault_sunbird_api_auth_token: #Take the jwt token api-management-test-user from Jenkins job OnboardConsumers and update core_vault_sunbird_api_auth_token if using KP and DP along with core -core_vault_sunbird_keycloak_user_federation_provider_id: # Get after keycloak deployment - -##### Release-2.3.0 ################### -core_vault_enc_entry_password: test # encryption password for the enc service -core_vault_enc_master_pass: test # encryption password for the keys - -##### release-2.6 vars ##### -core_vault_graph_passport_key: #copy value from variable lp_vault_graph_passport_key from KnowledgePlatform/Secrets.yml - -##### release-2.7 vars ##### -artifact_azure_account_sas: # generate a sas for the blob for entire storage accout with write and read access. - -############################ -# public storage account with content conatiner. -sunbird_azure_public_storage_account_key: - -# Used to store the private contents of the storage account. -sunbird_azure_private_storage_account_key: -sunbird_private_storage_account_key: - -# used to store backups for or application DB's -sunbird_azure_management_storage_account_key: - -# This account need to be private to store jenkins build artifacts which will be used commonly between environments. -sunbird_azure_artifact_storage_account_key: - -### release-2.8.0 ##### -core_vault_sunbird_sso_client_secret: #get the lms client secret from keycloak - - - - - - - - - - - - - - - - - - - - - - - - - -####################### END OF VARS ########################################## - -#NOT REQUIRED TO EDIT ############################## -core_vault_badger_admin_password: "sunbird" -core_vault_badging_authorization_key: -core_vault_jenkins_admin_username: "" #### if it is not required will remove -core_vault_jenkins_admin_password: "" #### if it is not required will remove -core_vault_proxy_prometheus_admin_creds: "admin" -core_vault_postgres_username: postgres # dont change this value -core_vault_grafana_editor_password: "sunbird" -core_vault_grafana_dashboards_git_repo_url_with_credentails: "https://github.com/project-sunbird/grafana-dashboards.git" -core_vault_monitor_alerts_slack_url: "" - -######################## Not mandatory ################################### -core_vault_sunbird_fcm_account_key: "" -core_vault_sunbird_google_oauth_clientSecret: -core_vault_mail_server_password: '' -core_vault_keycloak_api_management_user_password: admin -core_vault_keystore_password: sunbird #Password to use for encrypting cassandra keystore. Use a strong password. -vault_core_url_shortner_access_token: "" # Url shortner access token for learning-service; only if url_shortner enabled -core_vault_sunbird_sso_username: admin -core_vault_sunbird_sso_password: admin -core_vault_keycloak_password: "admin" -core_vault_grafana_admin_password: "sunbird" -core_vault_truststore_password: "sunbird" # Password for cassandra trust store -core_vault_trampoline_secret: "deep-secret" ## any 8 character value -core_vault_msg_91_auth_key: - -# Portal one google sso -core_vault_sunbird_google_oauth_clientId_portal: -core_vault_sunbird_google_oauth_clientSecret_portal: -core_vault_sunbird_google_captcha_site_key_portal: -core_vault_sunbird_google_keycloak_secret: - -# Oauth for logger kibana -core_vault_kibana_google_client_id: -core_vault_kibana_google_client_secret: -core_vault_kibana_cookie_secret: kibanaoauth # Cookie secret for kibana Oauth - -# !!!!! DO NOT UPDATE VARS BELOW THIS !!! -# ***************************************************************************** # diff --git a/private_repo/ansible/inventory/dev/DataPipeline/common.yml b/private_repo/ansible/inventory/dev/DataPipeline/common.yml deleted file mode 100644 index 8d45b41bd9..0000000000 --- a/private_repo/ansible/inventory/dev/DataPipeline/common.yml +++ /dev/null @@ -1,47 +0,0 @@ -###### Release 1.14.0 and 2.0.0 ####### - -env: -proto: -domain_name: -ssh_public_key_deployer: -bootstrap_user: -bootstrap_key_path: - -secor_azure_container_name: "" -secor_alerts_slack_channel: "" - -#dp_azure_account_name: # azure storage account name -sunbird_private_storage_account_name: # Azure account name for analytics api contents -sunbird_artifact_storage_account_name: # Azure stroage account name used for artifact upload -default_org_hash_id: "" # channel id of the organization - -# Data products monitoring web hooks -data_exhaust_webhook_url: "" ## Slack webhook -data_exhaust_Channel: "" ## salck channel for data products alerts -data_exhaust_name: -stream_base_url: "" - -# Media content -media_service_azure_tenant: "" # value have to be defined -media_service_azure_tenant: "" -media_service_azure_subscription_id: "" -media_service_azure_account_name: "" -media_service_azure_resource_group_name: "" -media_service_azure_token_client_key: "" -media_service_azure_token_client_secret: "" - -# kafka topic required by core # -# Please do not change this # -ingestion_kafka_topics: - - name: telemetry.ingestion - num_of_partitions: 4 - replication_factor: 1 - retention_time: 604800000 - - name: telemetry.ingest - num_of_partitions: 4 - replication_factor: 1 -# Geo location related var -maxmind_db_license_key: -swarm_manager_lb_ip: # Update the swarm lb ip if you dont have lb then update the swarm server ip -#report_azure_account_name: # Update the azure account name -#report_azure_storage_secret: "{{ dp_vault_reports_azure_key }}" diff --git a/private_repo/ansible/inventory/dev/DataPipeline/hosts b/private_repo/ansible/inventory/dev/DataPipeline/hosts deleted file mode 100644 index ab44b9f41c..0000000000 --- a/private_repo/ansible/inventory/dev/DataPipeline/hosts +++ /dev/null @@ -1,166 +0,0 @@ -################ Core ######################### -[swarm-bootstrap-manager] -15.0.1.4 - -[core-cassandra] -15.0.0.7 - -[core-es-1] -15.0.0.50 # This should be elasticsearch master IP of Core - -[core-es:children] -core-es-1 - -[log-es-1] -15.0.0.1 - -[log-es:children] -log-es-1 - -################# LP ########################## -[search] -15.0.3.5 - -[learning] -15.0.3.11 - -[composite-search-cluster] -15.0.2.6 - -[lp-cassandra] -15.0.2.7 - -[dp-cassandra] -15.0.2.7 - -[lp-redis] -15.0.3.11 - -################# LPA ######################### -[analytics-api] -15.0.3.6 - -[secor] -15.0.3.15 - -[spark] -15.0.3.12 - -[cassandra] -15.0.2.7 - -[postgres] -15.0.3.17 - -[lpa:children] -spark -secor -analytics-api -cassandra -########################### DP ############################# - -[kafka-indexer] -15.0.3.8 - -[influxdb] -15.0.3.6 - -[redis] -15.0.3.5 - -[redisall:children] -redis - -[processing-cluster-kafka] -15.0.3.8 -15.0.3.7 - -[processing-cluster-zookeepers] -15.0.3.8 -15.0.3.7 - -[telemetry-search-cluster1] -15.0.2.6 - -[telemetry-search-cluster:children] -telemetry-search-cluster1 - -[zookeeper:children] -processing-cluster-zookeepers - -[telemetry-search-cluster-kibana-node:children] -telemetry-search-cluster1 - -[yarn-master] -15.0.3.10 - -[yarn-slave] -15.0.3.13 - -[yarn:children] -yarn-master -yarn-slave - -[local] -localhost - -[broker] -0.0.0.0 #### its required for data products deploy - -[coordinator] -0.0.0.0 #### its required for analytics deploy - -[dp:children] -local -processing-cluster-kafka -processing-cluster-zookeepers -zookeeper -postgres -telemetry-search-cluster -telemetry-search-cluster-kibana-node -yarn -kafka-indexer -influxdb -lpa - -[env:children] -swarm-bootstrap-manager -dp - -[env:vars] -ansible_ssh_user=deployer -ansible_ssh_private_key_file=/var/lib/jenkins/secrets/deployer_ssh_key - - -########################### Monitoring ########################## -[yarn-ps] -15.0.3.10 -15.0.3.13 - -[logstash-ps] -15.0.3.8 - -[es-ps] -15.0.2.6 - -[process-exporter:children] -yarn-ps -logstash-ps -es-ps -secor-ps -analytics-ps -kafka-ps - -[secor-ps] -15.0.3.15 - -[analytics-ps] -15.0.3.6 - -[kafka-ps] -15.0.3.8 -15.0.3.7 - -[all:vars] -ansible_ssh_user=deployer -ansible_ssh_private_key_file=/var/lib/jenkins/secrets/deployer_ssh_key diff --git a/private_repo/ansible/inventory/dev/DataPipeline/secrets.yml b/private_repo/ansible/inventory/dev/DataPipeline/secrets.yml deleted file mode 100644 index 4df9e341f5..0000000000 --- a/private_repo/ansible/inventory/dev/DataPipeline/secrets.yml +++ /dev/null @@ -1,15 +0,0 @@ -############## Admin ###################### - -############## DP ###################### -dp_vault_artifacts_container: -dp_search_service_authorization_token: -dp_vault_pgdb_password: -dp_vault_pgdb_admin_password: -dp_vault_data_exhaust_token: - - -# Storage Account credentials for Knowledge Platform -sunbird_management_storage_account_key: -sunbird_artifact_storage_account_key: -sunbird_artifact_storage_account_sas: -sunbird_private_storage_account_key: diff --git a/private_repo/ansible/inventory/dev/KnowledgePlatform/common.yml b/private_repo/ansible/inventory/dev/KnowledgePlatform/common.yml deleted file mode 100644 index 7ad3131ded..0000000000 --- a/private_repo/ansible/inventory/dev/KnowledgePlatform/common.yml +++ /dev/null @@ -1,49 +0,0 @@ -###### Release 1.14.0, 2.0.0 ######## - -env: -proto: -domain_name: -ekstep_domain_name: # https://qa.ekstep.in if you're using dial service - -#bootstrap -ssh_public_key_deployer: -bootstrap_user: -bootstrap_key_path: - -azure_public_container: -environment_id: # Should be a number of 8 digit like 1000000. This should be unique per environment -neo4j_zip: neo4j-community-3.3.9-unix.tar.gz # neo4j enterprise version.zip present in the artifacts folder -neo4j_home: "{{learner_user_home}}/{{neo4j_dir}}/neo4j-community-3.3.9" # Change this path to the version of neo4j you will be using -neo4j_enterprise: false - -########### Storage Account variables ############ -artifacts_container: - -# public storage account with content conatiner. -sunbird_public_storage_account_name: - -# used to store backups for or application DB's -sunbird_management_storage_account_name: - -# This account need to be private to store jenkins build artifacts which will be used commonly between environments. -sunbird_artifact_storage_account_name: - -########################################################## - -swarm_manager_lb_ip: # Enter the LB IP in case you are using a swarm manager load balancer OR Swarm manager's IP if not using a load balancer - -# Enable following if you're using kubernetes - -# Ip of nginx private ingress -# Give Ip Address with which the private ingress should be created -# For safety reason, give ip address from bottom range of cidr -# for ex: if cidr is 11.2.1.0/24 -## private_ingressgateway_ip: 11.2.1.220 -# -## learner_service_base_url: "http://{{private_ingressgateway_ip}}/learner" ## lp samza jobs -## cert_service_base_url: "http://{{private_ingressgateway_ip}}/cert" ### lp samza jobs -## kp_content_service_base_url: "http://{{private_ingressgateway_ip}}/content" -## cert_reg_service_base_url: "http://{{private_ingressgateway_ip}}/certreg" -## kp_search_service_base_url: "http://{{private_ingressgateway_ip}}/search" -## kp_print_service_base_url: "http://{{private_ingressgateway_ip}}/print" -## lms_service_base_url: "http://{{private_ingressgateway_ip}}/lms" diff --git a/private_repo/ansible/inventory/dev/KnowledgePlatform/secrets.yml b/private_repo/ansible/inventory/dev/KnowledgePlatform/secrets.yml deleted file mode 100644 index b92f6640bd..0000000000 --- a/private_repo/ansible/inventory/dev/KnowledgePlatform/secrets.yml +++ /dev/null @@ -1,11 +0,0 @@ -############## Admin ###################### -############## LP ###################### -lp_vault_graph_passport_key: # can be any random string; to check integrity of content submitted for reviewal -lp_vault_youtube_api_key: -lp_vault_dial_service_authorization: - -# Storage Account credentials for Knowledge Platform -sunbird_public_storage_account_key: -sunbird_management_storage_account_key: -sunbird_artifact_storage_account_key: -sunbird_artifact_storage_account_sas: From 1dc26bbb978c20f42e56f643de55a4a486723b84 Mon Sep 17 00:00:00 2001 From: Rajasimman S Date: Mon, 23 Jan 2023 18:51:26 +0530 Subject: [PATCH 290/298] =?UTF-8?q?=F0=9F=90=9B=20fixed=20keyname=20cloud?= =?UTF-8?q?=5Fstorage=5Fschema=5Fbucketname?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ansible/upload-schemas.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ansible/upload-schemas.yml b/ansible/upload-schemas.yml index 0e2182cb00..6b3079a5ab 100644 --- a/ansible/upload-schemas.yml +++ b/ansible/upload-schemas.yml @@ -9,7 +9,7 @@ name: azure-cloud-storage tasks_from: blob-upload-batch.yml vars: - blob_container_name: "{{ cloud_storage_schemas_bucketname }}" + blob_container_name: "{{ cloud_storage_schema_bucketname }}" container_public_access: "blob" blob_container_folder_path: "/schemas" local_file_or_folder_path: "{{ source_name }}" @@ -22,7 +22,7 @@ name: aws-cloud-storage tasks_from: upload-folder.yml vars: - s3_bucket_name: "{{ cloud_storage_schemas_bucketname }}" + s3_bucket_name: "{{ cloud_storage_schema_bucketname }}" aws_access_key_id: "{{ cloud_public_storage_accountname }}" aws_secret_access_key: "{{ cloud_public_storage_secret }}" aws_default_region: "{{ cloud_public_storage_region }}" @@ -35,7 +35,7 @@ name: gcp-cloud-storage tasks_from: upload-batch.yml vars: - gcp_bucket_name: "{{ cloud_storage_schemas_bucketname }}" + gcp_bucket_name: "{{ cloud_storage_schema_bucketname }}" gcp_path: "schemas" local_file_or_folder_path: "{{ source_name }}" when: cloud_service_provider == "gcloud" From 33734eb559dfe5c99ea208890449aedbc405b173 Mon Sep 17 00:00:00 2001 From: Deepak Devadathan Date: Thu, 30 Mar 2023 12:28:57 +1100 Subject: [PATCH 291/298] added the swithch for apiversion selection Signed-off-by: Deepak Devadathan --- .../helm_charts/core/reloader/templates/clusterrole.yaml | 4 ++++ .../core/reloader/templates/clusterrolebinding.yaml | 4 ++++ kubernetes/helm_charts/core/reloader/templates/role.yaml | 4 ++++ .../helm_charts/core/reloader/templates/rolebinding.yaml | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/kubernetes/helm_charts/core/reloader/templates/clusterrole.yaml b/kubernetes/helm_charts/core/reloader/templates/clusterrole.yaml index 8d51ef406b..b2817c5f9a 100755 --- a/kubernetes/helm_charts/core/reloader/templates/clusterrole.yaml +++ b/kubernetes/helm_charts/core/reloader/templates/clusterrole.yaml @@ -1,5 +1,9 @@ {{- if and .Values.reloader.watchGlobally (.Values.reloader.rbac.enabled) }} +{{- if (.Capabilities.APIVersions.Has "rbac.authorization.k8s.io/v1") }} +apiVersion: rbac.authorization.k8s.io/v1 +{{ else }} apiVersion: rbac.authorization.k8s.io/v1beta1 +{{- end }} kind: ClusterRole metadata: labels: diff --git a/kubernetes/helm_charts/core/reloader/templates/clusterrolebinding.yaml b/kubernetes/helm_charts/core/reloader/templates/clusterrolebinding.yaml index 28c9d4b916..748e52528d 100755 --- a/kubernetes/helm_charts/core/reloader/templates/clusterrolebinding.yaml +++ b/kubernetes/helm_charts/core/reloader/templates/clusterrolebinding.yaml @@ -1,5 +1,9 @@ {{- if and .Values.reloader.watchGlobally (.Values.reloader.rbac.enabled) }} +{{- if (.Capabilities.APIVersions.Has "rbac.authorization.k8s.io/v1") }} +apiVersion: rbac.authorization.k8s.io/v1 +{{ else }} apiVersion: rbac.authorization.k8s.io/v1beta1 +{{- end }} kind: ClusterRoleBinding metadata: labels: diff --git a/kubernetes/helm_charts/core/reloader/templates/role.yaml b/kubernetes/helm_charts/core/reloader/templates/role.yaml index 5827f5cdcb..b654024031 100755 --- a/kubernetes/helm_charts/core/reloader/templates/role.yaml +++ b/kubernetes/helm_charts/core/reloader/templates/role.yaml @@ -1,5 +1,9 @@ {{- if and (not (.Values.reloader.watchGlobally)) (.Values.reloader.rbac.enabled) }} +{{- if (.Capabilities.APIVersions.Has "rbac.authorization.k8s.io/v1") }} +apiVersion: rbac.authorization.k8s.io/v1 +{{ else }} apiVersion: rbac.authorization.k8s.io/v1beta1 +{{- end }} kind: Role metadata: labels: diff --git a/kubernetes/helm_charts/core/reloader/templates/rolebinding.yaml b/kubernetes/helm_charts/core/reloader/templates/rolebinding.yaml index 94fb1f838b..d915db304d 100755 --- a/kubernetes/helm_charts/core/reloader/templates/rolebinding.yaml +++ b/kubernetes/helm_charts/core/reloader/templates/rolebinding.yaml @@ -1,5 +1,9 @@ {{- if and (not (.Values.reloader.watchGlobally)) (.Values.reloader.rbac.enabled) }} +{{- if (.Capabilities.APIVersions.Has "rbac.authorization.k8s.io/v1") }} +apiVersion: rbac.authorization.k8s.io/v1 +{{ else }} apiVersion: rbac.authorization.k8s.io/v1beta1 +{{- end }} kind: RoleBinding metadata: labels: From 6f98e11d94435d2cfc779b35fc8c25000c21639e Mon Sep 17 00:00:00 2001 From: venudiksha <121850458+venudiksha@users.noreply.github.com> Date: Fri, 8 Dec 2023 18:01:38 +0530 Subject: [PATCH 292/298] Updated cassandra-main.yml Updated cassandra-main.yml --- ansible/roles/cassandra/defaults/main.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ansible/roles/cassandra/defaults/main.yml b/ansible/roles/cassandra/defaults/main.yml index e0a1efbfa9..5e57ce703d 100644 --- a/ansible/roles/cassandra/defaults/main.yml +++ b/ansible/roles/cassandra/defaults/main.yml @@ -1,4 +1,7 @@ -user_home: /home/deployer -cassandra_repo: 'deb http://www.apache.org/dist/cassandra/debian 311x main' +#user_home: /home/deployer +user_home: "/home/{{ ansible_ssh_user }}/" +#cassandra_repo: 'deb http://www.apache.org/dist/cassandra/debian 311x main' +cassandra_repo: 'deb [signed-by=/usr/share/keyrings/cassandra-archive-keyring.gpg] https://downloads.apache.org/cassandra/debian 311x main' cassandra_repo_key: 'https://www.apache.org/dist/cassandra/KEYS' resource_crunch: "yes" # make this value yes if heap size should be quarter of the Server Memory when you are deploying multiple databases, else make this value no to have 50% of the value as per the best practice of cassandra +cassandra_home_directory: "/var/lib/cassandra" From 6d76578dcdf40d29f22d812d970d13c64daee95b Mon Sep 17 00:00:00 2001 From: venudiksha <121850458+venudiksha@users.noreply.github.com> Date: Fri, 8 Dec 2023 18:06:32 +0530 Subject: [PATCH 293/298] Updated cassandra-main.yml Updated cassandra-main.yml --- ansible/roles/cassandra/defaults/main.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ansible/roles/cassandra/defaults/main.yml b/ansible/roles/cassandra/defaults/main.yml index 5e57ce703d..8f1f0f7951 100644 --- a/ansible/roles/cassandra/defaults/main.yml +++ b/ansible/roles/cassandra/defaults/main.yml @@ -1,7 +1,5 @@ -#user_home: /home/deployer user_home: "/home/{{ ansible_ssh_user }}/" -#cassandra_repo: 'deb http://www.apache.org/dist/cassandra/debian 311x main' -cassandra_repo: 'deb [signed-by=/usr/share/keyrings/cassandra-archive-keyring.gpg] https://downloads.apache.org/cassandra/debian 311x main' -cassandra_repo_key: 'https://www.apache.org/dist/cassandra/KEYS' +cassandra_repo: 'deb https://debian.cassandra.apache.org 311x main' +cassandra_repo_key: 'https://downloads.apache.org/cassandra/KEYS' resource_crunch: "yes" # make this value yes if heap size should be quarter of the Server Memory when you are deploying multiple databases, else make this value no to have 50% of the value as per the best practice of cassandra cassandra_home_directory: "/var/lib/cassandra" From 0a5e29c16cbda966030d9e6f66f126a23ece43cd Mon Sep 17 00:00:00 2001 From: Praveen-Devaraj <121887814+Praveen-Devaraj@users.noreply.github.com> Date: Thu, 9 May 2024 23:13:40 +0530 Subject: [PATCH 294/298] Create Jenkinsfile --- pipelines/vdn_check_pods_status/Jenkinsfile | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 pipelines/vdn_check_pods_status/Jenkinsfile diff --git a/pipelines/vdn_check_pods_status/Jenkinsfile b/pipelines/vdn_check_pods_status/Jenkinsfile new file mode 100644 index 0000000000..af090666c2 --- /dev/null +++ b/pipelines/vdn_check_pods_status/Jenkinsfile @@ -0,0 +1,50 @@ +@Library('deploy-conf') _ +node() { + try { + String ANSI_GREEN = "\u001B[32m" + String ANSI_NORMAL = "\u001B[0m" + String ANSI_BOLD = "\u001B[1m" + String ANSI_RED = "\u001B[31m" + String ANSI_YELLOW = "\u001B[33m" + + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + ansiColor('xterm') { + stage('deploy'){ + values = [:] + envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() + module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() + jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "${currentWs}/ansible/bootstrap.yml" + ansibleExtraArgs = "--tags bootstrap_any --extra-vars \"hosts=${params.hosts}\" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('env', envDir) + values.put('module', module) + values.put('jobName', jobName) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + println values + ansible_playbook_run(values) + currentBuild.result = 'SUCCESS' + currentBuild.description = "Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + } + } + catch (err) { + currentBuild.result = 'FAILURE' + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +} From ad0a0e44c5144e96adfffdf5424ace4f9f695b02 Mon Sep 17 00:00:00 2001 From: Praveen-Devaraj <121887814+Praveen-Devaraj@users.noreply.github.com> Date: Thu, 9 May 2024 23:13:49 +0530 Subject: [PATCH 295/298] Create vdn_check_pods_status.yml --- ansible/vdn_check_pods_status.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 ansible/vdn_check_pods_status.yml diff --git a/ansible/vdn_check_pods_status.yml b/ansible/vdn_check_pods_status.yml new file mode 100644 index 0000000000..0247937f64 --- /dev/null +++ b/ansible/vdn_check_pods_status.yml @@ -0,0 +1,22 @@ +--- +- name: Check Pod Status in All Namespaces + hosts: localhost + gather_facts: no + environment: + KUBECONFIG: "{{ kubeconfig_path }}" + tasks: + - name: Check Non-Running Pods in Namespaces + shell: kubectl get pods -A | grep -v Running + register: non_running_pods + changed_when: false + failed_when: false + + - name: Parse Non-Running Pods + set_fact: + non_running_pod_lines: "{{ non_running_pods.stdout_lines }}" + when: non_running_pods.stdout_lines | length > 0 + + - name: Print Non-Running Pods + debug: + msg: "{{ non_running_pod_lines | join('\n') }}" + when: non_running_pod_lines is defined From 80aae6ff09cf51e2e017f4e019fd1d997fa63533 Mon Sep 17 00:00:00 2001 From: Praveen-Devaraj <121887814+Praveen-Devaraj@users.noreply.github.com> Date: Thu, 9 May 2024 23:15:12 +0530 Subject: [PATCH 296/298] Update Jenkinsfile --- pipelines/vdn_check_pods_status/Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pipelines/vdn_check_pods_status/Jenkinsfile b/pipelines/vdn_check_pods_status/Jenkinsfile index af090666c2..f4450e5b60 100644 --- a/pipelines/vdn_check_pods_status/Jenkinsfile +++ b/pipelines/vdn_check_pods_status/Jenkinsfile @@ -24,7 +24,7 @@ node() { module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() currentWs = sh(returnStdout: true, script: 'pwd').trim() - ansiblePlaybook = "${currentWs}/ansible/bootstrap.yml" + ansiblePlaybook = "${currentWs}/ansible/vdn_check_pods_status.yml" ansibleExtraArgs = "--tags bootstrap_any --extra-vars \"hosts=${params.hosts}\" --vault-password-file /var/lib/jenkins/secrets/vault-pass" values.put('currentWs', currentWs) values.put('env', envDir) From faeefde0257a20693c66387cd45b08a9840822e3 Mon Sep 17 00:00:00 2001 From: Praveen-Devaraj <121887814+Praveen-Devaraj@users.noreply.github.com> Date: Thu, 9 May 2024 23:39:40 +0530 Subject: [PATCH 297/298] Delete pipelines/vdn_check_pods_status directory --- pipelines/vdn_check_pods_status/Jenkinsfile | 50 --------------------- 1 file changed, 50 deletions(-) delete mode 100644 pipelines/vdn_check_pods_status/Jenkinsfile diff --git a/pipelines/vdn_check_pods_status/Jenkinsfile b/pipelines/vdn_check_pods_status/Jenkinsfile deleted file mode 100644 index f4450e5b60..0000000000 --- a/pipelines/vdn_check_pods_status/Jenkinsfile +++ /dev/null @@ -1,50 +0,0 @@ -@Library('deploy-conf') _ -node() { - try { - String ANSI_GREEN = "\u001B[32m" - String ANSI_NORMAL = "\u001B[0m" - String ANSI_BOLD = "\u001B[1m" - String ANSI_RED = "\u001B[31m" - String ANSI_YELLOW = "\u001B[33m" - - stage('checkout public repo') { - folder = new File("$WORKSPACE/.git") - if (folder.exists()) - { - println "Found .git folder. Clearing it.." - sh'git clean -fxd' - } - checkout scm - } - - ansiColor('xterm') { - stage('deploy'){ - values = [:] - envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() - module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() - jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() - currentWs = sh(returnStdout: true, script: 'pwd').trim() - ansiblePlaybook = "${currentWs}/ansible/vdn_check_pods_status.yml" - ansibleExtraArgs = "--tags bootstrap_any --extra-vars \"hosts=${params.hosts}\" --vault-password-file /var/lib/jenkins/secrets/vault-pass" - values.put('currentWs', currentWs) - values.put('env', envDir) - values.put('module', module) - values.put('jobName', jobName) - values.put('ansiblePlaybook', ansiblePlaybook) - values.put('ansibleExtraArgs', ansibleExtraArgs) - println values - ansible_playbook_run(values) - currentBuild.result = 'SUCCESS' - currentBuild.description = "Private: ${params.private_branch}, Public: ${params.branch_or_tag}" - } - } - } - catch (err) { - currentBuild.result = 'FAILURE' - throw err - } - finally { - slack_notify(currentBuild.result) - email_notify() - } -} From 9a514bbf907f37c55a2df984d8cfe8258b820c9b Mon Sep 17 00:00:00 2001 From: Praveen-Devaraj <121887814+Praveen-Devaraj@users.noreply.github.com> Date: Thu, 9 May 2024 23:47:44 +0530 Subject: [PATCH 298/298] Create Jenkinsfile --- pipelines/vdn_check_pods_status/Jenkinsfile | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 pipelines/vdn_check_pods_status/Jenkinsfile diff --git a/pipelines/vdn_check_pods_status/Jenkinsfile b/pipelines/vdn_check_pods_status/Jenkinsfile new file mode 100644 index 0000000000..f4450e5b60 --- /dev/null +++ b/pipelines/vdn_check_pods_status/Jenkinsfile @@ -0,0 +1,50 @@ +@Library('deploy-conf') _ +node() { + try { + String ANSI_GREEN = "\u001B[32m" + String ANSI_NORMAL = "\u001B[0m" + String ANSI_BOLD = "\u001B[1m" + String ANSI_RED = "\u001B[31m" + String ANSI_YELLOW = "\u001B[33m" + + stage('checkout public repo') { + folder = new File("$WORKSPACE/.git") + if (folder.exists()) + { + println "Found .git folder. Clearing it.." + sh'git clean -fxd' + } + checkout scm + } + + ansiColor('xterm') { + stage('deploy'){ + values = [:] + envDir = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-3].trim() + module = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-2].trim() + jobName = sh(returnStdout: true, script: "echo $JOB_NAME").split('/')[-1].trim() + currentWs = sh(returnStdout: true, script: 'pwd').trim() + ansiblePlaybook = "${currentWs}/ansible/vdn_check_pods_status.yml" + ansibleExtraArgs = "--tags bootstrap_any --extra-vars \"hosts=${params.hosts}\" --vault-password-file /var/lib/jenkins/secrets/vault-pass" + values.put('currentWs', currentWs) + values.put('env', envDir) + values.put('module', module) + values.put('jobName', jobName) + values.put('ansiblePlaybook', ansiblePlaybook) + values.put('ansibleExtraArgs', ansibleExtraArgs) + println values + ansible_playbook_run(values) + currentBuild.result = 'SUCCESS' + currentBuild.description = "Private: ${params.private_branch}, Public: ${params.branch_or_tag}" + } + } + } + catch (err) { + currentBuild.result = 'FAILURE' + throw err + } + finally { + slack_notify(currentBuild.result) + email_notify() + } +}