{ nixpkgs, self, system }: let pkgs = nixpkgs.legacyPackages.${system}; evaluatedSystem = nixpkgs.lib.nixosSystem { inherit system; modules = [ self.nixosModules.tide { services.tide = { enable = true; secretFiles = { adminPassword = "/run/secrets/tide-admin-password"; mailPassword = "/run/secrets/tide-mail-password"; secretKeyBase = "/run/secrets/tide-secret-key-base"; borgPassphrase = "/run/secrets/borg-passphrase"; borgPrivateKey = "/run/secrets/borg-private-key"; }; }; } ]; }; evaluatedConfig = evaluatedSystem.config; discourseConfig = evaluatedConfig.services.discourse; backupConfig = evaluatedConfig.services.borgbackup.jobs.discourse; in assert discourseConfig.enable; assert discourseConfig.hostname == "discourse.torahimderecheretz.com"; assert discourseConfig.admin.email == "yisroel.d.baum@gmail.com"; assert discourseConfig.admin.fullName == "Yisroel Baum"; assert discourseConfig.admin.username == "yisroeldbaum"; assert discourseConfig.admin.passwordFile == "/run/secrets/tide-admin-password"; assert discourseConfig.mail.outgoing.passwordFile == "/run/secrets/tide-mail-password"; assert discourseConfig.secretKeyBaseFile == "/run/secrets/tide-secret-key-base"; assert backupConfig.repo == "ssh://oas17j8p@oas17j8p.repo.borgbase.com/./repo"; assert backupConfig.startAt == "*-*-* 07:15:00"; assert builtins.elem "/var/lib/discourse" backupConfig.paths; pkgs.runCommand "tide-module-test" { } '' touch "$out" ''