Skip to content

Instantly share code, notes, and snippets.

@seanbreckenridge
Created August 23, 2023 05:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save seanbreckenridge/cf74440ddd27d018b187beed4ee04838 to your computer and use it in GitHub Desktop.
Save seanbreckenridge/cf74440ddd27d018b187beed4ee04838 to your computer and use it in GitHub Desktop.
possible schema for youtube proxy/s3 uploader
class ChannelBase(SQLModel):
url: str # url to download with
command: str
proxy: Optional[str] = Field(default=None) # yt-dl proxy
yt_dl_args: Optional[str] = Field(default=None) # additional arguments to yt-dlp
gallery_dl_args: Optional[str] = Field(default=None)
name: Optional[str] = Field(default=None)
rerequest_time: Optional[int] = Field(default=None)
class Channel(ChannelBase, table=True):
id: int = Field(index=True, primary_key=True)
created_at: datetime = Field(default_factory=datetime.utcnow)
# base non-table sql model - these are individual downloaded videos
class ArchiveBase(SQLModel):
url: str # url to download with
s3_url: Optional[str] = Field(default=None)
sha256: Optional[str] = Field(default=None)
length: Optional[str] = Field(default=None)
created_at: datetime = Field(default_factory=datetime.utcnow)
# archive, with an ID/table
class Archive(ArchiveBase, table=True):
id: int = Field(index=True, primary_key=True)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment