misc
This commit is contained in:
@@ -14,6 +14,7 @@ from pydantic import BaseModel
|
||||
|
||||
class ValidBulkFetchRequest(BaseModel):
|
||||
track_ids: list[int]
|
||||
target: str
|
||||
|
||||
|
||||
class RIP(FastAPI):
|
||||
@@ -35,7 +36,7 @@ class RIP(FastAPI):
|
||||
self.task_queue = Queue(
|
||||
"dls",
|
||||
connection=self.redis_conn,
|
||||
default_timeout=3600,
|
||||
default_timeout=14400,
|
||||
default_result_ttl=86400,
|
||||
default_failure_ttl=86400,
|
||||
)
|
||||
@@ -113,7 +114,7 @@ class RIP(FastAPI):
|
||||
user=Depends(get_current_user),
|
||||
) -> Response:
|
||||
"""Bulk fetch a list of track IDs"""
|
||||
if not data or not data.track_ids:
|
||||
if not data or not data.track_ids or not data.target:
|
||||
return JSONResponse(
|
||||
content={
|
||||
"err": True,
|
||||
@@ -121,10 +122,11 @@ class RIP(FastAPI):
|
||||
}
|
||||
)
|
||||
track_ids = data.track_ids
|
||||
target = data.target
|
||||
job = self.task_queue.enqueue(
|
||||
bulk_download,
|
||||
args=(track_ids,),
|
||||
job_timeout=3600,
|
||||
args=(track_ids, target),
|
||||
job_timeout=14400,
|
||||
failure_ttl=86400,
|
||||
result_ttl=86400,
|
||||
)
|
||||
@@ -152,6 +154,8 @@ class RIP(FastAPI):
|
||||
"enqueued_at": job.enqueued_at,
|
||||
"started_at": job.started_at,
|
||||
"ended_at": job.ended_at,
|
||||
"progress": job.meta.get("progress"),
|
||||
"target": job.meta.get("target"),
|
||||
}
|
||||
|
||||
async def job_list_handler(self, request: Request, user=Depends(get_current_user)):
|
||||
@@ -167,6 +171,7 @@ class RIP(FastAPI):
|
||||
"result": job.result,
|
||||
"enqueued_at": job.enqueued_at,
|
||||
"progress": job.meta.get("progress", None),
|
||||
"target": job.meta.get("target", None)
|
||||
}
|
||||
)
|
||||
|
||||
@@ -188,9 +193,11 @@ class RIP(FastAPI):
|
||||
"id": job.id,
|
||||
"status": status,
|
||||
"result": job.result,
|
||||
"tarball": job.meta.get("tarball", None),
|
||||
"enqueued_at": job.enqueued_at,
|
||||
"progress": job.meta.get("progress", None),
|
||||
"tracks": job.meta.get("track_list", None),
|
||||
"tracks": job.meta.get("tracks", None),
|
||||
"target": job.meta.get("target", None),
|
||||
}
|
||||
)
|
||||
|
||||
|
Reference in New Issue
Block a user