aboutsummaryrefslogtreecommitdiffstats
path: root/csit/resources/scripts/make_topics.py
diff options
context:
space:
mode:
authorrameshiyer27 <ramesh.murugan.iyer@est.tech>2023-12-14 14:17:35 +0000
committerrameshiyer27 <ramesh.murugan.iyer@est.tech>2023-12-14 14:17:35 +0000
commitf2609a349565f74237024f2f546e03ea5c772cb5 (patch)
treeacdd9010ce27231dae1e42aed03472d173855799 /csit/resources/scripts/make_topics.py
parentdae767c98f1f15da96d543f029c846d95a5de76a (diff)
Add kafka docker container for policy CSITs
Replaced dmaap with kafka in CLAMP docker tests. Issue-ID: POLICY-4201 Signed-off-by: zrrmmua <ramesh.murugan.iyer@est.tech> Change-Id: I4d05e24d3ececf2253ebc39785882be00bf9eaf4
Diffstat (limited to 'csit/resources/scripts/make_topics.py')
-rwxr-xr-xcsit/resources/scripts/make_topics.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/csit/resources/scripts/make_topics.py b/csit/resources/scripts/make_topics.py
new file mode 100755
index 00000000..daee4341
--- /dev/null
+++ b/csit/resources/scripts/make_topics.py
@@ -0,0 +1,41 @@
+#!/usr/bin/env python3
+#
+# ============LICENSE_START====================================================
+# Copyright (C) 2023 Nordix Foundation.
+# =============================================================================
+# 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.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END======================================================
+
+# Python utility to create a new kafka topic
+# Accepts the argument {topic_name}
+
+from confluent_kafka.admin import AdminClient, NewTopic
+import sys
+
+def create_topic(bootstrap_servers, topic_name, num_partitions=2, replication_factor=2):
+ admin_client = AdminClient({'bootstrap.servers': bootstrap_servers})
+
+ # Define the topic configuration
+ topic = NewTopic(topic_name, num_partitions=num_partitions, replication_factor=replication_factor)
+
+ # Create the topic
+ admin_client.create_topics([topic])
+
+
+if __name__ == '__main__':
+ topic_name = sys.argv[1]
+ bootstrap_servers = 'localhost:29092'
+
+ create_topic(bootstrap_servers, topic_name)