parent
03493f9d61
commit
175ddfdbe9
@ -0,0 +1,42 @@ |
|||||||
|
{ |
||||||
|
"nodes": { |
||||||
|
"pkgsSrc": { |
||||||
|
"locked": { |
||||||
|
"lastModified": 1659914493, |
||||||
|
"narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", |
||||||
|
"owner": "NixOS", |
||||||
|
"repo": "nixpkgs", |
||||||
|
"rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", |
||||||
|
"type": "github" |
||||||
|
}, |
||||||
|
"original": { |
||||||
|
"id": "nixpkgs", |
||||||
|
"ref": "nixos-21.05", |
||||||
|
"type": "indirect" |
||||||
|
} |
||||||
|
}, |
||||||
|
"root": { |
||||||
|
"inputs": { |
||||||
|
"pkgsSrc": "pkgsSrc", |
||||||
|
"utils": "utils" |
||||||
|
} |
||||||
|
}, |
||||||
|
"utils": { |
||||||
|
"locked": { |
||||||
|
"lastModified": 1667395993, |
||||||
|
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", |
||||||
|
"owner": "numtide", |
||||||
|
"repo": "flake-utils", |
||||||
|
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", |
||||||
|
"type": "github" |
||||||
|
}, |
||||||
|
"original": { |
||||||
|
"owner": "numtide", |
||||||
|
"repo": "flake-utils", |
||||||
|
"type": "github" |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
"root": "root", |
||||||
|
"version": 7 |
||||||
|
} |
@ -0,0 +1,63 @@ |
|||||||
|
{ |
||||||
|
inputs.pkgsSrc.url = "nixpkgs/nixos-21.05"; |
||||||
|
inputs.utils.url = "github:numtide/flake-utils"; |
||||||
|
|
||||||
|
outputs = { |
||||||
|
|
||||||
|
self, pkgsSrc, utils |
||||||
|
|
||||||
|
}: utils.lib.eachSystem utils.lib.allSystems (system: let |
||||||
|
|
||||||
|
pkgs = import pkgsSrc { inherit system; }; |
||||||
|
|
||||||
|
in { |
||||||
|
|
||||||
|
defaultPackage = pkgs.buildGoModule { |
||||||
|
pname = "mediocre-blog"; |
||||||
|
version = "dev"; |
||||||
|
src = ./src; |
||||||
|
|
||||||
|
vendorSha256 = "sha256:1vazrrg8rs9n8x40c9r53h9qnyxw59xkp0aq7jl15fliigk6q0cr"; |
||||||
|
|
||||||
|
subPackages = [ "cmd/mediocre-blog" ]; |
||||||
|
|
||||||
|
# disable tests |
||||||
|
checkPhase = ''''; |
||||||
|
}; |
||||||
|
|
||||||
|
devShell = pkgs.mkShell { |
||||||
|
buildInputs = [ pkgs.go pkgs.sqlite ]; |
||||||
|
shellHook = '' |
||||||
|
|
||||||
|
export MEDIOCRE_BLOG_DATA_DIR="/tmp/mediocre-blog/data" |
||||||
|
|
||||||
|
# mailing list |
||||||
|
export MEDIOCRE_BLOG_ML_SMTP_ADDR="" |
||||||
|
export MEDIOCRE_BLOG_ML_SMTP_AUTH="" |
||||||
|
export MEDIOCRE_BLOG_ML_PUBLIC_URL="http://localhost:4000" |
||||||
|
|
||||||
|
# pow |
||||||
|
export MEDIOCRE_BLOG_POW_SECRET="ssshhh" |
||||||
|
|
||||||
|
# http |
||||||
|
export MEDIOCRE_BLOG_HTTP_PUBLIC_URL="$MEDIOCRE_BLOG_ML_PUBLIC_URL" |
||||||
|
export MEDIOCRE_BLOG_HTTP_LISTEN_PROTO="tcp" |
||||||
|
export MEDIOCRE_BLOG_HTTP_LISTEN_ADDR=":4000" |
||||||
|
|
||||||
|
# http auth |
||||||
|
# (password is "bar". This should definitely be changed for prod.) |
||||||
|
export MEDIOCRE_BLOG_HTTP_AUTH_USERS='{"foo":"$2a$13$0JdWlUfHc.3XimEMpEu1cuu6RodhUvzD9l7iiAqa4YkM3mcFV5Pxi"}' |
||||||
|
export MEDIOCRE_BLOG_HTTP_AUTH_RATELIMIT="1s" |
||||||
|
|
||||||
|
cd src |
||||||
|
|
||||||
|
echo 'Loading test data...' |
||||||
|
(cd cmd/load-test-data && go run main.go) |
||||||
|
|
||||||
|
echo -e "\n\nTest data has been loaded into $MEDIOCRE_BLOG_DATA_DIR\n" |
||||||
|
echo -e "You can do 'go run ./cmd/mediocre-blog/main.go' to start a dev instance on http://localhost:4000\n\n" |
||||||
|
''; |
||||||
|
}; |
||||||
|
|
||||||
|
}); |
||||||
|
} |
Loading…
Reference in new issue