kiwi-simple-metrics/kiwi_simple_metrics/settings/misc.py

24 lines
562 B
Python

from pydantic import AnyUrl, BaseModel
class LogSettings(BaseModel):
# if True, prints reports to stdout
enabled: bool = False
# how to format reports to stdout
format: str = "[{state}] {result}"
class WebhookSettings(BaseModel):
# webhooks to ping on success/on failure
url: AnyUrl | None = None
fail: AnyUrl | None = None
# allow insecure/self-signed webhook targets
insecure: bool = False
def get_url(self, failed: bool) -> AnyUrl | None:
if failed:
return self.fail
return self.url