diff options
author | tbenst <lensman@tylerbenster.com> | 2020-01-06 15:59:25 -0800 |
---|---|---|
committer | Jon <jonringer@users.noreply.github.com> | 2020-02-15 22:11:25 -0800 |
commit | a35a2806db517f2a8db0a6ca0e9729690ba92cf1 (patch) | |
tree | 3a7ed1176cd07b47c213a88d3ca86ca127293641 /pkgs/servers/mlflow-server | |
parent | 5c20a955d7d84674da291a117052aaf456f24798 (diff) |
mlflow-server: init at 1.4.0
Diffstat (limited to 'pkgs/servers/mlflow-server')
-rw-r--r-- | pkgs/servers/mlflow-server/default.nix | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/pkgs/servers/mlflow-server/default.nix b/pkgs/servers/mlflow-server/default.nix new file mode 100644 index 0000000000000..eb99fffeb169e --- /dev/null +++ b/pkgs/servers/mlflow-server/default.nix @@ -0,0 +1,37 @@ +{lib, python3, writeText}: + +let + py = python3.pkgs; +in +py.toPythonApplication + (py.mlflow.overridePythonAttrs(old: rec { + pname = "mlflow-server"; + + propagatedBuildInputs = old.propagatedBuildInputs ++ [ + py.boto3 + py.mysqlclient + ]; + + postPatch = '' + substituteInPlace mlflow/utils/process.py --replace \ + "child = subprocess.Popen(cmd, env=cmd_env, cwd=cwd, universal_newlines=True," \ + "cmd[0]='$out/bin/gunicornMlflow'; child = subprocess.Popen(cmd, env=cmd_env, cwd=cwd, universal_newlines=True," + ''; + + gunicornScript = writeText "gunicornMlflow" + '' + #!/usr/bin/env python + import re + import sys + from gunicorn.app.wsgiapp import run + if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', ''', sys.argv[0]) + sys.exit(run()) + ''; + + postInstall = '' + gpath=$out/bin/gunicornMlflow + cp ${gunicornScript} $gpath + chmod 555 $gpath + ''; +})) \ No newline at end of file |