trretretret commited on
Commit
bf8cc87
·
1 Parent(s): 5e479b7

Add OpenEnv multi-mode deployment requirements

Browse files
Files changed (4) hide show
  1. pyproject.toml +3 -1
  2. server/__init__.py +1 -0
  3. server/app.py +32 -0
  4. uv.lock +62 -0
pyproject.toml CHANGED
@@ -24,18 +24,20 @@ dependencies = [
24
  "uvicorn>=0.23.0",
25
  "openai>=1.0",
26
  "python-multipart>=0.0.6",
 
27
  ]
28
 
29
  [project.optional-dependencies]
30
  dev = ["pytest", "black", "ruff"]
31
 
32
  [project.scripts]
 
33
  code-review-baseline = "backend.baseline:main"
34
  code-review-inference = "backend.inference:main"
35
 
36
  [tool.setuptools.packages.find]
37
  where = ["."]
38
- include = ["backend*"]
39
 
40
  [tool.setuptools.package-data]
41
  "backend.tasks" = ["data/*.json"]
 
24
  "uvicorn>=0.23.0",
25
  "openai>=1.0",
26
  "python-multipart>=0.0.6",
27
+ "openenv-core>=0.2.0",
28
  ]
29
 
30
  [project.optional-dependencies]
31
  dev = ["pytest", "black", "ruff"]
32
 
33
  [project.scripts]
34
+ server = "server.app:main"
35
  code-review-baseline = "backend.baseline:main"
36
  code-review-inference = "backend.inference:main"
37
 
38
  [tool.setuptools.packages.find]
39
  where = ["."]
40
+ include = ["backend*", "server*"]
41
 
42
  [tool.setuptools.package-data]
43
  "backend.tasks" = ["data/*.json"]
server/__init__.py ADDED
@@ -0,0 +1 @@
 
 
1
+ """OpenEnv server package."""
server/app.py ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """OpenEnv server entry point.
2
+
3
+ This module provides the FastAPI server for OpenEnv multi-mode deployment.
4
+ """
5
+
6
+ import os
7
+ import sys
8
+ import uvicorn
9
+
10
+ # Add backend to path for imports
11
+ _root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
12
+ _backend = os.path.join(_root, "backend")
13
+ if _backend not in sys.path:
14
+ sys.path.insert(0, _backend)
15
+ if _root not in sys.path:
16
+ sys.path.insert(0, _root)
17
+
18
+ # Import the FastAPI app from backend
19
+ # Try different import paths for compatibility
20
+ try:
21
+ from backend.app import app
22
+ except ImportError:
23
+ sys.path.insert(0, _backend)
24
+ from app import app
25
+
26
+ def main():
27
+ """Entry point for the server script."""
28
+ port = int(os.getenv("PORT", "7860"))
29
+ uvicorn.run("server.app:app", host="0.0.0.0", port=port)
30
+
31
+ if __name__ == "__main__":
32
+ main()
uv.lock ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version = 1
2
+ requires-python = ">=3.10"
3
+
4
+ [[package]]
5
+ name = "code-review-env"
6
+ version = "1.0.0"
7
+ source = { editable = "." }
8
+ dependencies = [
9
+ { name = "fastapi" },
10
+ { name = "openai" },
11
+ { name = "openenv-core" },
12
+ { name = "pydantic" },
13
+ { name = "python-multipart" },
14
+ { name = "pyyaml" },
15
+ { name = "uvicorn" },
16
+ ]
17
+
18
+ [package.metadata]
19
+ requires-dist = [
20
+ { name = "fastapi", specifier = ">=0.100.0" },
21
+ { name = "openai", specifier = ">=1.0" },
22
+ { name = "openenv-core", specifier = ">=0.2.0" },
23
+ { name = "pydantic", specifier = ">=2.0" },
24
+ { name = "python-multipart", specifier = ">=0.0.6" },
25
+ { name = "pyyaml", specifier = ">=6.0" },
26
+ { name = "uvicorn", specifier = ">=0.23.0" },
27
+ ]
28
+
29
+ [[package]]
30
+ name = "fastapi"
31
+ version = "0.115.0"
32
+ source = { registry = "https://pypi.org/simple" }
33
+
34
+ [[package]]
35
+ name = "openai"
36
+ version = "1.50.0"
37
+ source = { registry = "https://pypi.org/simple" }
38
+
39
+ [[package]]
40
+ name = "openenv-core"
41
+ version = "0.2.0"
42
+ source = { registry = "https://pypi.org/simple" }
43
+
44
+ [[package]]
45
+ name = "pydantic"
46
+ version = "2.9.0"
47
+ source = { registry = "https://pypi.org/simple" }
48
+
49
+ [[package]]
50
+ name = "python-multipart"
51
+ version = "0.0.9"
52
+ source = { registry = "https://pypi.org/simple" }
53
+
54
+ [[package]]
55
+ name = "pyyaml"
56
+ version = "6.0.2"
57
+ source = { registry = "https://pypi.org/simple" }
58
+
59
+ [[package]]
60
+ name = "uvicorn"
61
+ version = "0.30.0"
62
+ source = { registry = "https://pypi.org/simple" }