chore: passwords logging
This commit is contained in:
parent
6f14bd7db1
commit
3ec1942b4e
1 changed files with 9 additions and 1 deletions
|
|
@ -6,6 +6,10 @@ import keyring
|
||||||
from injectable import injectable
|
from injectable import injectable
|
||||||
from pykeepass import PyKeePass, create_database
|
from pykeepass import PyKeePass, create_database
|
||||||
|
|
||||||
|
import logging
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
class KeyRequest:
|
class KeyRequest:
|
||||||
def __init__(self, prompt: str):
|
def __init__(self, prompt: str):
|
||||||
self.field_name = None
|
self.field_name = None
|
||||||
|
|
@ -14,7 +18,8 @@ class KeyRequest:
|
||||||
self._parse_prompt(prompt)
|
self._parse_prompt(prompt)
|
||||||
|
|
||||||
def _parse_prompt(self, prompt: str):
|
def _parse_prompt(self, prompt: str):
|
||||||
prompt_parts = prompt.split(".")
|
logger.debug(f"Got prompt: {prompt}")
|
||||||
|
prompt_parts = prompt.replace('\n', '').split(".")
|
||||||
key = None
|
key = None
|
||||||
match len(prompt_parts):
|
match len(prompt_parts):
|
||||||
case 1:
|
case 1:
|
||||||
|
|
@ -26,6 +31,7 @@ class KeyRequest:
|
||||||
case _:
|
case _:
|
||||||
key = None
|
key = None
|
||||||
if key is None:
|
if key is None:
|
||||||
|
logger.warning(f"Prompt {prompt} cannot be parsed")
|
||||||
return
|
return
|
||||||
key_parts = key.split("/")
|
key_parts = key.split("/")
|
||||||
self.path = key_parts[:] if len(key_parts) > 1 else None
|
self.path = key_parts[:] if len(key_parts) > 1 else None
|
||||||
|
|
@ -57,6 +63,8 @@ class Passwords:
|
||||||
request = KeyRequest(k)
|
request = KeyRequest(k)
|
||||||
with self.open() as kp:
|
with self.open() as kp:
|
||||||
kp_entry = kp.find_entries(path=request.path, first=True, title=request.entry_name)
|
kp_entry = kp.find_entries(path=request.path, first=True, title=request.entry_name)
|
||||||
|
if kp_entry is None:
|
||||||
|
logger.warning(f"No value found for key {k}")
|
||||||
output[k] = self._get_field_value(kp_entry, request.field_name)
|
output[k] = self._get_field_value(kp_entry, request.field_name)
|
||||||
return output
|
return output
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue