From 4e0666a98a7cfa603ba13c6afccd65632ec0f56f Mon Sep 17 00:00:00 2001 From: badra001 Date: Wed, 23 Feb 2022 15:45:22 -0500 Subject: [PATCH] add import datetime --- code/ddns-lambda.py | 4 +++- code/ddns-lambda.zip | Bin 11688 -> 11696 bytes 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/code/ddns-lambda.py b/code/ddns-lambda.py index fac28b8..dbf3804 100755 --- a/code/ddns-lambda.py +++ b/code/ddns-lambda.py @@ -67,12 +67,14 @@ from botocore.exceptions import ClientError from collections import OrderedDict from pprint import pformat +from datetime import datetime + # Setting Global Variables LOGGER = logging.getLogger() ACCOUNT = None REGION = None -VERSION = '0.1.4' +VERSION = '0.1.5' # Adjust the logging level [logging.INFO, logging.DEBUG, logging.WARNING, etc] LOGGER.setLevel(logging.DEBUG) diff --git a/code/ddns-lambda.zip b/code/ddns-lambda.zip index 53bbf4ae0377790707897ad45fe30e85bf994b1b..3ce565a6c3b68330017ec238b734785d6a2487e3 100644 GIT binary patch delta 11449 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 K20kqS0000gyhW=3