X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=n2vc%2Futils.py;h=5ac0e2c6d68581598c6e2e8f8376362ec0b7c7a5;hb=fc98b747173036fff750747a33c0979ac474a63f;hp=6e0f2c053a2029b576bba719ae15d20ca8615b1f;hpb=b816d822dcc61a709b22f475085c3f94dceca61d;p=osm%2FN2VC.git diff --git a/n2vc/utils.py b/n2vc/utils.py index 6e0f2c0..5ac0e2c 100644 --- a/n2vc/utils.py +++ b/n2vc/utils.py @@ -16,6 +16,8 @@ import base64 import re import binascii import yaml +import string +import secrets from enum import Enum from juju.machine import Machine from juju.application import Application @@ -33,7 +35,11 @@ def base64_to_cacert(b64string): try: cacert = base64.b64decode(b64string).decode("utf-8") - cacert = re.sub(r"\\n", r"\n", cacert,) + cacert = re.sub( + r"\\n", + r"\n", + cacert, + ) except binascii.Error as e: raise N2VCInvalidCertificate(message="Invalid CA Certificate: {}".format(e)) @@ -114,14 +120,6 @@ JujuStatusToOSM = { }, } -DB_DATA = Dict( - { - "api_endpoints": Dict( - {"table": "admin", "filter": {"_id": "juju"}, "key": "api_endpoints"} - ) - } -) - def obj_to_yaml(obj: object) -> str: """ @@ -151,3 +149,15 @@ def obj_to_dict(obj: object) -> dict: yaml_text = obj_to_yaml(obj) # parse to dict return yaml.load(yaml_text, Loader=yaml.Loader) + + +def generate_random_alfanum_string(size: int) -> str: + """ + Generate random alfa-numeric string with a size given by argument + :param size: + :return: random generated string + """ + + return "".join( + secrets.choice(string.ascii_letters + string.digits) for i in range(size) + )