mirror of
https://github.com/Telecominfraproject/wlan-cloud-helm.git
synced 2025-10-29 09:42:29 +00:00
* set all imagePullPolicies to Always * use chart-level and global image pull policy * make images configurable
61 lines
3.0 KiB
YAML
61 lines
3.0 KiB
YAML
{{- if .Values.testsEnabled -}}
|
|
apiVersion: v1
|
|
kind: Pod
|
|
metadata:
|
|
name: {{ include "common.fullname" . }}-test-topic-create-produce-consume
|
|
namespace: {{ include "common.namespace" . }}
|
|
annotations:
|
|
"helm.sh/hook": test-success
|
|
spec:
|
|
containers:
|
|
- name: {{ include "common.name" . }}-test-consume
|
|
image: {{ .Values.image }}:{{ .Values.imageTag }}
|
|
imagePullPolicy: {{ .Values.imagePullPolicy | default .Values.global.pullPolicy }}
|
|
command:
|
|
- sh
|
|
- -c
|
|
- |
|
|
# List topics:
|
|
echo "##### Listing existing topics #####"
|
|
kafka-topics --zookeeper {{ include "zookeeper.url" . }} --list
|
|
# Create the topic
|
|
echo "##### Create topic helm-test-topic-create-consume-produce #####"
|
|
kafka-topics --zookeeper {{ include "zookeeper.url" . }} --topic helm-test-topic-create-consume-produce --create --partitions 1 --replication-factor 1 --if-not-exists
|
|
echo "##### Produce the test message #####"
|
|
# Create a message
|
|
MESSAGE="`date -u`"
|
|
# Produce a test message to the topic
|
|
echo "$MESSAGE" | kafka-console-producer --broker-list {{ include "common.fullname" . }}-headless:9093 --producer.config /etc/kafka/admin-client.properties --topic helm-test-topic-create-consume-produce
|
|
echo "##### Consume the test message from the topic #####"
|
|
# Consume a test message from the topic
|
|
kafka-console-consumer --bootstrap-server {{ include "common.fullname" . }}-headless:9093 --consumer.config /etc/kafka/admin-client.properties --topic helm-test-topic-create-consume-produce --from-beginning --timeout-ms 2000 --max-messages 1 | grep "$MESSAGE"
|
|
echo "##### Listing current topics including our new topic #####"
|
|
kafka-topics --zookeeper {{ include "zookeeper.url" . }} --list
|
|
# Delete the messages from topic
|
|
echo "##### Delete messages from our topic #####"
|
|
kafka-configs --zookeeper {{ include "zookeeper.url" . }} --alter --entity-type topics --entity-name helm-test-topic-create-consume-produce --add-config retention.ms=1000
|
|
# Mark topic for deletion
|
|
echo "##### Mark our topic for Deletion #####"
|
|
kafka-topics --zookeeper {{ include "zookeeper.url" . }} --delete --topic helm-test-topic-create-consume-produce
|
|
# List topics:
|
|
echo "##### Listing topics after deleting our newly created topic #####"
|
|
kafka-topics --zookeeper {{ include "zookeeper.url" . }} --list
|
|
volumeMounts:
|
|
- mountPath: /etc/kafka/admin-client.properties
|
|
name: kafka-client-config
|
|
subPath: admin-client.properties
|
|
- mountPath: /etc/kafka/secrets/truststore.jks
|
|
name: kafka-certificates
|
|
subPath: truststore.jks
|
|
- mountPath: /etc/kafka/secrets/kafka-server.pkcs12
|
|
name: kafka-certificates
|
|
subPath: kafka-server.pkcs12
|
|
restartPolicy: Never
|
|
volumes:
|
|
- name: kafka-client-config
|
|
configMap:
|
|
name: {{ include "common.fullname" . }}-clientconfig
|
|
- name: kafka-certificates
|
|
secret:
|
|
secretName: {{ include "common.fullname" . }}-certs
|
|
{{- end }} |