40 lines
1 KiB
Nix
40 lines
1 KiB
Nix
# This test runs influxdb and checks if influxdb is up and running
|
|
|
|
import ./make-test.nix ({ pkgs, ...} : {
|
|
name = "influxdb";
|
|
meta = with pkgs.stdenv.lib.maintainers; {
|
|
maintainers = [ chaoflow offline ];
|
|
};
|
|
|
|
nodes = {
|
|
one = { config, pkgs, ... }: {
|
|
services.influxdb.enable = true;
|
|
};
|
|
};
|
|
|
|
testScript = ''
|
|
startAll;
|
|
|
|
$one->waitForUnit("influxdb.service");
|
|
|
|
# Check if admin interface is avalible
|
|
$one->waitUntilSucceeds("curl -f 127.0.0.1:8083");
|
|
|
|
# create database
|
|
$one->succeed(q~
|
|
curl -X POST 'http://localhost:8086/db?u=root&p=root' \
|
|
-d '{"name": "test"}'
|
|
~);
|
|
|
|
# write some points and run simple query
|
|
$one->succeed(q~
|
|
curl -X POST 'http://localhost:8086/db/test/series?u=root&p=root' \
|
|
-d '[{"name":"foo","columns":["val"],"points":[[6666]]}]'
|
|
~);
|
|
$one->succeed(q~
|
|
curl -G 'http://localhost:8086/db/test/series?u=root&p=root' \
|
|
--data-urlencode 'q=select * from foo limit 1' | grep 6666
|
|
~);
|
|
'';
|
|
})
|