summaryrefslogtreecommitdiffstats
path: root/fluent-bit/lib/librdkafka-2.1.0/packaging/tools
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-07-24 09:54:23 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-07-24 09:54:44 +0000
commit836b47cb7e99a977c5a23b059ca1d0b5065d310e (patch)
tree1604da8f482d02effa033c94a84be42bc0c848c3 /fluent-bit/lib/librdkafka-2.1.0/packaging/tools
parentReleasing debian version 1.44.3-2. (diff)
downloadnetdata-836b47cb7e99a977c5a23b059ca1d0b5065d310e.tar.xz
netdata-836b47cb7e99a977c5a23b059ca1d0b5065d310e.zip
Merging upstream version 1.46.3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'fluent-bit/lib/librdkafka-2.1.0/packaging/tools')
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-deb-package.sh64
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-debian.sh65
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-manylinux.sh68
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-release-artifacts.sh138
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/distro-build.sh38
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/gh-release-checksums.py39
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/rdutcoverage.sh25
-rw-r--r--fluent-bit/lib/librdkafka-2.1.0/packaging/tools/requirements.txt2
-rwxr-xr-xfluent-bit/lib/librdkafka-2.1.0/packaging/tools/style-format.sh148
9 files changed, 0 insertions, 587 deletions
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-deb-package.sh b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-deb-package.sh
deleted file mode 100755
index d9cad6d25..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-deb-package.sh
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/bin/bash
-#
-# Build librdkafka Debian package on a bare-bone Debian host, such as ubuntu:16.04 (docker).
-#
-# Usage (from top-level librdkafka dir):
-# docker run -it -v $PWD:/v ubuntu:16.04 /v/packaging/tools/build-deb-package.sh 1.0.0 master
-#
-
-set -exu
-
-if [[ $# -ne 2 ]]; then
- echo "Usage: $0 <package-version> <librdkafka-branch-or-tag>"
- exit 1
-fi
-
-export VERSION=$1
-LRK_BRANCH=$2
-
-apt-get update
-
-# Install debian packaging tools and librdkafka build dependencies
-apt-get install -y git-buildpackage debhelper \
- zlib1g-dev libssl-dev libsasl2-dev liblz4-dev
-
-
-# Clone the librdkafka git repo to a new location to avoid messing
-# up the librdkafka working directory.
-
-
-BUILD_DIR=$(mktemp -d)
-
-pushd $BUILD_DIR
-
-git clone /v librdkafka
-
-pushd librdkafka
-
-export DEBEMAIL="librdkafka packaging <rdkafka@edenhill.se>"
-git config user.email "rdkafka@edenhill.se"
-git config user.name "librdkafka packaging"
-
-DEB_BRANCH=origin/confluent-debian
-TMP_BRANCH=tmp-debian
-git checkout -b $TMP_BRANCH $LRK_BRANCH
-git merge --no-edit $DEB_BRANCH
-
-dch --newversion ${VERSION/-/\~}-1 "Release version $VERSION" --urgency low && dch --release --distribution unstable ""
-
-git commit -a -m "Tag Debian release $VERSION."
-
-make archive
-mkdir -p ../tarballs || true
-mv librdkafka-${VERSION}.tar.gz ../tarballs/librdkafka_${VERSION}.orig.tar.gz
-
-gbp buildpackage -us -uc --git-debian-branch=$TMP_BRANCH \
- --git-upstream-tree=$LRK_BRANCH \
- --git-verbose \
- --git-builder="debuild --set-envvar=VERSION=$VERSION --set-envvar=SKIP_TESTS=y -i -I"
-
-
-popd # librdkafka
-
-popd # $BUILD_DIR
-
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-debian.sh b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-debian.sh
deleted file mode 100755
index e62ee5f67..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-debian.sh
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/bin/bash
-#
-# Build librdkafka on a bare-bone Debian host, such as the
-# mcr.microsoft.com/dotnet/sdk Docker image.
-#
-# Statically linked
-# WITH openssl 1.0, zlib
-# WITHOUT libsasl2, lz4(ext, using builtin instead)
-#
-# Usage (from top-level librdkafka dir):
-# docker run -it -v $PWD:/v mcr.microsoft.com/dotnet/sdk /v/packaging/tools/build-debian.sh /v /v/librdkafka-debian9.tgz
-#
-
-
-set -ex
-
-LRK_DIR=$1
-shift
-OUT_TGZ=$1
-shift
-CONFIG_ARGS=$*
-
-if [[ ! -f $LRK_DIR/configure.self || -z $OUT_TGZ ]]; then
- echo "Usage: $0 <librdkafka-root-direcotry> <output-tgz> [<configure-args..>]"
- exit 1
-fi
-
-set -u
-
-apt-get update
-apt-get install -y gcc g++ zlib1g-dev python3 git-core make patch
-
-
-# Copy the librdkafka git archive to a new location to avoid messing
-# up the librdkafka working directory.
-
-BUILD_DIR=$(mktemp -d)
-
-pushd $BUILD_DIR
-
-DEST_DIR=$PWD/dest
-mkdir -p $DEST_DIR
-
-# Workaround for newer Git not allowing clone directory to be owned by
-# another user (which is a questionable limitation for the read-only archive
-# command..)
-git config --global --add safe.directory /v
-
-(cd $LRK_DIR ; git archive --format tar HEAD) | tar xf -
-
-./configure --install-deps --disable-gssapi --disable-lz4-ext --enable-static --prefix=$DEST_DIR $CONFIG_ARGS
-make -j
-examples/rdkafka_example -X builtin.features
-CI=true make -C tests run_local_quick
-make install
-
-# Tar up the output directory
-pushd $DEST_DIR
-ldd lib/*.so.1
-tar cvzf $OUT_TGZ .
-popd # $DEST_DIR
-
-popd # $BUILD_DIR
-
-rm -rf "$BUILD_DIR"
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-manylinux.sh b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-manylinux.sh
deleted file mode 100755
index 4aeaa9622..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-manylinux.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/bash
-#
-# Build on a manylinux (https://github.com/pypa/manylinux) docker container.
-#
-# This will provide a self-contained librdkafka shared library that works
-# on most glibc-based Linuxes.
-#
-# Statically linked
-# WITH openssl 1.1.1, zlib, lz4(bundled)
-# WITHOUT libsasl2
-#
-#
-# Run:
-# docker run -t -v "$PWD:/v quay.io/pypa/manylinux2010_x86_64 /v/packaging/tools/build-manylinux.sh /v /v/artifacts/librdkafka-manylinux2010_x86_64.tgz $config_args"
-
-set -ex
-
-LRK_DIR=$1
-shift
-OUT_TGZ=$1
-shift
-CONFIG_ARGS=$*
-
-if [[ ! -f $LRK_DIR/configure.self || -z $OUT_TGZ ]]; then
- echo "Usage: $0 <librdkafka-root-direcotry> <output-tgz> [<configure-args..>]"
- exit 1
-fi
-
-set -u
-
-yum install -y libstdc++-devel gcc gcc-c++ python34
-
-# Copy the librdkafka git archive to a new location to avoid messing
-# up the librdkafka working directory.
-
-BUILD_DIR=$(mktemp -d)
-
-pushd $BUILD_DIR
-
-DEST_DIR=$PWD/dest
-mkdir -p $DEST_DIR
-
-# Workaround for newer Git not allowing clone directory to be owned by
-# another user (which is a questionable limitation for the read-only archive
-# command..)
-git config --global --add safe.directory /v
-
-(cd $LRK_DIR ; git archive --format tar HEAD) | tar xf -
-
-./configure --install-deps --source-deps-only --disable-gssapi --disable-lz4-ext --enable-static --prefix=$DEST_DIR $CONFIG_ARGS
-
-make -j
-
-examples/rdkafka_example -X builtin.features
-
-CI=true make -C tests run_local_quick
-
-make install
-
-# Tar up the output directory
-pushd $DEST_DIR
-ldd lib/*.so.1
-tar cvzf $OUT_TGZ .
-popd # $DEST_DIR
-
-popd # $BUILD_DIR
-
-rm -rf "$BUILD_DIR"
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-release-artifacts.sh b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-release-artifacts.sh
deleted file mode 100755
index ea09aaf96..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/build-release-artifacts.sh
+++ /dev/null
@@ -1,138 +0,0 @@
-#!/bin/sh
-#
-# ^ NOTE: This needs to be sh, not bash, for alpine compatibility.
-#
-#
-# Build dynamic and statically linked librdkafka libraries useful for
-# release artifacts in high-level clients.
-#
-# Requires docker.
-# Supported docker images:
-# alpine:3.16
-# quay.io/pypa/manylinux2014_aarch64 (centos7)
-# quay.io/pypa/manylinux2014_x86_64 (centos7)
-# quay.io/pypa/manylinux2010_x86_64 (centos6)
-#
-# Usage:
-# packaging/tools/build-release-artifacts.sh [--disable-gssapi] <docker-image> <relative-output-tarball-path.tgz>
-#
-# The output path must be a relative path and inside the librdkafka directory
-# structure.
-#
-
-set -e
-
-docker_image=""
-extra_pkgs_rpm=""
-extra_pkgs_apk=""
-extra_config_args=""
-expected_features="gzip snappy ssl sasl regex lz4 sasl_plain sasl_scram plugins zstd sasl_oauthbearer http oidc"
-
-# Since cyrus-sasl is the only non-statically-linkable dependency,
-# we provide a --disable-gssapi option so that two different libraries
-# can be built: one with GSSAPI/Kerberos support, and one without, depending
-# on this option.
-if [ "$1" = "--disable-gssapi" ]; then
- extra_config_args="${extra_config_args} --disable-gssapi"
- disable_gssapi="$1"
- shift
-else
- extra_pkgs_rpm="${extra_pkgs_rpm} cyrus-sasl cyrus-sasl-devel"
- extra_pkgs_apk="${extra_pkgs_apk} cyrus-sasl cyrus-sasl-dev"
- expected_features="${expected_features} sasl_gssapi"
- disable_gssapi=""
-fi
-
-# Check if we're running on the host or the (docker) build target.
-if [ "$1" = "--in-docker" -a $# -eq 2 ]; then
- output="$2"
-elif [ $# -eq 2 ]; then
- docker_image="$1"
- output="$2"
-else
- echo "Usage: $0 [--disable-gssapi] <manylinux-docker-image> <output-path.tgz>"
- exit 1
-fi
-
-if [ -n "$docker_image" ]; then
- # Running on the host, spin up the docker builder.
- exec docker run -v "$PWD:/v" $docker_image /v/packaging/tools/build-release-artifacts.sh $disable_gssapi --in-docker "/v/$output"
- # Only reached on exec error
- exit $?
-fi
-
-
-########################################################################
-# Running in the docker instance, this is where we perform the build. #
-########################################################################
-
-
-# Packages required for building librdkafka (perl is for openssl).
-
-if grep -q alpine /etc/os-release 2>/dev/null ; then
- # Alpine
- apk add \
- bash curl gcc g++ make musl-dev linux-headers bsd-compat-headers git \
- python3 perl patch $extra_pkgs_apk
-
-else
- # CentOS
- yum install -y libstdc++-devel gcc gcc-c++ python3 git perl-IPC-Cmd $extra_pkgs_rpm
-fi
-
-
-# Clone the repo so other builds are unaffected of what we're doing
-# and we get a pristine build tree.
-git clone /v /librdkafka
-
-cd /librdkafka
-
-# Build librdkafka
-./configure \
- --install-deps --source-deps-only --disable-lz4-ext \
- --enable-static --enable-strip $extra_config_args
-
-make -j
-
-# Show library linkage (for troubleshooting) and checksums (for verification)
-for lib in src/librdkafka.so.1 src-cpp/librdkafka++.so.1; do
- echo "$0: LINKAGE ${lib}:"
- ldd src/librdkafka.so.1
- echo "$0: SHA256 ${lib}:"
- sha256sum "$lib"
-done
-
-# Verify that expected features are indeed built.
-features=$(examples/rdkafka_example -X builtin.features)
-echo "$0: FEATURES: $features"
-
-missing=""
-for f in $expected_features; do
- if ! echo "$features" | grep -q "$f" ; then
- echo "$0: BUILD IS MISSING FEATURE $f"
- missing="${missing} $f"
- fi
-done
-
-if [ -n "$missing" ]; then
- exit 1
-fi
-
-
-# Run quick test suite, mark it as CI to avoid time/resource sensitive
-# tests to fail in case the worker is under-powered.
-CI=true make -C tests run_local_quick
-
-
-# Install librdkafka and then make a tar ball of the installed files.
-mkdir -p /destdir
-
-DESTDIR=/destdir make install
-
-cd /destdir
-tar cvzf "$output" .
-
-# Emit output hash so that build logs can be used to verify artifacts later.
-echo "$0: SHA256 $output:"
-sha256sum "$output"
-
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/distro-build.sh b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/distro-build.sh
deleted file mode 100755
index a4b5bfa61..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/distro-build.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/bash
-#
-# Build librdkafka for different distros to produce distro-specific artifacts.
-# Requires docker.
-#
-
-set -e
-
-distro=$1
-shift
-config_args=$*
-
-case $distro in
- manylinux*)
- # Any pypa/manylinux docker image build.
- docker run -t -v "$PWD:/v" quay.io/pypa/$distro /v/packaging/tools/build-manylinux.sh /v /v/artifacts/librdkafka-${distro}.tgz $config_args
- ;;
- centos)
- if [[ -n $config_args ]]; then
- echo "Warning: configure arguments ignored for centos RPM build"
- fi
- packaging/rpm/mock-on-docker.sh
- packaging/rpm/tests/test-on-docker.sh
- ;;
- debian)
- docker run -it -v "$PWD:/v" mcr.microsoft.com/dotnet/sdk:3.1 /v/packaging/tools/build-debian.sh /v /v/artifacts/librdkafka-debian9.tgz $config_args
- ;;
- alpine)
- packaging/alpine/build-alpine.sh $config_args
- ;;
- alpine-static)
- packaging/alpine/build-alpine.sh --enable-static --source-deps-only $config_args
- ;;
- *)
- echo "Usage: $0 <centos|debian|alpine|alpine-static>"
- exit 1
- ;;
-esac
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/gh-release-checksums.py b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/gh-release-checksums.py
deleted file mode 100755
index e7259dc20..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/gh-release-checksums.py
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/env python3
-#
-# Calculate checksums for GitHub release artifacts/assets.
-#
-# Use the direct links rather than getting the tarball URLs from
-# the GitHub API since the latter uses the git-sha1 rather than the tag
-# in its zipped up content, causing checksum mismatches.
-#
-
-import sys
-import requests
-import hashlib
-
-
-if __name__ == '__main__':
-
- if len(sys.argv) != 2:
- print("Usage: {} <tag>".format(sys.argv[0]))
- sys.exit(1)
-
- tag = sys.argv[1]
-
- print("## Checksums")
- print("Release asset checksums:")
-
- for ftype in ["zip", "tar.gz"]:
- url = "https://github.com/edenhill/librdkafka/archive/{}.{}".format(
- tag, ftype)
-
- h = hashlib.sha256()
-
- r = requests.get(url, stream=True)
- while True:
- buf = r.raw.read(100 * 1000)
- if len(buf) == 0:
- break
- h.update(buf)
-
- print(" * {}.{} SHA256 `{}`".format(tag, ftype, h.hexdigest()))
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/rdutcoverage.sh b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/rdutcoverage.sh
deleted file mode 100755
index e99c51bdc..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/rdutcoverage.sh
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/bin/bash
-#
-# Verify that code coverage numbers are not reused in multiple places.
-#
-
-set -e
-
-echo "Checking for duplicate coverage numbers:"
-cnt=0
-for d in $(egrep -Rsoh 'RD_UT_COVERAGE\([[:digit:]]+\)' src \
- | sort | uniq -c | \
- egrep -v '^[[:space:]]*1 ' | awk '{print $2}'); do
- grep -RsnF "$d" src
- cnt=$(expr $cnt + 1)
-done
-
-echo ""
-
-if [[ $cnt -gt 0 ]]; then
- echo "$cnt duplicates found: please use unique numbers"
- exit 1
-else
- echo "No duplicate(s) found"
- exit 0
-fi
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/requirements.txt b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/requirements.txt
deleted file mode 100644
index 43603098a..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/requirements.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-flake8
-autopep8
diff --git a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/style-format.sh b/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/style-format.sh
deleted file mode 100755
index c59ecbe6a..000000000
--- a/fluent-bit/lib/librdkafka-2.1.0/packaging/tools/style-format.sh
+++ /dev/null
@@ -1,148 +0,0 @@
-#!/bin/bash
-#
-# Check or apply/fix the project coding style to all files passed as arguments.
-# Uses clang-format for C/C++ and flake8 for Python.
-#
-# Requires clang-format version 10 (apt install clang-format-10).
-#
-
-
-CLANG_FORMAT=${CLANG_FORMAT:-clang-format}
-
-set -e
-
-ret=0
-
-if [[ -z $1 ]]; then
- echo "Usage: $0 [--fix] srcfile1.c srcfile2.h srcfile3.c ..."
- echo ""
- exit 0
-fi
-
-if [[ $1 == "--fix" ]]; then
- fix=1
- shift
-else
- fix=0
-fi
-
-clang_format_version=$(${CLANG_FORMAT} --version | sed -Ee 's/.*version ([[:digit:]]+)\.[[:digit:]]+\.[[:digit:]]+.*/\1/')
-if [[ $clang_format_version != "10" ]] ; then
- echo "$0: clang-format version 10, '$clang_format_version' detected"
- exit 1
-fi
-
-# Get list of files from .formatignore to ignore formatting for.
-ignore_files=( $(grep '^[^#]..' .formatignore) )
-
-function ignore {
- local file=$1
-
- local f
- for f in "${ignore_files[@]}" ; do
- [[ $file == $f ]] && return 0
- done
-
- return 1
-}
-
-# Read the C++ style from src-cpp/.clang-format and store it
-# in a json-like string which is passed to --style.
-# (It would be great if clang-format could take a file path for the
-# format file..).
-cpp_style="{ $(grep -v '^...$' .clang-format-cpp | grep -v '^$' | tr '\n' ',' | sed -e 's/,$//') }"
-if [[ -z $cpp_style ]]; then
- echo "$0: Unable to read .clang-format-cpp"
- exit 1
-fi
-
-extra_info=""
-
-for f in $*; do
-
- if ignore $f ; then
- echo "$f is ignored by .formatignore" 1>&2
- continue
- fi
-
- lang="c"
- if [[ $f == *.cpp ]]; then
- style="$cpp_style"
- stylename="C++"
- elif [[ $f == *.h && $(basename $f) == *cpp* ]]; then
- style="$cpp_style"
- stylename="C++ (header)"
- elif [[ $f == *.py ]]; then
- lang="py"
- style="pep8"
- stylename="pep8"
- else
- style="file" # Use .clang-format
- stylename="C"
- fi
-
- check=0
-
- if [[ $fix == 1 ]]; then
- # Convert tabs to 8 spaces first.
- if grep -ql $'\t' "$f"; then
- sed -i -e 's/\t/ /g' "$f"
- echo "$f: tabs converted to spaces"
- fi
-
- if [[ $lang == c ]]; then
- # Run clang-format to reformat the file
- ${CLANG_FORMAT} --style="$style" "$f" > _styletmp
-
- else
- # Run autopep8 to reformat the file.
- python3 -m autopep8 -a "$f" > _styletmp
- # autopep8 can't fix all errors, so we also perform a flake8 check.
- check=1
- fi
-
- if ! cmp -s "$f" _styletmp; then
- echo "$f: style fixed ($stylename)"
- # Use cp to preserve target file mode/attrs.
- cp _styletmp "$f"
- rm _styletmp
- fi
- fi
-
- if [[ $fix == 0 || $check == 1 ]]; then
- # Check for tabs
- if grep -q $'\t' "$f" ; then
- echo "$f: contains tabs: convert to 8 spaces instead"
- ret=1
- fi
-
- # Check style
- if [[ $lang == c ]]; then
- if ! ${CLANG_FORMAT} --style="$style" --Werror --dry-run "$f" ; then
- echo "$f: had style errors ($stylename): see clang-format output above"
- ret=1
- fi
- elif [[ $lang == py ]]; then
- if ! python3 -m flake8 "$f"; then
- echo "$f: had style errors ($stylename): see flake8 output above"
- if [[ $fix == 1 ]]; then
- # autopep8 couldn't fix all errors. Let the user know.
- extra_info="Error: autopep8 could not fix all errors, fix the flake8 errors manually and run again."
- fi
- ret=1
- fi
- fi
- fi
-
-done
-
-rm -f _styletmp
-
-if [[ $ret != 0 ]]; then
- echo ""
- echo "You can run the following command to automatically fix the style:"
- echo " $ make style-fix"
- [[ -n $extra_info ]] && echo "$extra_info"
-fi
-
-exit $ret