albs_analytics/build_analitycs/build_analytics/models/extractor_config.py

25 lines
774 B
Python

from datetime import datetime
from pathlib import Path
from pydantic import HttpUrl, Field, BaseModel
from .db_config import DbConfig
# DEFAULTS
ALBS_URL_DEFAULT = 'https://build.almalinux.org'
LOG_FILE_DEFAULT = '/tmp/extractor.log'
class ExtractorConfig(BaseModel):
"""
config model for Extractor service
"""
log_file: Path = Field(description='logfile path',
default=LOG_FILE_DEFAULT)
albs_url: HttpUrl = Field(description='ALBS root URL',
default=ALBS_URL_DEFAULT)
oldest_build_age: datetime = \
Field(description='oldest build age to extract and store')
jwt: str = Field(description='ALBS JWT token')
db_config: DbConfig = Field(description="database configuration")