Skip to content

Commit

Permalink
keepass_to_pass: add integration
Browse files Browse the repository at this point in the history
  • Loading branch information
naisanzaa committed Sep 2, 2024
1 parent 5d3c0e2 commit 74a663b
Show file tree
Hide file tree
Showing 5 changed files with 61 additions and 1 deletion.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Github issues and feature requests welcomed.
| API | flask |
| Chat | slack |
| Data Scraping | beautifulsoup<br/>facebook groups<br/>instagram<br/>scrapy |
| Databases | elasticsearch<br/>neo4j<br/>splunk |
| Databases | elasticsearch<br/>neo4j<br/>splunk<br/>pass |
| Data Store | minio<br/>swift |
| Devices | snmp |
| Google Cloud | google auth api<br/>google people api<br/>google sheets api |
Expand Down
4 changes: 4 additions & 0 deletions automon/integrations/keepass_to_pass/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
from .client import (
KeepassClient,
PassClient
)
33 changes: 33 additions & 0 deletions automon/integrations/keepass_to_pass/client.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import os

from automon import log

logger = log.logging.getLogger(__name__)
logger.setLevel(level=log.DEBUG)


class KeepassClient(object):

def __init__(self):
self.database_csv_path = None

def set_database_csv_path(self, database_csv_path: str) -> bool:
if os.path.exists(database_csv_path):
self.database_csv_path = database_csv_path
logger.debug(
f'KeepassClient :: set_database_csv_path :: {database_csv_path} :: {os.stat(database_csv_path)}')
return True

raise FileNotFoundError(f'KeepassClient :: set_database_csv_path :: ERROR :: {database_csv_path}')

def read_database_csv(self, database_csv_path: str) -> open:
if self.set_database_csv_path(database_csv_path=database_csv_path):
logger.debug(f'KeepassClient :: read_database_csv :: open')
return open(self.database_csv_path, 'r').read()

raise OSError(f'KeepassClient :: read_database_csv :: ERROR :: {database_csv_path}')



class PassClient(object):
pass
Empty file.
23 changes: 23 additions & 0 deletions automon/integrations/keepass_to_pass/tests/test_keepass.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import unittest

from automon.integrations.keepass_to_pass import KeepassClient


class TestKeepassClient(unittest.TestCase):
def test_set_database_csv_path(self):
test = KeepassClient()
with self.assertRaises(FileNotFoundError):
test.set_database_csv_path('AAAA.XXXCSV')

open('BBBB.XXXCSV', 'w').close()

self.assertTrue(test.set_database_csv_path('BBBB.XXXCSV'))

def test_read_database_csv(self):
test = KeepassClient()
with self.assertRaises(OSError):
test.read_database_csv('AAAA.XXXCSV')


if __name__ == '__main__':
unittest.main()

0 comments on commit 74a663b

Please sign in to comment.