aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorlian-manonog <160282780+lian-manonog@users.noreply.github.com>2024-08-15 13:58:46 +0100
committerGitHub <noreply@github.com>2024-08-15 13:58:46 +0100
commit2309062a8099c04bedd7f88638abf03ebf5f5171 (patch)
tree1bdebb2046a9b1356faa2fe902d9187601ecb3f7 /src
parent848a86b7f3b9c5ce16cd774d19e3fa62ca8ffc68 (diff)
parenta009ffe72a2005e72e67345f728539e500b899f5 (diff)
downloadde-project-bentley-2309062a8099c04bedd7f88638abf03ebf5f5171.tar.gz
de-project-bentley-2309062a8099c04bedd7f88638abf03ebf5f5171.zip
Merge pull request #33 from ajschofield/tf-secrets-manager
PR: merge secrets manager with extract_lambda
Diffstat (limited to 'src')
-rw-r--r--src/extract_lambda.py2
-rw-r--r--src/load_lambda.py2
-rw-r--r--src/secrets_manager.py48
-rw-r--r--src/transform_lambda.py2
4 files changed, 54 insertions, 0 deletions
diff --git a/src/extract_lambda.py b/src/extract_lambda.py
index a70ecdd..56b47a6 100644
--- a/src/extract_lambda.py
+++ b/src/extract_lambda.py
@@ -7,9 +7,11 @@ import logging
import json
from datetime import datetime
+
logger = logging.getLogger()
logger.setLevel(logging.INFO)
+
class DBConnectionException(Exception):
"""Wraps pg8000.native Error or DatabaseError."""
diff --git a/src/load_lambda.py b/src/load_lambda.py
index e69de29..6ee681f 100644
--- a/src/load_lambda.py
+++ b/src/load_lambda.py
@@ -0,0 +1,2 @@
+def lambda_handler():
+ pass \ No newline at end of file
diff --git a/src/secrets_manager.py b/src/secrets_manager.py
new file mode 100644
index 0000000..c0fb61e
--- /dev/null
+++ b/src/secrets_manager.py
@@ -0,0 +1,48 @@
+import boto3
+from botocore.exceptions import ClientError
+import json
+
+
+def sm_client():
+ sm_client = boto3.client('secretsmanager')
+ yield sm_client
+
+def create_secret(sm_client, secret_name, cohort_id, user, password, host, database, port):
+ secret = {
+ "cohort_id": cohort_id,
+ "user": user,
+ "password": password,
+ "host": host,
+ "database": database,
+ "port": port
+ }
+
+ response = sm_client.create_secret(
+ Name = secret_name,
+ SecretString = json.dumps(secret)
+ )
+
+ print(response)
+ return response
+
+def list_secret(sm_client):
+ response = sm_client.list_secrets()
+ secret_dict = response['SecretList']
+ secret_names = []
+ for items in secret_dict:
+ secret_names.append(items['Name'])
+ print(f'{len(secret_names)} secret(s) available')
+ for name in secret_names:
+ print(name)
+ return secret_names
+
+def retrieve_secrets(sm_client):
+ response = sm_client.get_secrets(
+
+ )
+
+
+
+#retrieve secret
+#so lambda can access totesy db
+#so lambda connect to the db and then retrieve the data \ No newline at end of file
diff --git a/src/transform_lambda.py b/src/transform_lambda.py
index e69de29..6ee681f 100644
--- a/src/transform_lambda.py
+++ b/src/transform_lambda.py
@@ -0,0 +1,2 @@
+def lambda_handler():
+ pass \ No newline at end of file
git.ajschof.me — hosted by ajschofield — powered by cgit