RedisSettings

This commit is contained in:
Jörn-Michael Miehe 2023-10-31 21:48:27 +00:00
parent 63b9f4e1d9
commit 367fef145d
4 changed files with 19 additions and 14 deletions

View file

@ -41,14 +41,6 @@ class RedisSettings(BaseModel):
db: int = 0 db: int = 0
protocol: int = 3 protocol: int = 3
@property
def url(self) -> str:
"""
Combined DAV URL.
"""
return f"redis_v{self.protocol}://{self.host}:{self.port}/db_{self.db}"
class Settings(BaseSettings): class Settings(BaseSettings):
""" """

View file

@ -8,7 +8,7 @@ from advent22_api.core.helpers import EventDates
from ..core.calendar_config import CalendarConfig, DoorsSaved, get_calendar_config from ..core.calendar_config import CalendarConfig, DoorsSaved, get_calendar_config
from ..core.config import Config, Image, get_config from ..core.config import Config, Image, get_config
from ..core.depends import get_all_event_dates, get_all_image_names, get_all_parts from ..core.depends import get_all_event_dates, get_all_image_names, get_all_parts
from ..core.settings import SETTINGS from ..core.settings import SETTINGS, RedisSettings
from ._security import require_admin, user_is_admin from ._security import require_admin, user_is_admin
router = APIRouter(prefix="/admin", tags=["admin"]) router = APIRouter(prefix="/admin", tags=["admin"])
@ -48,7 +48,7 @@ class ConfigModel(BaseModel):
puzzle: __Puzzle puzzle: __Puzzle
calendar: __Calendar calendar: __Calendar
image: Image image: Image
redis_url: str redis: RedisSettings
webdav: __WebDAV webdav: __WebDAV
@ -83,7 +83,7 @@ async def get_config_model(
"background": cal_cfg.background, "background": cal_cfg.background,
}, },
"image": cfg.image, "image": cfg.image,
"redis_url": SETTINGS.redis.url, "redis": SETTINGS.redis,
"webdav": { "webdav": {
"url": SETTINGS.webdav.url, "url": SETTINGS.webdav.url,
"cache_ttl": SETTINGS.webdav.cache_ttl, "cache_ttl": SETTINGS.webdav.cache_ttl,

View file

@ -139,7 +139,10 @@
<h3>Sonstige</h3> <h3>Sonstige</h3>
<dl> <dl>
<dt>Redis</dt> <dt>Redis</dt>
<dd>{{ config_model.redis_url }}</dd> <dd>Host: {{ config_model.redis.host }}</dd>
<dd>Port: {{ config_model.redis.port }}</dd>
<dd>Datenbank: {{ config_model.redis.db }}</dd>
<dd>Protokoll: {{ config_model.redis.protocol }}</dd>
<dt>UI-Admin</dt> <dt>UI-Admin</dt>
<dd class="is-family-monospace"> <dd class="is-family-monospace">
@ -199,7 +202,12 @@ export default class extends Vue {
border: 0, border: 0,
fonts: [{ file: "consetetur", size: 0 }], fonts: [{ file: "consetetur", size: 0 }],
}, },
redis_url: "sadipscing elitr", redis: {
host: "0.0.0.0",
port: 6379,
db: 0,
protocol: 3,
},
webdav: { webdav: {
url: "sadipscing elitr", url: "sadipscing elitr",
cache_ttl: 0, cache_ttl: 0,

View file

@ -21,7 +21,12 @@ export interface ConfigModel {
border: number; border: number;
fonts: { file: string; size: number }[]; fonts: { file: string; size: number }[];
}; };
redis_url: string; redis: {
host: string;
port: number;
db: number;
protocol: number;
};
webdav: { webdav: {
url: string; url: string;
cache_ttl: number; cache_ttl: number;