feat(users/Profpatsch/mailbox-org): add simple request json example

Adds a simple json quasiquoter thingy.

Json can be sent to the `/mailfilter?action=update` endpoint.

Change-Id: Iba80c2ab69178e431519933c4a01cd68aaa9f637
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7839
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
This commit is contained in:
Profpatsch 2023-01-15 21:20:40 +01:00
parent 1a18c25d81
commit f627ee84b3
5 changed files with 107 additions and 23 deletions

View file

@ -1,27 +1,35 @@
{ depot, pkgs, lib, ... }:
let
mailbox-org = pkgs.haskellPackages.mkDerivation {
pname = "mailbox-org";
version = "0.1.0";
cas-serve =
lib.pipe ./MailboxOrg.hs [
(depot.users.Profpatsch.writers.writeHaskellInteractive "mailbox-org"
{
libraries = [
depot.users.Profpatsch.my-prelude
depot.users.Profpatsch.execline.exec-helpers-hs
depot.users.Profpatsch.arglib.netencode.haskell
pkgs.haskellPackages.aeson
pkgs.haskellPackages.http-conduit
pkgs.haskellPackages.aeson-better-errors
];
ghcArgs = [ "-threaded" ];
})
(depot.users.Profpatsch.arglib.netencode.with-args {
BINS = depot.nix.getBins pkgs.dovecot_pigeonhole [ "sieve-test" ];
})
src = depot.users.Profpatsch.exactSource ./. [
./mailbox-org.cabal
./AesonQQ.hs
./MailboxOrg.hs
];
libraryHaskellDepends = [
depot.users.Profpatsch.my-prelude
depot.users.Profpatsch.execline.exec-helpers-hs
depot.users.Profpatsch.arglib.netencode.haskell
pkgs.haskellPackages.aeson
pkgs.haskellPackages.http-conduit
pkgs.haskellPackages.aeson-better-errors
];
isLibrary = false;
isExecutable = true;
license = lib.licenses.mit;
};
in
cas-serve
lib.pipe mailbox-org [
(x: (depot.nix.getBins x [ "mailbox-org" ]).mailbox-org)
(depot.users.Profpatsch.arglib.netencode.with-args "mailbox-org" {
BINS = depot.nix.getBins pkgs.dovecot_pigeonhole [ "sieve-test" ];
})
]