@platformatic/rdkafka 4.0.1 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/bench/seed.sh +0 -0
- package/binding.gyp +8 -1
- package/ci/prepublish.js +0 -1
- package/config.d.ts +126 -10
- package/configure +0 -0
- package/deps/librdkafka/.semaphore/run-all-tests.yml +77 -0
- package/deps/librdkafka/.semaphore/semaphore-integration.yml +250 -0
- package/deps/librdkafka/.semaphore/semaphore.yml +67 -44
- package/deps/librdkafka/.semaphore/verify-linux-packages.yml +41 -0
- package/deps/librdkafka/CHANGELOG.md +471 -1
- package/deps/librdkafka/CONFIGURATION.md +29 -9
- package/deps/librdkafka/INTRODUCTION.md +909 -601
- package/deps/librdkafka/LICENSES.txt +592 -1
- package/deps/librdkafka/Makefile +2 -1
- package/deps/librdkafka/_mkltmpuuWEwa.c +13 -0
- package/deps/librdkafka/configure +0 -0
- package/deps/librdkafka/debian/rules +0 -0
- package/deps/librdkafka/dev-conf.sh +0 -0
- package/deps/librdkafka/examples/consumer.c +18 -8
- package/deps/librdkafka/examples/describe_consumer_groups.c +25 -6
- package/deps/librdkafka/examples/incremental_alter_configs.c +4 -5
- package/deps/librdkafka/examples/kafkatest_verifiable_client.cpp +26 -42
- package/deps/librdkafka/examples/openssl_engine_example.cpp +3 -4
- package/deps/librdkafka/examples/producer.cpp +2 -2
- package/deps/librdkafka/examples/user_scram.c +4 -5
- package/deps/librdkafka/examples/win_ssl_cert_store.cpp +4 -3
- package/deps/librdkafka/lds-gen.py +0 -0
- package/deps/librdkafka/mklove/Makefile.base +0 -0
- package/deps/librdkafka/packaging/RELEASE.md +8 -0
- package/deps/librdkafka/packaging/alpine/build-alpine.sh +0 -0
- package/deps/librdkafka/packaging/cp/README.md +4 -1
- package/deps/librdkafka/packaging/cp/check_features.c +12 -4
- package/deps/librdkafka/packaging/cp/verify-deb.sh +6 -6
- package/deps/librdkafka/packaging/cp/verify-packages.sh +52 -31
- package/deps/librdkafka/packaging/cp/verify-rpm.sh +6 -13
- package/deps/librdkafka/packaging/debian/rules +0 -0
- package/deps/librdkafka/packaging/get_version.py +0 -0
- package/deps/librdkafka/packaging/homebrew/brew-update-pr.sh +0 -0
- package/deps/librdkafka/packaging/mingw-w64/{travis-before-install.sh → export-variables.sh} +0 -7
- package/deps/librdkafka/packaging/mingw-w64/semaphoreci-build.sh +1 -1
- package/deps/librdkafka/packaging/nuget/artifact.py +0 -0
- package/deps/librdkafka/packaging/nuget/cleanup-s3.py +0 -0
- package/deps/librdkafka/packaging/nuget/nuget.sh +0 -0
- package/deps/librdkafka/packaging/nuget/packaging.py +0 -0
- package/deps/librdkafka/packaging/nuget/push-to-nuget.sh +0 -0
- package/deps/librdkafka/packaging/nuget/release.py +0 -0
- package/deps/librdkafka/packaging/nuget/requirements.txt +3 -3
- package/deps/librdkafka/packaging/rpm/mock-on-docker.sh +0 -0
- package/deps/librdkafka/packaging/rpm/tests/run-test.sh +0 -0
- package/deps/librdkafka/packaging/rpm/tests/test-on-docker.sh +0 -0
- package/deps/librdkafka/packaging/tools/build-configurations-checks.sh +3 -1
- package/deps/librdkafka/packaging/tools/build-deb-package.sh +0 -0
- package/deps/librdkafka/packaging/tools/build-debian.sh +0 -0
- package/deps/librdkafka/packaging/tools/build-manylinux.sh +0 -0
- package/deps/librdkafka/packaging/tools/build-release-artifacts.sh +0 -0
- package/deps/librdkafka/packaging/tools/distro-build.sh +0 -0
- package/deps/librdkafka/packaging/tools/gh-release-checksums.py +0 -0
- package/deps/librdkafka/packaging/tools/rdutcoverage.sh +0 -0
- package/deps/librdkafka/packaging/tools/run-in-docker.sh +28 -0
- package/deps/librdkafka/packaging/tools/run-integration-tests.sh +31 -0
- package/deps/librdkafka/packaging/tools/run-style-check.sh +4 -0
- package/deps/librdkafka/packaging/tools/style-format.sh +6 -5
- package/deps/librdkafka/packaging/tools/update_rpcs_max_versions.py +100 -0
- package/deps/librdkafka/service.yml +154 -0
- package/deps/librdkafka/src/generate_proto.sh +0 -0
- package/deps/librdkafka/src/rd.h +145 -2
- package/deps/librdkafka/src/rdaddr.h +6 -7
- package/deps/librdkafka/src/rdatomic.h +15 -11
- package/deps/librdkafka/src/rdavg.h +3 -2
- package/deps/librdkafka/src/rdbase64.c +33 -2
- package/deps/librdkafka/src/rdbase64.h +2 -0
- package/deps/librdkafka/src/rdendian.h +10 -9
- package/deps/librdkafka/src/rdhttp.c +418 -100
- package/deps/librdkafka/src/rdhttp.h +23 -5
- package/deps/librdkafka/src/rdkafka.c +299 -145
- package/deps/librdkafka/src/rdkafka.h +89 -6
- package/deps/librdkafka/src/rdkafka_admin.c +482 -105
- package/deps/librdkafka/src/rdkafka_admin.h +42 -0
- package/deps/librdkafka/src/rdkafka_broker.c +463 -312
- package/deps/librdkafka/src/rdkafka_broker.h +68 -10
- package/deps/librdkafka/src/rdkafka_buf.c +8 -5
- package/deps/librdkafka/src/rdkafka_buf.h +4 -3
- package/deps/librdkafka/src/rdkafka_cert.c +25 -1
- package/deps/librdkafka/src/rdkafka_cert.h +4 -3
- package/deps/librdkafka/src/rdkafka_cgrp.c +468 -143
- package/deps/librdkafka/src/rdkafka_cgrp.h +36 -2
- package/deps/librdkafka/src/rdkafka_conf.c +526 -102
- package/deps/librdkafka/src/rdkafka_conf.h +68 -4
- package/deps/librdkafka/src/rdkafka_feature.c +472 -35
- package/deps/librdkafka/src/rdkafka_feature.h +2 -0
- package/deps/librdkafka/src/rdkafka_fetcher.c +22 -2
- package/deps/librdkafka/src/rdkafka_fetcher.h +2 -2
- package/deps/librdkafka/src/rdkafka_int.h +84 -46
- package/deps/librdkafka/src/rdkafka_metadata.c +221 -136
- package/deps/librdkafka/src/rdkafka_metadata.h +15 -11
- package/deps/librdkafka/src/rdkafka_metadata_cache.c +279 -73
- package/deps/librdkafka/src/rdkafka_mock.c +795 -19
- package/deps/librdkafka/src/rdkafka_mock.h +119 -0
- package/deps/librdkafka/src/rdkafka_mock_cgrp.c +1298 -132
- package/deps/librdkafka/src/rdkafka_mock_handlers.c +345 -49
- package/deps/librdkafka/src/rdkafka_mock_int.h +180 -61
- package/deps/librdkafka/src/rdkafka_msg.c +35 -19
- package/deps/librdkafka/src/rdkafka_msg.h +3 -3
- package/deps/librdkafka/src/rdkafka_msgset_writer.c +14 -10
- package/deps/librdkafka/src/rdkafka_offset.c +33 -5
- package/deps/librdkafka/src/rdkafka_op.c +1 -1
- package/deps/librdkafka/src/rdkafka_op.h +45 -21
- package/deps/librdkafka/src/rdkafka_partition.c +118 -23
- package/deps/librdkafka/src/rdkafka_partition.h +16 -7
- package/deps/librdkafka/src/rdkafka_proto.h +4 -1
- package/deps/librdkafka/src/rdkafka_protocol.h +1 -0
- package/deps/librdkafka/src/rdkafka_queue.c +125 -48
- package/deps/librdkafka/src/rdkafka_queue.h +19 -0
- package/deps/librdkafka/src/rdkafka_range_assignor.c +1 -1
- package/deps/librdkafka/src/rdkafka_request.c +336 -64
- package/deps/librdkafka/src/rdkafka_request.h +24 -1
- package/deps/librdkafka/src/rdkafka_sasl.c +5 -3
- package/deps/librdkafka/src/rdkafka_sasl_oauthbearer.c +14 -10
- package/deps/librdkafka/src/rdkafka_sasl_oauthbearer_oidc.c +1166 -89
- package/deps/librdkafka/src/rdkafka_sasl_oauthbearer_oidc.h +13 -3
- package/deps/librdkafka/src/rdkafka_sasl_plain.c +3 -3
- package/deps/librdkafka/src/rdkafka_sasl_scram.c +4 -3
- package/deps/librdkafka/src/rdkafka_ssl.c +306 -81
- package/deps/librdkafka/src/rdkafka_ssl.h +22 -0
- package/deps/librdkafka/src/rdkafka_sticky_assignor.c +4 -0
- package/deps/librdkafka/src/rdkafka_telemetry.c +80 -23
- package/deps/librdkafka/src/rdkafka_telemetry_encode.c +5 -1
- package/deps/librdkafka/src/rdkafka_telemetry_encode.h +20 -20
- package/deps/librdkafka/src/rdkafka_topic.c +220 -137
- package/deps/librdkafka/src/rdkafka_topic.h +14 -8
- package/deps/librdkafka/src/rdkafka_transport.c +59 -47
- package/deps/librdkafka/src/rdkafka_transport.h +5 -0
- package/deps/librdkafka/src/rdkafka_txnmgr.c +6 -1
- package/deps/librdkafka/src/rdmap.c +6 -1
- package/deps/librdkafka/src/rdrand.c +11 -1
- package/deps/librdkafka/src/rdtime.h +48 -17
- package/deps/librdkafka/src/rdunittest.c +42 -25
- package/deps/librdkafka/src/rdunittest.h +2 -0
- package/deps/librdkafka/src/rdwin32.h +1 -1
- package/deps/librdkafka/src/regexp.c +47 -42
- package/deps/librdkafka/src/tinycthread_extra.c +45 -21
- package/deps/librdkafka/src/tinycthread_extra.h +7 -3
- package/deps/librdkafka/src-cpp/rdkafkacpp.h +28 -2
- package/deps/librdkafka/tests/0001-multiobj.c +4 -0
- package/deps/librdkafka/tests/0004-conf.c +103 -36
- package/deps/librdkafka/tests/0009-mock_cluster.c +1 -0
- package/deps/librdkafka/tests/0011-produce_batch.c +2 -1
- package/deps/librdkafka/tests/0016-client_swname.c +18 -3
- package/deps/librdkafka/tests/0017-compression.c +6 -8
- package/deps/librdkafka/tests/0018-cgrp_term.c +8 -3
- package/deps/librdkafka/tests/0021-rkt_destroy.c +1 -0
- package/deps/librdkafka/tests/0022-consume_batch.c +4 -1
- package/deps/librdkafka/tests/0026-consume_pause.c +12 -14
- package/deps/librdkafka/tests/0028-long_topicnames.c +1 -1
- package/deps/librdkafka/tests/0029-assign_offset.c +6 -8
- package/deps/librdkafka/tests/0030-offset_commit.c +2 -2
- package/deps/librdkafka/tests/0033-regex_subscribe.c +33 -17
- package/deps/librdkafka/tests/0034-offset_reset.c +25 -4
- package/deps/librdkafka/tests/0036-partial_fetch.c +1 -0
- package/deps/librdkafka/tests/0038-performance.c +1 -0
- package/deps/librdkafka/tests/0040-io_event.c +11 -5
- package/deps/librdkafka/tests/0041-fetch_max_bytes.c +1 -0
- package/deps/librdkafka/tests/0044-partition_cnt.c +3 -2
- package/deps/librdkafka/tests/0045-subscribe_update.c +284 -20
- package/deps/librdkafka/tests/0047-partial_buf_tmout.c +1 -0
- package/deps/librdkafka/tests/0048-partitioner.c +1 -1
- package/deps/librdkafka/tests/0050-subscribe_adds.c +1 -0
- package/deps/librdkafka/tests/0051-assign_adds.c +1 -0
- package/deps/librdkafka/tests/0052-msg_timestamps.c +22 -4
- package/deps/librdkafka/tests/0053-stats_cb.cpp +12 -20
- package/deps/librdkafka/tests/0055-producer_latency.c +176 -3
- package/deps/librdkafka/tests/0056-balanced_group_mt.c +6 -2
- package/deps/librdkafka/tests/0058-log.cpp +3 -3
- package/deps/librdkafka/tests/0059-bsearch.cpp +8 -4
- package/deps/librdkafka/tests/0061-consumer_lag.cpp +25 -5
- package/deps/librdkafka/tests/0067-empty_topic.cpp +3 -0
- package/deps/librdkafka/tests/0068-produce_timeout.c +21 -23
- package/deps/librdkafka/tests/0069-consumer_add_parts.c +3 -7
- package/deps/librdkafka/tests/0075-retry.c +38 -1
- package/deps/librdkafka/tests/0076-produce_retry.c +2 -0
- package/deps/librdkafka/tests/0077-compaction.c +8 -2
- package/deps/librdkafka/tests/0080-admin_ut.c +34 -4
- package/deps/librdkafka/tests/0081-admin.c +455 -155
- package/deps/librdkafka/tests/0082-fetch_max_bytes.cpp +4 -0
- package/deps/librdkafka/tests/0083-cb_event.c +8 -3
- package/deps/librdkafka/tests/0084-destroy_flags.c +14 -18
- package/deps/librdkafka/tests/0085-headers.cpp +4 -0
- package/deps/librdkafka/tests/0086-purge.c +40 -7
- package/deps/librdkafka/tests/0088-produce_metadata_timeout.c +1 -1
- package/deps/librdkafka/tests/0089-max_poll_interval.c +12 -7
- package/deps/librdkafka/tests/0090-idempotence.c +1 -2
- package/deps/librdkafka/tests/0091-max_poll_interval_timeout.c +5 -7
- package/deps/librdkafka/tests/0092-mixed_msgver.c +6 -0
- package/deps/librdkafka/tests/0093-holb.c +8 -5
- package/deps/librdkafka/tests/0094-idempotence_msg_timeout.c +1 -0
- package/deps/librdkafka/tests/0097-ssl_verify.cpp +262 -70
- package/deps/librdkafka/tests/0098-consumer-txn.cpp +16 -16
- package/deps/librdkafka/tests/0099-commit_metadata.c +1 -1
- package/deps/librdkafka/tests/0101-fetch-from-follower.cpp +1 -1
- package/deps/librdkafka/tests/0102-static_group_rebalance.c +317 -16
- package/deps/librdkafka/tests/0103-transactions.c +7 -7
- package/deps/librdkafka/tests/0104-fetch_from_follower_mock.c +1 -0
- package/deps/librdkafka/tests/0105-transactions_mock.c +18 -11
- package/deps/librdkafka/tests/0106-cgrp_sess_timeout.c +35 -14
- package/deps/librdkafka/tests/0107-topic_recreate.c +2 -2
- package/deps/librdkafka/tests/0109-auto_create_topics.cpp +86 -26
- package/deps/librdkafka/tests/0110-batch_size.cpp +1 -2
- package/deps/librdkafka/tests/0112-assign_unknown_part.c +3 -14
- package/deps/librdkafka/tests/0113-cooperative_rebalance.cpp +248 -104
- package/deps/librdkafka/tests/0114-sticky_partitioning.cpp +3 -3
- package/deps/librdkafka/tests/0115-producer_auth.cpp +4 -1
- package/deps/librdkafka/tests/0116-kafkaconsumer_close.cpp +7 -5
- package/deps/librdkafka/tests/0117-mock_errors.c +15 -5
- package/deps/librdkafka/tests/0118-commit_rebalance.c +41 -8
- package/deps/librdkafka/tests/0119-consumer_auth.cpp +20 -1
- package/deps/librdkafka/tests/0120-asymmetric_subscription.c +8 -3
- package/deps/librdkafka/tests/0125-immediate_flush.c +1 -1
- package/deps/librdkafka/tests/0126-oauthbearer_oidc.c +323 -8
- package/deps/librdkafka/tests/0129-fetch_aborted_msgs.c +1 -0
- package/deps/librdkafka/tests/0132-strategy_ordering.c +12 -4
- package/deps/librdkafka/tests/0133-ssl_keys.c +28 -6
- package/deps/librdkafka/tests/0137-barrier_batch_consume.c +24 -14
- package/deps/librdkafka/tests/0139-offset_validation_mock.c +510 -2
- package/deps/librdkafka/tests/0140-commit_metadata.cpp +1 -1
- package/deps/librdkafka/tests/0142-reauthentication.c +37 -17
- package/deps/librdkafka/tests/0143-exponential_backoff_mock.c +39 -40
- package/deps/librdkafka/tests/0146-metadata_mock.c +76 -15
- package/deps/librdkafka/tests/0147-consumer_group_consumer_mock.c +952 -0
- package/deps/librdkafka/tests/0148-offset_fetch_commit_error_mock.c +563 -0
- package/deps/librdkafka/tests/0149-broker-same-host-port.c +140 -0
- package/deps/librdkafka/tests/0150-telemetry_mock.c +9 -6
- package/deps/librdkafka/tests/0151-purge-brokers.c +566 -0
- package/deps/librdkafka/tests/0152-rebootstrap.c +59 -0
- package/deps/librdkafka/tests/0153-memberid.c +128 -0
- package/deps/librdkafka/tests/CMakeLists.txt +6 -0
- package/deps/librdkafka/tests/LibrdkafkaTestApp.py +34 -9
- package/deps/librdkafka/tests/autotest.sh +0 -0
- package/deps/librdkafka/tests/broker_version_tests.py +0 -0
- package/deps/librdkafka/tests/buildbox.sh +0 -0
- package/deps/librdkafka/tests/cleanup-checker-tests.sh +0 -0
- package/deps/librdkafka/tests/cluster_testing.py +0 -0
- package/deps/librdkafka/tests/delete-test-topics.sh +0 -0
- package/deps/librdkafka/tests/fixtures/oauthbearer/jwt_assertion_template.json +10 -0
- package/deps/librdkafka/tests/fixtures/ssl/client.keystore.intermediate.p12 +0 -0
- package/deps/librdkafka/tests/fixtures/ssl/client.keystore.p12 +0 -0
- package/deps/librdkafka/tests/fixtures/ssl/client2.certificate.intermediate.pem +72 -0
- package/deps/librdkafka/tests/fixtures/ssl/client2.certificate.pem +42 -101
- package/deps/librdkafka/tests/fixtures/ssl/client2.intermediate.key +46 -0
- package/deps/librdkafka/tests/fixtures/ssl/client2.key +41 -29
- package/deps/librdkafka/tests/fixtures/ssl/create_keys.sh +112 -37
- package/deps/librdkafka/tests/gen-ssl-certs.sh +0 -0
- package/deps/librdkafka/tests/interactive_broker_version.py +0 -0
- package/deps/librdkafka/tests/java/Makefile +2 -1
- package/deps/librdkafka/tests/java/run-class.sh +0 -0
- package/deps/librdkafka/tests/lz4_manual_test.sh +0 -0
- package/deps/librdkafka/tests/multi-broker-version-test.sh +0 -0
- package/deps/librdkafka/tests/parse-refcnt.sh +0 -0
- package/deps/librdkafka/tests/performance_plot.py +0 -0
- package/deps/librdkafka/tests/requirements.txt +1 -1
- package/deps/librdkafka/tests/run-all-tests.sh +79 -0
- package/deps/librdkafka/tests/run-consumer-tests.sh +0 -0
- package/deps/librdkafka/tests/run-producer-tests.sh +0 -0
- package/deps/librdkafka/tests/run-test-batches.py +157 -0
- package/deps/librdkafka/tests/run-test.sh +0 -0
- package/deps/librdkafka/tests/sasl_test.py +0 -0
- package/deps/librdkafka/tests/test.c +478 -18
- package/deps/librdkafka/tests/test.h +62 -13
- package/deps/librdkafka/tests/testcpp.cpp +6 -1
- package/deps/librdkafka/tests/testcpp.h +30 -2
- package/deps/librdkafka/tests/testshared.h +16 -2
- package/deps/librdkafka/tests/tools/stats/graph.py +0 -0
- package/deps/librdkafka/tests/tools/stats/to_csv.py +1 -1
- package/deps/librdkafka/tests/trivup/trivup-0.14.0.tar.gz +0 -0
- package/deps/librdkafka/tests/until-fail.sh +0 -0
- package/deps/librdkafka/tests/xxxx-metadata.cpp +1 -1
- package/deps/librdkafka/vcpkg.json +1 -1
- package/deps/librdkafka/win32/setup-msys2.ps1 +24 -8
- package/deps/librdkafka/win32/setup-vcpkg.ps1 +28 -6
- package/deps/librdkafka/win32/tests/tests.vcxproj +6 -0
- package/deps/librdkafka/win32/wingetopt.h +5 -4
- package/errors.d.ts +27 -1
- package/lib/error.js +29 -3
- package/make_docs.sh +0 -0
- package/package.json +11 -11
- package/run_docker.sh +0 -0
- package/src/callbacks.cc +6 -9
- package/src/callbacks.h +1 -5
- package/test/kafka-consumer-worker.js +10 -7
- package/test/kafka-consumer.spec.js +32 -21
- package/ci/update-version.js +0 -123
- package/deps/librdkafka/.semaphore/project.yml +0 -43
- package/deps/librdkafka/.semaphore/project_public.yml +0 -20
- package/deps/librdkafka/win32/install-openssl.ps1 +0 -33
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
|
|
42
42
|
/* Typical include path would be <librdkafka/rdkafka.h>, but this program
|
|
43
43
|
* is builtin from within the librdkafka source tree and thus differs. */
|
|
44
|
-
|
|
44
|
+
// #include <librdkafka/rdkafka.h>
|
|
45
45
|
#include "rdkafka.h"
|
|
46
46
|
|
|
47
47
|
|
|
@@ -77,8 +77,9 @@ int main(int argc, char **argv) {
|
|
|
77
77
|
char errstr[512]; /* librdkafka API error reporting buffer */
|
|
78
78
|
const char *brokers; /* Argument: broker list */
|
|
79
79
|
const char *groupid; /* Argument: Consumer group id */
|
|
80
|
-
char
|
|
81
|
-
|
|
80
|
+
const char *group_protocol;
|
|
81
|
+
char **topics; /* Argument: list of topics to subscribe to */
|
|
82
|
+
int topic_cnt; /* Number of topics to subscribe to */
|
|
82
83
|
rd_kafka_topic_partition_list_t *subscription; /* Subscribed topics */
|
|
83
84
|
int i;
|
|
84
85
|
|
|
@@ -88,15 +89,17 @@ int main(int argc, char **argv) {
|
|
|
88
89
|
if (argc < 4) {
|
|
89
90
|
fprintf(stderr,
|
|
90
91
|
"%% Usage: "
|
|
91
|
-
"%s <broker> <group.id> <topic1>
|
|
92
|
+
"%s <broker> <group.id> <group.protocol> <topic1> "
|
|
93
|
+
"<topic2>..\n",
|
|
92
94
|
argv[0]);
|
|
93
95
|
return 1;
|
|
94
96
|
}
|
|
95
97
|
|
|
96
|
-
brokers
|
|
97
|
-
groupid
|
|
98
|
-
|
|
99
|
-
|
|
98
|
+
brokers = argv[1];
|
|
99
|
+
groupid = argv[2];
|
|
100
|
+
group_protocol = argv[3];
|
|
101
|
+
topics = &argv[4];
|
|
102
|
+
topic_cnt = argc - 4;
|
|
100
103
|
|
|
101
104
|
|
|
102
105
|
/*
|
|
@@ -127,6 +130,13 @@ int main(int argc, char **argv) {
|
|
|
127
130
|
return 1;
|
|
128
131
|
}
|
|
129
132
|
|
|
133
|
+
if (rd_kafka_conf_set(conf, "group.protocol", group_protocol, errstr,
|
|
134
|
+
sizeof(errstr)) != RD_KAFKA_CONF_OK) {
|
|
135
|
+
fprintf(stderr, "%s\n", errstr);
|
|
136
|
+
rd_kafka_conf_destroy(conf);
|
|
137
|
+
return 1;
|
|
138
|
+
}
|
|
139
|
+
|
|
130
140
|
/* If there is no previously committed offset for a partition
|
|
131
141
|
* the auto.offset.reset strategy will be used to decide where
|
|
132
142
|
* in the partition to start fetching messages.
|
|
@@ -164,15 +164,31 @@ print_group_member_info(const rd_kafka_MemberDescription_t *member) {
|
|
|
164
164
|
rd_kafka_MemberDescription_host(member));
|
|
165
165
|
const rd_kafka_MemberAssignment_t *assignment =
|
|
166
166
|
rd_kafka_MemberDescription_assignment(member);
|
|
167
|
-
const rd_kafka_topic_partition_list_t *
|
|
167
|
+
const rd_kafka_topic_partition_list_t *assigned_topic_partitions =
|
|
168
168
|
rd_kafka_MemberAssignment_partitions(assignment);
|
|
169
|
-
|
|
169
|
+
const rd_kafka_MemberAssignment_t *target_assignment =
|
|
170
|
+
rd_kafka_MemberDescription_target_assignment(member);
|
|
171
|
+
const rd_kafka_topic_partition_list_t *target_topic_partitions =
|
|
172
|
+
target_assignment
|
|
173
|
+
? rd_kafka_MemberAssignment_partitions(target_assignment)
|
|
174
|
+
: NULL;
|
|
175
|
+
if (!assigned_topic_partitions) {
|
|
170
176
|
printf(" No assignment\n");
|
|
171
|
-
} else if (
|
|
177
|
+
} else if (assigned_topic_partitions->cnt == 0) {
|
|
172
178
|
printf(" Empty assignment\n");
|
|
173
179
|
} else {
|
|
174
180
|
printf(" Assignment:\n");
|
|
175
|
-
print_partition_list(stdout,
|
|
181
|
+
print_partition_list(stdout, assigned_topic_partitions, 0,
|
|
182
|
+
" ");
|
|
183
|
+
}
|
|
184
|
+
if (!target_topic_partitions) {
|
|
185
|
+
printf(" No target assignment\n");
|
|
186
|
+
} else if (target_topic_partitions->cnt == 0) {
|
|
187
|
+
printf(" Empty target assignment\n");
|
|
188
|
+
} else {
|
|
189
|
+
printf(" Target assignment:\n");
|
|
190
|
+
print_partition_list(stdout, target_topic_partitions, 0,
|
|
191
|
+
" ");
|
|
176
192
|
}
|
|
177
193
|
}
|
|
178
194
|
|
|
@@ -194,6 +210,8 @@ static void print_group_info(const rd_kafka_ConsumerGroupDescription_t *group) {
|
|
|
194
210
|
rd_kafka_ConsumerGroupDescription_partition_assignor(group);
|
|
195
211
|
rd_kafka_consumer_group_state_t state =
|
|
196
212
|
rd_kafka_ConsumerGroupDescription_state(group);
|
|
213
|
+
rd_kafka_consumer_group_type_t type =
|
|
214
|
+
rd_kafka_ConsumerGroupDescription_type(group);
|
|
197
215
|
authorized_operations =
|
|
198
216
|
rd_kafka_ConsumerGroupDescription_authorized_operations(
|
|
199
217
|
group, &authorized_operations_cnt);
|
|
@@ -212,9 +230,10 @@ static void print_group_info(const rd_kafka_ConsumerGroupDescription_t *group) {
|
|
|
212
230
|
rd_kafka_Node_port(coordinator));
|
|
213
231
|
}
|
|
214
232
|
printf(
|
|
215
|
-
"Group \"%s\", partition assignor \"%s\", "
|
|
216
|
-
" state %s%s, with %" PRId32 " member(s)\n",
|
|
233
|
+
"Group \"%s\", partition assignor \"%s\", type \"%s\""
|
|
234
|
+
" state \"%s\"%s, with %" PRId32 " member(s)\n",
|
|
217
235
|
group_id, partition_assignor,
|
|
236
|
+
rd_kafka_consumer_group_type_name(type),
|
|
218
237
|
rd_kafka_consumer_group_state_name(state), coordinator_desc,
|
|
219
238
|
member_cnt);
|
|
220
239
|
for (j = 0; j < authorized_operations_cnt; j++) {
|
|
@@ -183,11 +183,10 @@ cmd_incremental_alter_configs(rd_kafka_conf_t *conf, int argc, char **argv) {
|
|
|
183
183
|
rd_kafka_ConfigResource_t *config;
|
|
184
184
|
rd_kafka_AlterConfigOpType_t op_type;
|
|
185
185
|
rd_kafka_ResourceType_t restype =
|
|
186
|
-
!strcmp(restype_s, "TOPIC")
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
: RD_KAFKA_RESOURCE_UNKNOWN;
|
|
186
|
+
!strcmp(restype_s, "TOPIC") ? RD_KAFKA_RESOURCE_TOPIC
|
|
187
|
+
: !strcmp(restype_s, "BROKER") ? RD_KAFKA_RESOURCE_BROKER
|
|
188
|
+
: !strcmp(restype_s, "GROUP") ? RD_KAFKA_RESOURCE_GROUP
|
|
189
|
+
: RD_KAFKA_RESOURCE_UNKNOWN;
|
|
191
190
|
|
|
192
191
|
if (restype == RD_KAFKA_RESOURCE_UNKNOWN) {
|
|
193
192
|
usage("Invalid resource type: %s", restype_s);
|
|
@@ -194,14 +194,11 @@ static void errorString(const std::string &name,
|
|
|
194
194
|
const std::string &topic,
|
|
195
195
|
const std::string *key,
|
|
196
196
|
const std::string &value) {
|
|
197
|
-
std::cout << "{ "
|
|
198
|
-
<< "\"
|
|
199
|
-
<< "\"
|
|
200
|
-
<<
|
|
201
|
-
<< "\"
|
|
202
|
-
<< "\"key\": \"" << (key ? *key : "NULL") << "\", "
|
|
203
|
-
<< "\"value\": \"" << value << "\" "
|
|
204
|
-
<< "}" << std::endl;
|
|
197
|
+
std::cout << "{ " << "\"name\": \"" << name << "\", " << "\"_time\": \""
|
|
198
|
+
<< now() << "\", " << "\"message\": \"" << errmsg << "\", "
|
|
199
|
+
<< "\"topic\": \"" << topic << "\", " << "\"key\": \""
|
|
200
|
+
<< (key ? *key : "NULL") << "\", " << "\"value\": \"" << value
|
|
201
|
+
<< "\" " << "}" << std::endl;
|
|
205
202
|
}
|
|
206
203
|
|
|
207
204
|
|
|
@@ -211,15 +208,12 @@ static void successString(const std::string &name,
|
|
|
211
208
|
int64_t offset,
|
|
212
209
|
const std::string *key,
|
|
213
210
|
const std::string &value) {
|
|
214
|
-
std::cout << "{ "
|
|
215
|
-
<< "\"
|
|
216
|
-
<< "\"_time\": \"" << now() << "\", "
|
|
217
|
-
<< "\"topic\": \"" << topic << "\", "
|
|
211
|
+
std::cout << "{ " << "\"name\": \"" << name << "\", " << "\"_time\": \""
|
|
212
|
+
<< now() << "\", " << "\"topic\": \"" << topic << "\", "
|
|
218
213
|
<< "\"partition\": " << partition << ", "
|
|
219
|
-
<< "\"offset\": " << offset << ", "
|
|
220
|
-
<<
|
|
221
|
-
<< "\"
|
|
222
|
-
<< "}" << std::endl;
|
|
214
|
+
<< "\"offset\": " << offset << ", " << "\"key\": \""
|
|
215
|
+
<< (key ? *key : "NULL") << "\", " << "\"value\": \"" << value
|
|
216
|
+
<< "\" " << "}" << std::endl;
|
|
223
217
|
}
|
|
224
218
|
|
|
225
219
|
|
|
@@ -231,15 +225,11 @@ static void offsetStatus(bool success,
|
|
|
231
225
|
const std::string &errstr) {
|
|
232
226
|
std::cout << "{ "
|
|
233
227
|
"\"name\": \"offsets_committed\", "
|
|
234
|
-
<< "\"success\": " << success << ", "
|
|
235
|
-
<< "\"offsets\": [ "
|
|
236
|
-
<< " { "
|
|
228
|
+
<< "\"success\": " << success << ", " << "\"offsets\": [ " << " { "
|
|
237
229
|
<< " \"topic\": \"" << topic << "\", "
|
|
238
230
|
<< " \"partition\": " << partition << ", "
|
|
239
|
-
<< " \"offset\": " << (int)offset << ", "
|
|
240
|
-
<<
|
|
241
|
-
<< " } "
|
|
242
|
-
<< "] }" << std::endl;
|
|
231
|
+
<< " \"offset\": " << (int)offset << ", " << " \"error\": \""
|
|
232
|
+
<< errstr << "\" " << " } " << "] }" << std::endl;
|
|
243
233
|
}
|
|
244
234
|
#endif
|
|
245
235
|
|
|
@@ -341,8 +331,7 @@ static void report_records_consumed(int immediate) {
|
|
|
341
331
|
<< "\"count\": "
|
|
342
332
|
<< (state.consumer.consumedMessages -
|
|
343
333
|
state.consumer.consumedMessagesLastReported)
|
|
344
|
-
<< ", "
|
|
345
|
-
<< "\"partitions\": [ ";
|
|
334
|
+
<< ", " << "\"partitions\": [ ";
|
|
346
335
|
|
|
347
336
|
for (std::map<std::string, Assignment>::iterator ii = assignments->begin();
|
|
348
337
|
ii != assignments->end(); ii++) {
|
|
@@ -352,8 +341,7 @@ static void report_records_consumed(int immediate) {
|
|
|
352
341
|
<< " \"topic\": \"" << a->topic << "\", "
|
|
353
342
|
<< " \"partition\": " << a->partition << ", "
|
|
354
343
|
<< " \"minOffset\": " << a->minOffset << ", "
|
|
355
|
-
<< " \"maxOffset\": " << a->maxOffset << " "
|
|
356
|
-
<< " } ";
|
|
344
|
+
<< " \"maxOffset\": " << a->maxOffset << " " << " } ";
|
|
357
345
|
a->minOffset = -1;
|
|
358
346
|
}
|
|
359
347
|
|
|
@@ -378,8 +366,7 @@ class ExampleOffsetCommitCb : public RdKafka::OffsetCommitCb {
|
|
|
378
366
|
*/
|
|
379
367
|
report_records_consumed(1);
|
|
380
368
|
|
|
381
|
-
std::cout << "{ "
|
|
382
|
-
<< "\"name\": \"offsets_committed\", "
|
|
369
|
+
std::cout << "{ " << "\"name\": \"offsets_committed\", "
|
|
383
370
|
<< "\"success\": " << (err ? "false" : "true") << ", "
|
|
384
371
|
<< "\"error\": \"" << (err ? RdKafka::err2str(err) : "") << "\", "
|
|
385
372
|
<< "\"_autocommit\": "
|
|
@@ -387,15 +374,14 @@ class ExampleOffsetCommitCb : public RdKafka::OffsetCommitCb {
|
|
|
387
374
|
<< "\"offsets\": [ ";
|
|
388
375
|
assert(offsets.size() > 0);
|
|
389
376
|
for (unsigned int i = 0; i < offsets.size(); i++) {
|
|
390
|
-
std::cout << (i == 0 ? "" : ", ") << "{ "
|
|
391
|
-
<<
|
|
377
|
+
std::cout << (i == 0 ? "" : ", ") << "{ " << " \"topic\": \""
|
|
378
|
+
<< offsets[i]->topic() << "\", "
|
|
392
379
|
<< " \"partition\": " << offsets[i]->partition() << ", "
|
|
393
380
|
<< " \"offset\": " << (int)offsets[i]->offset() << ", "
|
|
394
381
|
<< " \"error\": \""
|
|
395
382
|
<< (offsets[i]->err() ? RdKafka::err2str(offsets[i]->err())
|
|
396
383
|
: "")
|
|
397
|
-
<< "\" "
|
|
398
|
-
<< " }";
|
|
384
|
+
<< "\" " << " }";
|
|
399
385
|
}
|
|
400
386
|
std::cout << " ] }" << std::endl;
|
|
401
387
|
}
|
|
@@ -427,8 +413,8 @@ static void do_commit(RdKafka::KafkaConsumer *consumer, int immediate) {
|
|
|
427
413
|
RdKafka::ErrorCode err;
|
|
428
414
|
err = consumer->commitSync(&ex_offset_commit_cb);
|
|
429
415
|
|
|
430
|
-
std::cerr << now() << ": "
|
|
431
|
-
<<
|
|
416
|
+
std::cerr << now() << ": " << "sync commit returned " << RdKafka::err2str(err)
|
|
417
|
+
<< std::endl;
|
|
432
418
|
|
|
433
419
|
state.consumer.consumedMessagesAtLastCommit = state.consumer.consumedMessages;
|
|
434
420
|
}
|
|
@@ -526,8 +512,8 @@ class ExampleRebalanceCb : public RdKafka::RebalanceCb {
|
|
|
526
512
|
const std::vector<RdKafka::TopicPartition *> &partitions) {
|
|
527
513
|
std::ostringstream out;
|
|
528
514
|
for (unsigned int i = 0; i < partitions.size(); i++)
|
|
529
|
-
out << (i == 0 ? "" : ", ") << "{ "
|
|
530
|
-
<<
|
|
515
|
+
out << (i == 0 ? "" : ", ") << "{ " << " \"topic\": \""
|
|
516
|
+
<< partitions[i]->topic() << "\", "
|
|
531
517
|
<< " \"partition\": " << partitions[i]->partition() << " }";
|
|
532
518
|
return out.str();
|
|
533
519
|
}
|
|
@@ -549,13 +535,11 @@ class ExampleRebalanceCb : public RdKafka::RebalanceCb {
|
|
|
549
535
|
consumer->unassign();
|
|
550
536
|
}
|
|
551
537
|
|
|
552
|
-
std::cout << "{ "
|
|
553
|
-
<< "\"name\": \"partitions_"
|
|
538
|
+
std::cout << "{ " << "\"name\": \"partitions_"
|
|
554
539
|
<< (err == RdKafka::ERR__ASSIGN_PARTITIONS ? "assigned"
|
|
555
540
|
: "revoked")
|
|
556
|
-
<< "\", "
|
|
557
|
-
<< "
|
|
558
|
-
<< std::endl;
|
|
541
|
+
<< "\", " << "\"partitions\": [ " << part_list_json(partitions)
|
|
542
|
+
<< "] }" << std::endl;
|
|
559
543
|
}
|
|
560
544
|
};
|
|
561
545
|
|
|
@@ -74,10 +74,9 @@ class PrintingSSLVerifyCb : public RdKafka::SslCertificateVerifyCb {
|
|
|
74
74
|
const char *buf,
|
|
75
75
|
size_t size,
|
|
76
76
|
std::string &errstr) {
|
|
77
|
-
std::cout << "ssl_cert_verify_cb :"
|
|
78
|
-
<< "
|
|
79
|
-
<< ",
|
|
80
|
-
<< ", buf size=" << size << std::endl;
|
|
77
|
+
std::cout << "ssl_cert_verify_cb :" << ": broker_name=" << broker_name
|
|
78
|
+
<< ", broker_id=" << broker_id << ", x509_error=" << *x509_error
|
|
79
|
+
<< ", depth=" << depth << ", buf size=" << size << std::endl;
|
|
81
80
|
|
|
82
81
|
return true;
|
|
83
82
|
}
|
|
@@ -133,8 +133,8 @@ int main(int argc, char **argv) {
|
|
|
133
133
|
/*
|
|
134
134
|
* Read messages from stdin and produce to broker.
|
|
135
135
|
*/
|
|
136
|
-
std::cout << "% Type message value and hit enter "
|
|
137
|
-
<<
|
|
136
|
+
std::cout << "% Type message value and hit enter " << "to produce message."
|
|
137
|
+
<< std::endl;
|
|
138
138
|
|
|
139
139
|
for (std::string line; run && std::getline(std::cin, line);) {
|
|
140
140
|
if (line.empty()) {
|
|
@@ -138,11 +138,10 @@ int64_t parse_int(const char *what, const char *str) {
|
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
rd_kafka_ScramMechanism_t parse_mechanism(const char *arg) {
|
|
141
|
-
return !strcmp(arg, "SCRAM-SHA-256")
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
: RD_KAFKA_SCRAM_MECHANISM_UNKNOWN;
|
|
141
|
+
return !strcmp(arg, "SCRAM-SHA-256") ? RD_KAFKA_SCRAM_MECHANISM_SHA_256
|
|
142
|
+
: !strcmp(arg, "SCRAM-SHA-512")
|
|
143
|
+
? RD_KAFKA_SCRAM_MECHANISM_SHA_512
|
|
144
|
+
: RD_KAFKA_SCRAM_MECHANISM_UNKNOWN;
|
|
146
145
|
}
|
|
147
146
|
|
|
148
147
|
static void print_descriptions(
|
|
@@ -211,9 +211,10 @@ class PrintingSSLVerifyCb : public RdKafka::SslCertificateVerifyCb {
|
|
|
211
211
|
CertGetNameStringA(ctx, CERT_NAME_FRIENDLY_DISPLAY_TYPE,
|
|
212
212
|
CERT_NAME_ISSUER_FLAG, NULL, issuer, sizeof(issuer));
|
|
213
213
|
|
|
214
|
-
std::cerr << "Broker " << broker_name << " (" << broker_id
|
|
215
|
-
<< "certificate depth " << depth << ", X509 error "
|
|
216
|
-
<< ", subject " << subject << ", issuer " << issuer
|
|
214
|
+
std::cerr << "Broker " << broker_name << " (" << broker_id
|
|
215
|
+
<< "): " << "certificate depth " << depth << ", X509 error "
|
|
216
|
+
<< *x509_error << ", subject " << subject << ", issuer " << issuer
|
|
217
|
+
<< std::endl;
|
|
217
218
|
|
|
218
219
|
if (ctx)
|
|
219
220
|
CertFreeCertificateContext(ctx);
|
|
File without changes
|
|
File without changes
|
|
@@ -45,6 +45,14 @@ Error strings must not contain a trailing period.
|
|
|
45
45
|
will be a breaking API change.
|
|
46
46
|
|
|
47
47
|
|
|
48
|
+
### Max Apache Kafka RPC versions
|
|
49
|
+
|
|
50
|
+
Copy the first three columns of the table in `INTRODUCTION.md` to a temporary file
|
|
51
|
+
and run the script
|
|
52
|
+
`./packaging/tools/update_rpcs_max_versions.py <kafka_folder> <input_file>`
|
|
53
|
+
for getting the updated columns in stdout.
|
|
54
|
+
|
|
55
|
+
|
|
48
56
|
## Run regression tests
|
|
49
57
|
|
|
50
58
|
**Build tests:**
|
|
File without changes
|
|
@@ -4,10 +4,13 @@ This small set of scripts verifies the librdkafka packages that
|
|
|
4
4
|
are part of the Confluent Platform.
|
|
5
5
|
|
|
6
6
|
The base_url is the http S3 bucket path to the a PR job, or similar.
|
|
7
|
+
Pass the platform (e.g. linux/arm64) and the expected librdkafka version too.
|
|
7
8
|
|
|
8
9
|
## How to use
|
|
9
10
|
|
|
10
|
-
|
|
11
|
+
```
|
|
12
|
+
$ ./verify-packages.sh https://packages.confluent.io linux/amd64 2.8.0
|
|
13
|
+
```
|
|
11
14
|
|
|
12
15
|
Requires docker and patience.
|
|
13
16
|
|
|
@@ -15,9 +15,17 @@ int main(int argc, char **argv) {
|
|
|
15
15
|
printf("librdkafka %s (0x%x, define: 0x%x)\n", rd_kafka_version_str(),
|
|
16
16
|
rd_kafka_version(), RD_KAFKA_VERSION);
|
|
17
17
|
|
|
18
|
-
if (argc >
|
|
19
|
-
printf(
|
|
20
|
-
|
|
18
|
+
if (argc < 2 || (argc > 2 && (argc & 1))) {
|
|
19
|
+
printf(
|
|
20
|
+
"Usage: %s <version_string> [config.property config-value "
|
|
21
|
+
"..]\n",
|
|
22
|
+
argv[0]);
|
|
23
|
+
return 1;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
if (!strstr(rd_kafka_version_str(), argv[1])) {
|
|
27
|
+
printf("ERROR: version string mismatch: expected %s, got %s\n",
|
|
28
|
+
argv[1], rd_kafka_version_str());
|
|
21
29
|
return 1;
|
|
22
30
|
}
|
|
23
31
|
|
|
@@ -46,7 +54,7 @@ int main(int argc, char **argv) {
|
|
|
46
54
|
printf("all expected features matched: %s\n", expected_features);
|
|
47
55
|
|
|
48
56
|
/* Apply config from argv key value pairs */
|
|
49
|
-
for (i =
|
|
57
|
+
for (i = 2; i + 1 < argc; i += 2) {
|
|
50
58
|
printf("verifying config %s=%s\n", argv[i], argv[i + 1]);
|
|
51
59
|
if (rd_kafka_conf_set(conf, argv[i], argv[i + 1], errstr,
|
|
52
60
|
sizeof(errstr)) != RD_KAFKA_CONF_OK) {
|
|
@@ -3,22 +3,22 @@
|
|
|
3
3
|
|
|
4
4
|
set -e
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
base_url=$1
|
|
7
|
+
version=$2
|
|
8
8
|
|
|
9
9
|
if [[ -z $base_url ]]; then
|
|
10
|
-
echo "Usage: $0 <
|
|
10
|
+
echo "Usage: $0 <base_url>"
|
|
11
11
|
exit 1
|
|
12
12
|
fi
|
|
13
13
|
|
|
14
14
|
apt-get update
|
|
15
15
|
apt-get install -y apt-transport-https wget gnupg2 lsb-release
|
|
16
16
|
|
|
17
|
-
wget -qO - ${base_url}/deb
|
|
17
|
+
wget -qO - ${base_url}/clients/deb/archive.key | apt-key add -
|
|
18
18
|
|
|
19
19
|
release=$(lsb_release -cs)
|
|
20
20
|
cat >/etc/apt/sources.list.d/Confluent.list <<EOF
|
|
21
|
-
deb
|
|
21
|
+
deb $base_url/clients/deb ${release} main
|
|
22
22
|
EOF
|
|
23
23
|
|
|
24
24
|
apt-get update
|
|
@@ -26,7 +26,7 @@ apt-get install -y librdkafka-dev gcc
|
|
|
26
26
|
|
|
27
27
|
gcc /v/check_features.c -o /tmp/check_features -lrdkafka
|
|
28
28
|
|
|
29
|
-
/tmp/check_features
|
|
29
|
+
/tmp/check_features $version
|
|
30
30
|
|
|
31
31
|
# FIXME: publish plugins in newer versions
|
|
32
32
|
# apt-get install -y confluent-librdkafka-plugins
|
|
@@ -2,47 +2,68 @@
|
|
|
2
2
|
#
|
|
3
3
|
# Verifies RPM and DEB packages from Confluent Platform
|
|
4
4
|
#
|
|
5
|
+
base_url=$1
|
|
6
|
+
platform=$2
|
|
7
|
+
version=$3
|
|
5
8
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
if [[ -z $base_url ]]; then
|
|
10
|
-
echo "Usage: $0 <CP-M.m-version> <base-url>"
|
|
9
|
+
if [[ -z $base_url || -z $version ]]; then
|
|
10
|
+
echo "Usage: $0 <base-url> <platform> <version>"
|
|
11
11
|
echo ""
|
|
12
|
-
echo " <CP-M.m-version> is the Major.minor version of CP, e.g., 5.3"
|
|
13
12
|
echo " <base-url> is the release base bucket URL"
|
|
13
|
+
echo " <platform> is platform to verify (e.g. linux/amd64)"
|
|
14
|
+
echo " <version> is the expected version"
|
|
14
15
|
exit 1
|
|
15
16
|
fi
|
|
16
17
|
|
|
17
18
|
thisdir="$( cd "$(dirname "$0")" ; pwd -P )"
|
|
18
19
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
docker run -v $thisdir:/v
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
echo "
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
deb_status=$?
|
|
20
|
+
verify_debian() {
|
|
21
|
+
local version=$2
|
|
22
|
+
docker run -v $thisdir:/v $1 /v/verify-deb.sh $base_url $version
|
|
23
|
+
deb_status=$?
|
|
24
|
+
if [[ $deb_status == 0 ]]; then
|
|
25
|
+
echo "SUCCESS: Debian based $1 $2 packages verified"
|
|
26
|
+
else
|
|
27
|
+
echo "ERROR: Debian based $1 $2 package verification failed"
|
|
28
|
+
exit 1
|
|
29
|
+
fi
|
|
30
|
+
}
|
|
31
31
|
|
|
32
|
+
verify_rpm() {
|
|
33
|
+
local version=$2
|
|
34
|
+
docker run -v $thisdir:/v $1 /v/verify-rpm.sh $base_url $version
|
|
35
|
+
rpm_status=$?
|
|
36
|
+
if [[ $rpm_status == 0 ]]; then
|
|
37
|
+
echo "SUCCESS: RPM $1 $2 packages verified"
|
|
38
|
+
else
|
|
39
|
+
echo "ERROR: RPM $1 $2 package verification failed"
|
|
40
|
+
exit 1
|
|
41
|
+
fi
|
|
42
|
+
}
|
|
32
43
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
echo "
|
|
37
|
-
|
|
44
|
+
verify_rpm_distros() {
|
|
45
|
+
local platform=$1
|
|
46
|
+
local version=$2
|
|
47
|
+
echo "#### Verifying RPM packages for $platform ####"
|
|
48
|
+
# Last RHEL 8 version is 2.4.0
|
|
49
|
+
verify_rpm rockylinux:8 "2.4.0"
|
|
50
|
+
verify_rpm rockylinux:9 $version
|
|
51
|
+
}
|
|
38
52
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
echo "
|
|
43
|
-
|
|
53
|
+
verify_debian_distros() {
|
|
54
|
+
local platform=$1
|
|
55
|
+
local version=$2
|
|
56
|
+
echo "#### Verifying Debian packages for $platform ####"
|
|
57
|
+
verify_debian debian:11 $version
|
|
58
|
+
verify_debian debian:12 $version
|
|
59
|
+
verify_debian ubuntu:20.04 $version
|
|
60
|
+
verify_debian ubuntu:22.04 $version
|
|
61
|
+
verify_debian ubuntu:24.04 $version
|
|
62
|
+
}
|
|
44
63
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
64
|
+
verify_distros() {
|
|
65
|
+
verify_rpm_distros $1 $2
|
|
66
|
+
verify_debian_distros $1 $2
|
|
67
|
+
}
|
|
48
68
|
|
|
69
|
+
verify_distros $platform $version
|
|
@@ -3,22 +3,15 @@
|
|
|
3
3
|
|
|
4
4
|
set -e
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
base_url=$1
|
|
7
|
+
version=$2
|
|
8
8
|
|
|
9
9
|
if [[ -z $base_url ]]; then
|
|
10
|
-
echo "Usage: $0 <
|
|
10
|
+
echo "Usage: $0 <base_url>"
|
|
11
11
|
exit 1
|
|
12
12
|
fi
|
|
13
13
|
|
|
14
14
|
cat >/etc/yum.repos.d/Confluent.repo <<EOF
|
|
15
|
-
[Confluent]
|
|
16
|
-
name=Confluent repository
|
|
17
|
-
baseurl=$base_url/rpm/${cpver}
|
|
18
|
-
gpgcheck=1
|
|
19
|
-
gpgkey=$base_url/rpm/${cpver}/archive.key
|
|
20
|
-
enabled=1
|
|
21
|
-
|
|
22
15
|
[Confluent-Clients]
|
|
23
16
|
name=Confluent Clients repository
|
|
24
17
|
baseurl=$base_url/clients/rpm/centos/\$releasever/\$basearch
|
|
@@ -31,9 +24,9 @@ yum install -y librdkafka-devel gcc
|
|
|
31
24
|
|
|
32
25
|
gcc /v/check_features.c -o /tmp/check_features -lrdkafka
|
|
33
26
|
|
|
34
|
-
/tmp/check_features
|
|
27
|
+
/tmp/check_features $version
|
|
35
28
|
|
|
36
29
|
# Verify plugins
|
|
37
|
-
yum install -y confluent-librdkafka-plugins
|
|
30
|
+
# yum install -y confluent-librdkafka-plugins
|
|
38
31
|
|
|
39
|
-
/tmp/check_features plugin.library.paths monitoring-interceptor
|
|
32
|
+
# /tmp/check_features plugin.library.paths monitoring-interceptor
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/deps/librdkafka/packaging/mingw-w64/{travis-before-install.sh → export-variables.sh}
RENAMED
|
@@ -8,13 +8,6 @@ export msys2+='& C:\\msys64\\msys2_shell.cmd -defterm -no-start'
|
|
|
8
8
|
export mingw64="$msys2 -mingw64 -full-path -here -c "\"\$@"\" --"
|
|
9
9
|
export msys2+=" -msys2 -c "\"\$@"\" --"
|
|
10
10
|
|
|
11
|
-
# Have to update pacman first or choco upgrade will failure due to migration
|
|
12
|
-
# to zstd instead of xz compression
|
|
13
|
-
$msys2 pacman -Sy --noconfirm pacman
|
|
14
|
-
|
|
15
|
-
## Install more MSYS2 packages from https://packages.msys2.org/base here
|
|
16
|
-
$msys2 pacman --sync --noconfirm --needed mingw-w64-x86_64-gcc mingw-w64-x86_64-make mingw-w64-x86_64-cmake mingw-w64-x86_64-openssl mingw-w64-x86_64-lz4 mingw-w64-x86_64-zstd
|
|
17
|
-
|
|
18
11
|
taskkill //IM gpg-agent.exe //F || true # https://travis-ci.community/t/4967
|
|
19
12
|
export PATH=/C/msys64/mingw64/bin:$PATH
|
|
20
13
|
export MAKE=mingw32-make # so that Autotools can find it
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
boto3
|
|
2
|
-
rpmfile
|
|
3
|
-
filemagic
|
|
1
|
+
boto3~=1.38
|
|
2
|
+
rpmfile~=1.1
|
|
3
|
+
filemagic~=1.6
|