aboutsummaryrefslogtreecommitdiffstats
path: root/kubernetes/dcaegen2-services/common/dcaegen2-services-common
diff options
context:
space:
mode:
authorJack Lucas <jflos@sonoris.net>2023-07-18 17:52:13 -0400
committerJack Lucas <jflos@sonoris.net>2023-07-26 12:50:43 -0400
commit838ce7ea096c3dd52436803776764b2dd0b05971 (patch)
tree7acb6d7e82094a798dcd631d701621d0c6dcbe73 /kubernetes/dcaegen2-services/common/dcaegen2-services-common
parent8c55fdd1dc3f78e32d7214353f09dd67831de216 (diff)
[DMAAP] Introduce drprov-client
Introduce the drprov-client (replaces dbc-client) and use it to provision data router feeds and subscriptions for DCAE datafile collector and pm-mapper. - Update the common dmaap provisioning template to use drprov-client instead of dbc-client. - Add drprov-client image to the repository generator. - Update the dcaegen2-services-common configMap template to generate JSON files suitable for provisioning data router directly. - Update the dcaegen2-services-common deployment template to use drprov-client as an init container instead of dbc-client. - Update dcae-datafile-collector and pm-mapper values.yaml to format feed and subscription data properly for drprov-client. - Update versions for datarouter-node and datarouter-prov - Update dependencies for DCAE datafile-collector and pm-mapper, which no longer depend on DMAAP bus controller. Issue-ID: DMAAP-1893 Signed-off-by: Jack Lucas <jflos@sonoris.net> Change-Id: Ia090365428362ff6aa94cfb4096ee4c6b554b480
Diffstat (limited to 'kubernetes/dcaegen2-services/common/dcaegen2-services-common')
-rw-r--r--kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_configmap.tpl58
-rw-r--r--kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_deployment.tpl4
2 files changed, 37 insertions, 25 deletions
diff --git a/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_configmap.tpl b/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_configmap.tpl
index afd3c38f31..bb35e80848 100644
--- a/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_configmap.tpl
+++ b/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_configmap.tpl
@@ -1,7 +1,7 @@
{{/*
# Copyright © 2017 Amdocs, Bell Canada
# Modifications Copyright © 2019 AT&T
-# Copyright (c) 2021-2022 J. F. Lucas. All rights reserved.
+# Copyright (c) 2021-2023 J. F. Lucas. All rights reserved.
# Copyright (c) 2021 Nordix Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,14 +33,10 @@ The template always produces a configMap containing the microservice's
initial configuration data. (See the documentation for
dcaegen2-services-common.microserviceDeployment for more details.)
-If the microservice is using one or more Data Router (DR) feeds, the
+If the microservice is publishing to one or more Data Router (DR) feeds, the
template produces a configMap containing the information needed to
provision the feed(s). An init container performs the provisioning.
-If the microservice acts as a DR publisher for one or more feeds, the
-template produces a configMap containing the information needed to
-provision the publisher(s). An init container performs the provisioning.
-
If the microservice acts as a DR subscriber for one or more feeds, the
template produces a configMap containing the information needed to
provision the subscribeer(s). An init container performs the provisioning.
@@ -70,22 +66,22 @@ metadata:
data:
{{- range $i, $feed := .Values.drFeedConfig }}
feedConfig-{{$i}}.json: |-
- {{ $feed | toJson | indent 2 }}
- {{- end }}
-{{- end }}
-
-{{- if .Values.drPubConfig }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-drpub-config
- namespace: {{ include "common.namespace" . }}
- labels: {{ include "common.labels" . | nindent 6 }}
-data:
- {{- range $i, $drpub := .Values.drPubConfig }}
- drpubConfig-{{$i}}.json: |-
- {{ $drpub | toJson | indent 2 }}
+ {
+ "name": {{ $feed.feedName | quote }},
+ "version": {{ $feed.feedVersion | quote }},
+ "description": {{ $feed.feedDescription | default "None" | quote }},
+ "authorization": {
+ "classification": {{ $feed.classification | quote }},
+ "endpoint_addrs": [
+ ],
+ "endpoint_ids": [
+ {
+ "id": {{ $feed.publisher.username | quote }},
+ "password": {{ $feed.publisher.password | quote }}
+ }
+ ]
+ }
+ }
{{- end }}
{{- end }}
@@ -100,7 +96,23 @@ metadata:
data:
{{- range $i, $drsub := .Values.drSubConfig }}
drsubConfig-{{$i}}.json: |-
- {{ $drsub | toJson | indent 2 }}
+ {
+ "feed": {
+ "name": {{ $drsub.feedName | quote }},
+ "version": {{ $drsub.feedVersion | quote }}
+ },
+ "delivery": {
+ "url": {{ $drsub.deliveryURL | quote }},
+ "user": {{ $drsub.username | quote }},
+ "password": {{ $drsub.userpwd | quote }},
+ "use100": {{ $drsub.use100 | default false }}
+ },
+ "metadataOnly": {{ $drsub.metadataOnly | default false }},
+ "groupid": {{ $drsub.groupId | default 0 }},
+ "follow_redirect": {{ $drsub.followRedirect | default true }},
+ "privileged_subscriber": {{ $drsub.privilegedSubscriber | default false }},
+ "decompress": {{ $drsub.decompress | default false }}
+ }
{{- end }}
{{- end }}
{{- end }}
diff --git a/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_deployment.tpl b/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_deployment.tpl
index e7f9627a3d..b0c76a9b3a 100644
--- a/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_deployment.tpl
+++ b/kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_deployment.tpl
@@ -240,7 +240,7 @@ post-processing.
{{- $commonRelease := print (include "common.release" .) -}}
{{- $policy := default dict .Values.policies -}}
{{- $policyRls := default $commonRelease $policy.policyRelease -}}
-{{- $drFeedConfig := default "" .Values.drFeedConfig -}}
+{{- $drNeedProvisioning := or .Values.drFeedConfig .Values.drSubConfig -}}
{{- $dcaeName := print (include "common.fullname" .) }}
{{- $dcaeLabel := (dict "dcaeMicroserviceName" $dcaeName) -}}
{{- $dot := . -}}
@@ -310,7 +310,7 @@ spec:
resources: {{ include "common.resources" . | nindent 10 }}
volumeMounts:
- mountPath: /app-config
- name: {{ ternary "app-config-input" "app-config" (not $drFeedConfig) }}
+ name: {{ ternary "app-config-input" "app-config" (not $drNeedProvisioning) }}
- mountPath: /app-config-input
name: app-config-input
{{- if $logDir }}