2020-05-08 16:18:10 +02:00
|
|
|
{ curl, lib, poetry2nix, python3, runCommand }:
|
|
|
|
let
|
|
|
|
app = poetry2nix.mkPoetryApplication {
|
|
|
|
python = python3;
|
|
|
|
src = lib.cleanSource ./.;
|
|
|
|
pyproject = ./pyproject.toml;
|
|
|
|
poetrylock = ./poetry.lock;
|
|
|
|
};
|
2020-05-08 18:26:09 +01:00
|
|
|
|
|
|
|
# Test support for overriding the app passed to the environment
|
|
|
|
overridden = (
|
2020-05-19 21:06:02 +01:00
|
|
|
app.overrideAttrs (old: {
|
|
|
|
name = "${old.pname}-overridden-${old.version}";
|
|
|
|
})
|
2020-05-08 18:26:09 +01:00
|
|
|
);
|
|
|
|
depEnv = app.dependencyEnv.override {
|
|
|
|
app = overridden;
|
|
|
|
};
|
2020-05-08 16:18:10 +02:00
|
|
|
in
|
2020-05-19 21:06:02 +01:00
|
|
|
runCommand "app-env-test"
|
|
|
|
{ } ''
|
2020-05-08 18:26:09 +01:00
|
|
|
${depEnv}/bin/gunicorn --bind=unix:socket trivial:app &
|
2020-05-08 16:18:10 +02:00
|
|
|
sleep 1
|
|
|
|
${curl}/bin/curl --unix-socket socket localhost
|
|
|
|
touch $out
|
|
|
|
''
|