Merge pull request 'Mo fixes' (#19) from develop into master

Reviewed-on: https://hattori.ztsh.eu/iac/karl/pulls/19
This commit is contained in:
Piotr Dec 2025-12-15 22:28:18 +01:00
commit 975e305a61
12 changed files with 29 additions and 26 deletions

View file

@ -5,7 +5,7 @@ steps:
platforms: linux/amd64
repo: hattori.ztsh.eu/iac/karl
registry: hattori.ztsh.eu
tags: latest
auto_tag: true
username: stawros
password:
from_secret: hattori-packages

View file

@ -1,4 +1,4 @@
from config import get_settings
from karl.config import get_settings
def main() -> None:

View file

@ -6,10 +6,10 @@ from fastapi import APIRouter, Depends
from fastapi_utils.cbv import cbv
from starlette.responses import JSONResponse, Response
from api.models import Request
from core.injects import AutowireSupport
from core.woodpecker import Woodpecker
from model.webhook import WoodpeckerEvent
from karl.api.models import Request
from karl.core.injects import AutowireSupport
from karl.core.woodpecker import Woodpecker
from karl.model.webhook import WoodpeckerEvent
router = APIRouter()
logger = logging.getLogger(__name__)

View file

@ -1,7 +1,7 @@
from bubus import EventBus
from injectable import inject
from core.woodpecker import Woodpecker
from karl.core.woodpecker import Woodpecker
class AutowireSupport:

View file

@ -8,10 +8,10 @@ from typing import Annotated
from bubus import EventBus, BaseEvent
from injectable import injectable, Autowired, autowired
from config import get_settings
from model.webhook import WoodpeckerEvent
from services import GitService, DockerService
from services.mo import Mo
from karl.config import get_settings
from karl.model.webhook import WoodpeckerEvent
from karl.services import GitService, DockerService
from karl.services.mo import Mo
logger = logging.getLogger(__name__)

View file

@ -3,8 +3,8 @@ import logging
from fastapi import FastAPI
from injectable import load_injection_container
from config import get_settings
from util.logging import HandlerFactory
from karl.config import get_settings
from karl.util.logging import HandlerFactory
class KarlApplication:
@ -45,13 +45,13 @@ class KarlApplication:
logging_logger.propagate = False
def _set_middlewares(self, app: FastAPI):
from web.middlewares import LoggingMiddleware
from karl.web.middlewares import LoggingMiddleware
app.add_middleware(LoggingMiddleware)
def _set_routes(self, app: FastAPI):
from core.router import router as core_router
from karl.core.router import router as core_router
app.include_router(core_router)
from api.v1 import router as api_v1_router
from karl.api.v1 import router as api_v1_router
app.include_router(api_v1_router, prefix="/api/v1", tags=["v1"])
pass

View file

@ -5,7 +5,7 @@ import docker
from docker.models.containers import Container
from injectable import injectable
from model.containers import Tree, Compose, SimpleContainer
from karl.model.containers import Tree, Compose, SimpleContainer
logger = logging.getLogger(__name__)

View file

@ -4,7 +4,7 @@ from typing import Annotated
from injectable import injectable, autowired, Autowired
from services import Passwords
from karl.services import Passwords
class ValueTemplate(Template):

View file

@ -14,7 +14,7 @@ class KeyRequest:
self._parse_prompt(prompt)
def _parse_prompt(self, prompt: str):
prompt_parts = prompt.split("/")
prompt_parts = prompt.split(".")
key = None
match len(prompt_parts):
case 1:
@ -27,14 +27,14 @@ class KeyRequest:
key = None
if key is None:
return
key_parts = key.split(".")
key_parts = key.split("/")
self.path = key_parts[:] if len(key_parts) > 1 else None
self.entry_name = key_parts[-1]
@injectable(singleton=True)
class Passwords:
def __init__(self):
from config import get_settings
from karl.config import get_settings
settings = get_settings()
import keyring_backend
keyring.set_keyring(keyring=keyring_backend.Backend())

View file

@ -1,7 +1,7 @@
from git import Repo, Remote
from injectable import injectable
from config import GitConfig, get_settings
from karl.config import GitConfig, get_settings
@injectable(singleton=True)

3
tests/config/config.yaml Normal file
View file

@ -0,0 +1,3 @@
kp:
file: "../config/kp.kdbx"
secret: "../config/secret.txt"

View file

@ -1,5 +1,5 @@
value: ${sample}
nested: ${some.nested.value}
custom: ${custom/field}
uname: ${sample/username}
invalid: ${double/slash/example}
nested: ${some/nested/value}
custom: ${custom.field}
uname: ${sample.username}
invalid: ${double.dot.example}