From b485aab7e71c1625cfc27e0f92c9509f42378458 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 5 May 2024 13:19:16 +0200 Subject: Adding upstream version 1.45.3+dfsg. Signed-off-by: Daniel Baumann --- .../lib/librdkafka-2.1.0/packaging/cp/README.md | 14 +++++ .../librdkafka-2.1.0/packaging/cp/check_features.c | 64 ++++++++++++++++++++++ .../librdkafka-2.1.0/packaging/cp/verify-deb.sh | 34 ++++++++++++ .../packaging/cp/verify-packages.sh | 43 +++++++++++++++ .../librdkafka-2.1.0/packaging/cp/verify-rpm.sh | 38 +++++++++++++ 5 files changed, 193 insertions(+) create mode 100644 src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/README.md create mode 100644 src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/check_features.c create mode 100755 src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-deb.sh create mode 100755 src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-packages.sh create mode 100755 src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-rpm.sh (limited to 'src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp') diff --git a/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/README.md b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/README.md new file mode 100644 index 000000000..24a82f142 --- /dev/null +++ b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/README.md @@ -0,0 +1,14 @@ +# Confluent Platform package verification + +This small set of scripts verifies the librdkafka packages that +are part of the Confluent Platform. + +The base_url is the http S3 bucket path to the a PR job, or similar. + +## How to use + + $ ./verify-packages.sh 5.3 https://thes3bucketpath/X/Y + + +Requires docker and patience. + diff --git a/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/check_features.c b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/check_features.c new file mode 100644 index 000000000..4229402fd --- /dev/null +++ b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/check_features.c @@ -0,0 +1,64 @@ +#include +#include +#include + +int main(int argc, char **argv) { + rd_kafka_conf_t *conf; + char buf[512]; + size_t sz = sizeof(buf); + rd_kafka_conf_res_t res; + static const char *expected_features = "ssl,sasl_gssapi,lz4,zstd"; + char errstr[512]; + int i; + int failures = 0; + + printf("librdkafka %s (0x%x, define: 0x%x)\n", rd_kafka_version_str(), + rd_kafka_version(), RD_KAFKA_VERSION); + + if (argc > 1 && !(argc & 1)) { + printf("Usage: %s [config.property config-value ..]\n", + argv[0]); + return 1; + } + + conf = rd_kafka_conf_new(); + res = rd_kafka_conf_get(conf, "builtin.features", buf, &sz); + + if (res != RD_KAFKA_CONF_OK) { + printf("ERROR: conf_get failed: %d\n", res); + return 1; + } + + printf("builtin.features: %s\n", buf); + + /* librdkafka allows checking for expected features + * by setting the corresponding feature flags in builtin.features, + * which will return an error if one or more flags are not enabled. */ + if (rd_kafka_conf_set(conf, "builtin.features", expected_features, + errstr, sizeof(errstr)) != RD_KAFKA_CONF_OK) { + printf( + "ERROR: expected at least features: %s\n" + "got error: %s\n", + expected_features, errstr); + failures++; + } + + printf("all expected features matched: %s\n", expected_features); + + /* Apply config from argv key value pairs */ + for (i = 1; i + 1 < argc; i += 2) { + printf("verifying config %s=%s\n", argv[i], argv[i + 1]); + if (rd_kafka_conf_set(conf, argv[i], argv[i + 1], errstr, + sizeof(errstr)) != RD_KAFKA_CONF_OK) { + printf("ERROR: failed to set %s=%s: %s\n", argv[i], + argv[i + 1], errstr); + failures++; + } + } + + rd_kafka_conf_destroy(conf); + + printf("%d failures\n", failures); + + return !!failures; +} diff --git a/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-deb.sh b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-deb.sh new file mode 100755 index 000000000..1350d0655 --- /dev/null +++ b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-deb.sh @@ -0,0 +1,34 @@ +#!/bin/bash +# + +set -e + +cpver=$1 +base_url=$2 + +if [[ -z $base_url ]]; then + echo "Usage: $0 " + exit 1 +fi + +apt-get update +apt-get install -y apt-transport-https wget + +wget -qO - ${base_url}/deb/${cpver}/archive.key | apt-key add - + + +cat >/etc/apt/sources.list.d/Confluent.list < " + echo "" + echo " is the Major.minor version of CP, e.g., 5.3" + echo " is the release base bucket URL" + exit 1 +fi + +thisdir="$( cd "$(dirname "$0")" ; pwd -P )" + +echo "#### Verifying RPM packages ####" +docker run -v $thisdir:/v centos:7 /v/verify-rpm.sh $cpver $base_url +rpm_status=$? + +echo "#### Verifying Debian packages ####" +docker run -v $thisdir:/v ubuntu:16.04 /v/verify-deb.sh $cpver $base_url +deb_status=$? + + +if [[ $rpm_status == 0 ]]; then + echo "SUCCESS: RPM packages verified" +else + echo "ERROR: RPM package verification failed" +fi + +if [[ $deb_status == 0 ]]; then + echo "SUCCESS: Debian packages verified" +else + echo "ERROR: Debian package verification failed" +fi + +if [[ $deb_status != 0 || $rpm_status != 0 ]]; then + exit 1 +fi + diff --git a/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-rpm.sh b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-rpm.sh new file mode 100755 index 000000000..d7b3b1a14 --- /dev/null +++ b/src/fluent-bit/lib/librdkafka-2.1.0/packaging/cp/verify-rpm.sh @@ -0,0 +1,38 @@ +#!/bin/bash +# + +set -e + +cpver=$1 +base_url=$2 + +if [[ -z $base_url ]]; then + echo "Usage: $0 " + exit 1 +fi + +cat >/etc/yum.repos.d/Confluent.repo <