Moved version to the FastAPI app instead
This commit is contained in:
@@ -7,6 +7,7 @@ from pathlib import Path
|
||||
from typing import Optional
|
||||
from urllib import parse
|
||||
|
||||
import pkg_resources
|
||||
from platformdirs import user_data_dir
|
||||
|
||||
|
||||
@@ -235,3 +236,12 @@ def get_backups_dir() -> Path:
|
||||
backups_dir = data_dir.joinpath("backups")
|
||||
backups_dir.mkdir(parents=True, exist_ok=True)
|
||||
return backups_dir
|
||||
|
||||
|
||||
def get_version() -> str:
|
||||
"""Get the version of the package.
|
||||
|
||||
Returns:
|
||||
str: The version.
|
||||
"""
|
||||
return pkg_resources.get_distribution("spoolman").version
|
||||
|
||||
@@ -7,7 +7,6 @@ from logging.handlers import TimedRotatingFileHandler
|
||||
from pathlib import Path
|
||||
from typing import Union
|
||||
|
||||
import pkg_resources
|
||||
import uvicorn
|
||||
from fastapi import FastAPI
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
@@ -18,9 +17,6 @@ from spoolman import env
|
||||
from spoolman.api.v1.router import app as v1_app
|
||||
from spoolman.database import database
|
||||
|
||||
# Get version from package metadata
|
||||
version = pkg_resources.get_distribution("spoolman").version
|
||||
|
||||
# Define a file logger with log rotation
|
||||
log_file = env.get_data_dir().joinpath("spoolman.log")
|
||||
file_handler = TimedRotatingFileHandler(log_file, when="midnight", backupCount=5)
|
||||
@@ -58,7 +54,11 @@ class SinglePageApplication(StaticFiles):
|
||||
return (full_path, stat_result)
|
||||
|
||||
|
||||
app = FastAPI(debug=env.is_debug_mode())
|
||||
app = FastAPI(
|
||||
debug=env.is_debug_mode(),
|
||||
title="Spoolman",
|
||||
version=env.get_version(),
|
||||
)
|
||||
app.mount("/api/v1", v1_app)
|
||||
app.mount("/", app=SinglePageApplication(directory="client/dist"), name="client")
|
||||
|
||||
@@ -79,7 +79,7 @@ if env.is_debug_mode():
|
||||
@app.on_event("startup")
|
||||
async def startup() -> None:
|
||||
"""Run the service's startup sequence."""
|
||||
logger.info("Starting Spoolman v%s...", version)
|
||||
logger.info("Starting Spoolman v%s...", app.version)
|
||||
|
||||
logger.info("Setting up database...")
|
||||
database.setup_db(database.get_connection_url())
|
||||
|
||||
Reference in New Issue
Block a user