def CreateEngine(self, **kwargs):

        self.Echo = kwargs.get('Echo', False)

        try:
            assert isinstance(self.Echo, bool)
        except ValueError:
            print("Echo must be a boolean")

        try:

            if self._use_conf is None:
                database_conn = database_connection(self._database_type,
                                                    self._database_name)
                self._hostname = database_conn["hostname"]
                self._port = database_conn["port"]
                self._database = database_conn["database"]
            else:
                self._hostname = self._use_conf["hostname"]
                self._port = self._use_conf["port"]
                self._database = self._use_conf["database"]

            if self._use_credentials is None:
                cred = credentials_extractor().get_database_credentials(
                    self._database_type, self._database_name)
                self._user = cred["user"]
                self._pwd = cred["pwd"]

            else:
                self._user = self._use_credentials["user"]
                self._pwd = self._use_credentials["pwd"]

            _connector = construct_connection_to_database(self._database_type)

            con = str(
                _connector
            ) + self._user + ":" + self._pwd + "@" + self._hostname + ":" + self._port + "/" + self._database
            _engine = create_engine(con, echo=self.Echo)

        except Exception as e:
            print("An error occurred : {}".format(e))

        return _engine.connect()
Exemple #2
0
def extract_SFTP_connection(_protocole_type, _protocole_name, _use_conf, _use_credentials):
    if _use_conf is None:
        _SFTP_connection = SFTP_connection(_protocole_type, _protocole_name)
        _hostname = _SFTP_connection["hostname"]
        _port = _SFTP_connection["port"]
        _private_key = parse_private_key(_SFTP_connection["private_key"])
    else:
        _hostname = _use_conf["hostname"]
        _port = _use_conf["port"]
        _private_key = parse_private_key(_use_conf["private_key"])

    if _use_credentials is None:
        cred = credentials_extractor().get_sftp_credentials(_protocole_type, _protocole_name)
        _user = cred["user"]
        _pwd = cred["pwd"]

    else:
        _user = _use_credentials["user"]
        _pwd = _use_credentials["pwd"]

    return _user, _pwd, _hostname, _port, _private_key
Exemple #3
0
def extract_FTP_connection(_protocole_type, _protocole_name, _use_conf,
                           _use_credentials):

    if _use_conf is None:
        _FTP_connection = FTP_connection(_protocole_type, _protocole_name)
        _hostname = _FTP_connection["hostname"]
        _port = _FTP_connection["port"]
        if _port == "None":
            _port = None
    else:
        _hostname = _use_conf["hostname"]
        _port = _use_conf["port"]

    if _use_credentials is None:
        cred = credentials_extractor().get_ftp_credentials(
            _protocole_type, _protocole_name)
        _user = cred["user"]
        _pwd = cred["pwd"]

    else:
        _user = _use_credentials["user"]
        _pwd = _use_credentials["pwd"]

    return _user, _pwd, _hostname, _port
Exemple #4
0
import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import *
import pandas as pd
import plotly.graph_objs as go
from creacard_connectors.creacard_connectors.database_connector import ConnectToPostgres
from Creacard_Utils.import_credentials import credentials_extractor
from six.moves.urllib.parse import quote

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

credentials = credentials_extractor().get_database_credentials(
    "Postgres", "Creacard")
engine = ConnectToPostgres(credentials).CreateEngine()

query_list = """
SELECT table_name FROM information_schema.tables WHERE table_schema='PROFILING'
"""

list_table = pd.read_sql(query_list, con=engine)

query_cluster_id = """
select distinct "ClusterID" as "ClusterID" 
from "PROFILING"."{}"
""".format(list_table["table_name"][0])

clusters_list = pd.read_sql(query_cluster_id, con=engine)