mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-13 13:15:30 +03:00
commit
57ad5dc844
4 changed files with 45 additions and 8 deletions
|
@ -330,6 +330,7 @@ in rec {
|
||||||
tests.postgresql = callSubTests tests/postgresql.nix {};
|
tests.postgresql = callSubTests tests/postgresql.nix {};
|
||||||
tests.pgmanage = callTest tests/pgmanage.nix {};
|
tests.pgmanage = callTest tests/pgmanage.nix {};
|
||||||
tests.postgis = callTest tests/postgis.nix {};
|
tests.postgis = callTest tests/postgis.nix {};
|
||||||
|
tests.powerdns = callTest tests/powerdns.nix {};
|
||||||
#tests.pgjwt = callTest tests/pgjwt.nix {};
|
#tests.pgjwt = callTest tests/pgjwt.nix {};
|
||||||
tests.predictable-interface-names = callSubTests tests/predictable-interface-names.nix {};
|
tests.predictable-interface-names = callSubTests tests/predictable-interface-names.nix {};
|
||||||
tests.printing = callTest tests/printing.nix {};
|
tests.printing = callTest tests/printing.nix {};
|
||||||
|
|
12
nixos/tests/powerdns.nix
Normal file
12
nixos/tests/powerdns.nix
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
import ./make-test.nix ({ pkgs, ... }: {
|
||||||
|
name = "powerdns";
|
||||||
|
|
||||||
|
nodes.server = { config, pkgs, ... }: {
|
||||||
|
services.powerdns.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
$server->waitForUnit("pdns");
|
||||||
|
$server->succeed("${pkgs.dnsutils}/bin/dig version.bind txt chaos \@127.0.0.1");
|
||||||
|
'';
|
||||||
|
})
|
|
@ -1,27 +1,36 @@
|
||||||
{ stdenv, fetchurl, pkgconfig,
|
{ stdenv, fetchurl, pkgconfig
|
||||||
boost, libyamlcpp, libsodium, sqlite, protobuf,
|
, boost, libyamlcpp, libsodium, sqlite, protobuf, botan2
|
||||||
mysql57, postgresql, lua, openldap, geoip, curl
|
, mysql57, postgresql, lua, openldap, geoip, curl, opendbx, unixODBC
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "powerdns-${version}";
|
name = "powerdns-${version}";
|
||||||
version = "4.0.5";
|
version = "4.1.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://downloads.powerdns.com/releases/pdns-${version}.tar.bz2";
|
url = "http://downloads.powerdns.com/releases/pdns-${version}.tar.bz2";
|
||||||
sha256 = "097ci4s2c63gl0bil8yh87dsy0sk3fds4w8cpyjh5kns6zazmj2v";
|
sha256 = "1fh4zgj0gxgcnnhnih8k6fbw18hb9brkkrfpx3mj8b4a3hr8ilq8";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
buildInputs = [ boost mysql57.connector-c postgresql lua openldap sqlite protobuf geoip libyamlcpp libsodium curl ];
|
buildInputs = [
|
||||||
|
boost mysql57.connector-c postgresql lua openldap sqlite protobuf geoip
|
||||||
|
libyamlcpp libsodium curl opendbx unixODBC botan2
|
||||||
|
];
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# checksum type not found, maybe a dependency is to old?
|
||||||
|
./skip-sha384-test.patch
|
||||||
|
];
|
||||||
|
|
||||||
# nix destroy with-modules arguments, when using configureFlags
|
# nix destroy with-modules arguments, when using configureFlags
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
configureFlagsArray=(
|
configureFlagsArray=(
|
||||||
"--with-modules=bind gmysql geoip gpgsql gsqlite3 ldap lua pipe random remote"
|
"--with-modules=bind gmysql geoip godbc gpgsql gsqlite3 ldap lua mydns opendbx pipe random remote"
|
||||||
--with-sqlite3
|
--with-sqlite3
|
||||||
--with-socketdir=/var/lib/powerdns
|
--with-socketdir=/var/lib/powerdns
|
||||||
--enable-libsodium
|
--enable-libsodium
|
||||||
|
--enable-botan
|
||||||
--enable-tools
|
--enable-tools
|
||||||
--disable-dependency-tracking
|
--disable-dependency-tracking
|
||||||
--disable-silent-rules
|
--disable-silent-rules
|
||||||
|
@ -29,7 +38,8 @@ stdenv.mkDerivation rec {
|
||||||
--enable-unit-tests
|
--enable-unit-tests
|
||||||
)
|
)
|
||||||
'';
|
'';
|
||||||
checkPhase = "make check";
|
|
||||||
|
doCheck = true;
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Authoritative DNS server";
|
description = "Authoritative DNS server";
|
||||||
|
|
14
pkgs/servers/dns/powerdns/skip-sha384-test.patch
Normal file
14
pkgs/servers/dns/powerdns/skip-sha384-test.patch
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
--- pdns-4.1.1.org/pdns/test-signers.cc 2018-02-17 11:43:15.953228279 +0000
|
||||||
|
+++ pdns-4.1.1/pdns/test-signers.cc 2018-02-17 11:44:21.089516393 +0000
|
||||||
|
@@ -212,11 +212,6 @@
|
||||||
|
BOOST_CHECK_EQUAL(ds2.getZoneRepresentation(), signer.dsSHA256);
|
||||||
|
}
|
||||||
|
|
||||||
|
- auto ds4 = makeDSFromDNSKey(name, drc, DNSSECKeeper::SHA384);
|
||||||
|
- if (!signer.dsSHA384.empty()) {
|
||||||
|
- BOOST_CHECK_EQUAL(ds4.getZoneRepresentation(), signer.dsSHA384);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
auto signature = dcke->sign(message);
|
||||||
|
BOOST_CHECK(dcke->verify(message, signature));
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue