Skip to content

Commit 4bea2d1

Browse files
committed
fix docker build and startup
1 parent ec944be commit 4bea2d1

12 files changed

+42
-44
lines changed

Dockerfile

-2
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@ WORKDIR /app
1515
# Copy the rest of the app
1616
COPY . /app
1717

18-
WORKDIR /app
19-
2018
# Run the production server
2119
EXPOSE 8000
2220
# CMD exec gunicorn --workers 1 --threads 8 --timeout 0 --preload main:app

server/config.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ class Config(BaseSettings):
3939
Whether or not the server is running in production mode (affects CORS origins and deployment triggers)
4040
"""
4141

42-
database_url: SecretStr | None = Field(os.environ.get("SQLALCHEMY_DATABASE_URL"))
42+
sqlalchemy_database_url: SecretStr | None = Field(os.environ.get("SQLALCHEMY_DATABASE_URL"))
4343
"""
4444
The URL to the database (cockroachdb)
4545
"""

server/db/user.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111
from starlette.authentication import UnauthenticatedUser
1212
from starlette.requests import Request
1313

14-
from server.constants import TTL_FIVE_MINUTES
15-
from server.db.session import db_session
16-
from server.models import User as DbUser
17-
from server.types import FirebaseUser
14+
from ..constants import TTL_FIVE_MINUTES
15+
from ..db.session import db_session
16+
from ..models import User as DbUser
17+
from ..types import FirebaseUser
1818

1919

2020
class User(BaseModel):

server/db/waiting_room.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
from sqlalchemy import select
99
from sqlalchemy.ext.asyncio import AsyncSession
1010

11-
from server.constants import TTL_FIVE_MINUTES
12-
from server.models import WaitingRoom
11+
from ..constants import TTL_FIVE_MINUTES
12+
from ..models import WaitingRoom
1313

1414

1515
class CachedWaitingRoomQueryResult(BaseModel):

server/main.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@
1818
from timing_asgi.integrations import StarletteScopeToName
1919
import sentry_sdk
2020

21-
from server.config import CONFIG
22-
from server.constants import DEV_CORS_ORIGINS, log_config, PROD_CORS_ORIGINS
23-
from server.logger import logger
24-
from server.middleware.firebase import FirebaseAuthBackend
25-
from server.middleware.turnstile import TurnstileMiddleware
21+
from .config import CONFIG
22+
from .constants import DEV_CORS_ORIGINS, log_config, PROD_CORS_ORIGINS
23+
from .logger import logger
24+
from .middleware.firebase import FirebaseAuthBackend
25+
from .middleware.turnstile import TurnstileMiddleware
2626
from .routes import markdown_edit
2727
from .routes import register as register_routes
2828
from .routes import room
@@ -52,7 +52,7 @@ async def lifespan(_app: fastapi.FastAPI) -> typing.AsyncIterator[State]:
5252
logger.info("Config: %s", CONFIG)
5353

5454
engine = create_async_engine(
55-
CONFIG.database_url and CONFIG.database_url.get_secret_value(),
55+
CONFIG.sqlalchemy_database_url and CONFIG.sqlalchemy_database_url.get_secret_value(),
5656
echo=not CONFIG.production,
5757
hide_parameters=CONFIG.production,
5858
pool_size=30,

server/middleware/firebase.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
from starlette.authentication import AuthCredentials, AuthenticationError
1414
from starlette.requests import HTTPConnection
1515

16-
from server.constants import TTL_FIVE_MINUTES
17-
from server.logger import logger
18-
from server.types import FirebaseUser
16+
from ..constants import TTL_FIVE_MINUTES
17+
from ..logger import logger
18+
from ..types import FirebaseUser
1919

2020

2121

server/middleware/turnstile.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
from starlette.responses import Response
77
import httpx
88

9-
from server.config import CONFIG
10-
from server.logger import logger
11-
from server.types import TurnstileOutcome
9+
from ..config import CONFIG
10+
from ..logger import logger
11+
from ..types import TurnstileOutcome
1212

1313

1414

server/middleware/user.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
from fastapi import Request
44
from starlette.responses import Response
55

6-
from server.db.session import create_session_maker
7-
from server.db.user import fetch_or_create_cached_user
8-
from server.logger import logger
9-
from server.types import FirebaseUser
6+
from ..db.session import create_session_maker
7+
from ..db.user import fetch_or_create_cached_user
8+
from ..logger import logger
9+
from ..types import FirebaseUser
1010

1111

1212
class UserMiddleware(BaseHTTPMiddleware):

server/routes/markdown_edit.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
from sqlalchemy.ext.asyncio import AsyncSession
99
from starlette.authentication import requires
1010

11-
from server.db.session import db_session
12-
from server.models import WaitingRoom
13-
from server.types import TrpcData, TrpcResponse
11+
from ..db.session import db_session
12+
from ..models import WaitingRoom
13+
from ..types import TrpcData, TrpcResponse
1414

1515
router = fastapi.APIRouter()
1616

server/routes/register.py

+8-8
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@
88
from sqlalchemy import insert
99
from sqlalchemy.ext.asyncio import AsyncSession
1010

11-
from server.constants import PLAY_NICE_RESPONSE
12-
from server.db.session import db_session
13-
from server.db.waiting_room import CachedWaitingRoomQueryResult, fetch_waiting_room
14-
from server.logger import logger
15-
from server.models import IdType, Registrant
16-
from server.trpc import TrpcMixin
17-
from server.turnstile import handle_turnstile_errors
18-
from server.types import TrpcResponse, TurnstileOutcome
11+
from ..constants import PLAY_NICE_RESPONSE
12+
from ..db.session import db_session
13+
from ..db.waiting_room import CachedWaitingRoomQueryResult, fetch_waiting_room
14+
from ..logger import logger
15+
from ..models import IdType, Registrant
16+
from ..trpc import TrpcMixin
17+
from ..turnstile import handle_turnstile_errors
18+
from ..types import TrpcResponse, TurnstileOutcome
1919

2020
router = fastapi.APIRouter()
2121

server/routes/room.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@
1111
from sqlalchemy.ext.asyncio import AsyncConnection, AsyncSession
1212
from starlette.authentication import requires
1313

14-
from server.db.user import User, authenticated_user
15-
from server.models import IdType, WaitingRoom, Registrant as DbRegistrant
16-
from server.config import CONFIG
17-
from server.db.session import db_session
18-
from server.logger import logger
19-
from server.trpc import trpc, TrpcMixin
20-
from server.types import TrpcResponse
14+
from ..db.user import User, authenticated_user
15+
from ..models import IdType, WaitingRoom, Registrant as DbRegistrant
16+
from ..config import CONFIG
17+
from ..db.session import db_session
18+
from ..logger import logger
19+
from ..trpc import trpc, TrpcMixin
20+
from ..types import TrpcResponse
2121

2222
router = fastapi.APIRouter()
2323

server/trpc.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import pydantic
77
from pydantic import BaseModel
88

9-
from server.types import TrpcData, TrpcResponse
9+
from .types import TrpcData, TrpcResponse
1010

1111

1212
def decode_trpc_input(escaped_input: str) -> dict:

0 commit comments

Comments
 (0)