nixosTests.kafka: port to python
This commit is contained in:
parent
8ecd07f9e3
commit
f7b274d957
@ -3,11 +3,10 @@
|
|||||||
pkgs ? import ../.. { inherit system config; }
|
pkgs ? import ../.. { inherit system config; }
|
||||||
}:
|
}:
|
||||||
|
|
||||||
with import ../lib/testing.nix { inherit system pkgs; };
|
|
||||||
with pkgs.lib;
|
with pkgs.lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
makeKafkaTest = name: kafkaPackage: (makeTest {
|
makeKafkaTest = name: kafkaPackage: (import ./make-test-python.nix ({
|
||||||
inherit name;
|
inherit name;
|
||||||
meta = with pkgs.stdenv.lib.maintainers; {
|
meta = with pkgs.stdenv.lib.maintainers; {
|
||||||
maintainers = [ nequissimus ];
|
maintainers = [ nequissimus ];
|
||||||
@ -45,24 +44,40 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
testScript = ''
|
testScript = ''
|
||||||
startAll;
|
start_all()
|
||||||
|
|
||||||
$zookeeper1->waitForUnit("default.target");
|
zookeeper1.wait_for_unit("default.target")
|
||||||
$zookeeper1->waitForUnit("zookeeper.service");
|
zookeeper1.wait_for_unit("zookeeper.service")
|
||||||
$zookeeper1->waitForOpenPort(2181);
|
zookeeper1.wait_for_open_port(2181)
|
||||||
|
|
||||||
$kafka->waitForUnit("default.target");
|
kafka.wait_for_unit("default.target")
|
||||||
$kafka->waitForUnit("apache-kafka.service");
|
kafka.wait_for_unit("apache-kafka.service")
|
||||||
$kafka->waitForOpenPort(9092);
|
kafka.wait_for_open_port(9092)
|
||||||
|
|
||||||
$kafka->waitUntilSucceeds("${kafkaPackage}/bin/kafka-topics.sh --create --zookeeper zookeeper1:2181 --partitions 1 --replication-factor 1 --topic testtopic");
|
kafka.wait_until_succeeds(
|
||||||
$kafka->mustSucceed("echo 'test 1' | ${kafkaPackage}/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic testtopic");
|
"${kafkaPackage}/bin/kafka-topics.sh --create "
|
||||||
|
+ "--zookeeper zookeeper1:2181 --partitions 1 "
|
||||||
|
+ "--replication-factor 1 --topic testtopic"
|
||||||
|
)
|
||||||
|
kafka.succeed(
|
||||||
|
"echo 'test 1' | "
|
||||||
|
+ "${kafkaPackage}/bin/kafka-console-producer.sh "
|
||||||
|
+ "--broker-list localhost:9092 --topic testtopic"
|
||||||
|
)
|
||||||
'' + (if name == "kafka_0_9" then ''
|
'' + (if name == "kafka_0_9" then ''
|
||||||
$kafka->mustSucceed("${kafkaPackage}/bin/kafka-console-consumer.sh --zookeeper zookeeper1:2181 --topic testtopic --from-beginning --max-messages 1 | grep 'test 1'");
|
assert "test 1" in kafka.succeed(
|
||||||
|
"${kafkaPackage}/bin/kafka-console-consumer.sh "
|
||||||
|
+ "--zookeeper zookeeper1:2181 --topic testtopic "
|
||||||
|
+ "--from-beginning --max-messages 1"
|
||||||
|
)
|
||||||
'' else ''
|
'' else ''
|
||||||
$kafka->mustSucceed("${kafkaPackage}/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic testtopic --from-beginning --max-messages 1 | grep 'test 1'");
|
assert "test 1" in kafka.succeed(
|
||||||
|
"${kafkaPackage}/bin/kafka-console-consumer.sh "
|
||||||
|
+ "--bootstrap-server localhost:9092 --topic testtopic "
|
||||||
|
+ "--from-beginning --max-messages 1"
|
||||||
|
)
|
||||||
'');
|
'');
|
||||||
});
|
}) {});
|
||||||
|
|
||||||
in with pkgs; {
|
in with pkgs; {
|
||||||
kafka_0_9 = makeKafkaTest "kafka_0_9" apacheKafka_0_9;
|
kafka_0_9 = makeKafkaTest "kafka_0_9" apacheKafka_0_9;
|
||||||
|
Loading…
Reference in New Issue
Block a user