Unverified Commit 6d0241eb authored by t4ccer's avatar t4ccer
Browse files

pds: add NixOS test

parent 6091da47
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -806,6 +806,7 @@ in {
  parsedmarc = handleTest ./parsedmarc {};
  password-option-override-ordering = handleTest ./password-option-override-ordering.nix {};
  pdns-recursor = handleTest ./pdns-recursor.nix {};
  pds = handleTest ./pds.nix {};
  peerflix = handleTest ./peerflix.nix {};
  peering-manager = handleTest ./web-apps/peering-manager.nix {};
  peertube = handleTestOn ["x86_64-linux"] ./web-apps/peertube.nix {};

nixos/tests/pds.nix

0 → 100644
+29 −0
Original line number Diff line number Diff line
import ./make-test-python.nix (
  { lib, ... }:
  {
    name = "PDS";

    nodes.machine = {
      services.pds = {
        enable = true;
        settings = {
          PDS_PORT = 3000;
          PDS_HOSTNAME = "example.com";

          # Snake oil testing credentials
          PDS_JWT_SECRET = "7b93fee53be046bf59c27a32a0fb2069";
          PDS_ADMIN_PASSWORD = "3a4077bc0d5f04eca945ef0509f7e809";
          PDS_PLC_ROTATION_KEY_K256_PRIVATE_KEY_HEX = "ae4f5028d04c833ba630f29debd5ff80b7700e43e9f4bf70f729a88cd6a6ce35";
        };
      };
    };

    testScript = ''
      machine.wait_for_unit("pds.service")
      machine.wait_for_open_port(3000)
      machine.succeed("curl --fail http://localhost:3000")
    '';

    meta.maintainers = with lib.maintainers; [ t4ccer ];
  }
)
+5 −0
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@
  nodejs,
  vips,
  pkg-config,
  nixosTests,
  lib,
}:

@@ -78,6 +79,10 @@ stdenv.mkDerivation (finalAttrs: {
    runHook postInstall
  '';

  passthru.tests = {
    inherit (nixosTests) pds;
  };

  meta = {
    description = "Bluesky Personal Data Server (PDS)";
    homepage = "https://github.com/bluesky-social/pds";