plug task enqueing properly

This commit is contained in:
2026-02-06 10:49:05 -03:00
parent 2cf6c89fbb
commit 013587d108
20 changed files with 413 additions and 356 deletions

View File

@@ -27,5 +27,9 @@ GRPC_HOST=grpc
GRPC_PORT=50051
GRPC_MAX_WORKERS=10
# Media
MEDIA_IN=/app/media/in
MEDIA_OUT=/app/media/out
# Vite
VITE_ALLOWED_HOSTS=your-domain.local

View File

@@ -5,6 +5,8 @@ x-common-env: &common-env
DEBUG: 1
GRPC_HOST: grpc
GRPC_PORT: 50051
MEDIA_IN: ${MEDIA_IN:-/app/media/in}
MEDIA_OUT: ${MEDIA_OUT:-/app/media/out}
x-healthcheck-defaults: &healthcheck-defaults
interval: 5s
@@ -119,7 +121,7 @@ services:
build:
context: ..
dockerfile: ctrl/Dockerfile
command: celery -A mpr worker -l info -Q default -c 2
command: celery -A mpr worker -l info -Q transcode -c 2
environment:
<<: *common-env
MPR_EXECUTOR: local

View File

@@ -8,29 +8,33 @@ cd "$(dirname "$0")/.."
echo "Generating models from schema/models..."
# Django ORM models
# Django ORM models: domain models + enums
python -m modelgen from-schema \
--schema schema/models \
--output mpr/media_assets/models.py \
--targets django
--targets django \
--include dataclasses,enums
# Pydantic schemas for FastAPI
# Pydantic schemas for FastAPI: domain models + enums
python -m modelgen from-schema \
--schema schema/models \
--output api/schemas/models.py \
--targets pydantic
--targets pydantic \
--include dataclasses,enums
# TypeScript types for Timeline UI
# TypeScript types for Timeline UI: domain models + enums + API types
python -m modelgen from-schema \
--schema schema/models \
--output ui/timeline/src/types.ts \
--targets typescript
--targets typescript \
--include dataclasses,enums,api
# Protobuf for gRPC
# Protobuf for gRPC: gRPC messages + service
python -m modelgen from-schema \
--schema schema/models \
--output rpc/protos/worker.proto \
--targets proto
--targets proto \
--include grpc
# Generate gRPC stubs from proto
echo "Generating gRPC stubs..."

View File

@@ -67,9 +67,15 @@ http {
proxy_set_header Host $host;
}
# Media files
location /media {
alias /app/media;
# Media files - input (source)
location /media/in {
alias /app/media/in;
autoindex on;
}
# Media files - output (transcoded)
location /media/out {
alias /app/media/out;
autoindex on;
}