Ejemplo n.º 1
0
    def zeppelin_notebook_import(self, env):
        from params import params
        env.set_params(params)
        commands = IndexingCommands(params)

        Logger.info(
            ambari_format(
                'Searching for Zeppelin Notebooks in {metron_config_zeppelin_path}'
            ))

        # Check if authentication is configured on Zeppelin server, and fetch details if enabled.
        ses = requests.session()
        ses = commands.get_zeppelin_auth_details(ses,
                                                 params.zeppelin_server_url,
                                                 env)
        for dirName, subdirList, files in os.walk(
                params.metron_config_zeppelin_path):
            for fileName in files:
                if fileName.endswith(".json"):
                    Logger.info("Importing notebook: " + fileName)
                    zeppelin_import_url = ambari_format(
                        'http://{zeppelin_server_url}/api/notebook/import')
                    zeppelin_notebook = {
                        'file': open(os.path.join(dirName, fileName), 'rb')
                    }
                    res = ses.post(zeppelin_import_url,
                                   files=zeppelin_notebook)
                    Logger.info("Result: " + res.text)
    def zeppelin_notebook_import(self, env):
        from params import params
        env.set_params(params)
        commands = IndexingCommands(params)

        Logger.info(ambari_format('Searching for Zeppelin Notebooks in {metron_config_zeppelin_path}'))

        # Check if authentication is configured on Zeppelin server, and fetch details if enabled.
        ses = requests.session()
        ses = commands.get_zeppelin_auth_details(ses, params.zeppelin_server_url, env)
        for dirName, subdirList, files in os.walk(params.metron_config_zeppelin_path):
            for fileName in files:
                if fileName.endswith(".json"):
                    Logger.info("Importing notebook: " + fileName)
                    zeppelin_import_url = ambari_format('http://{zeppelin_server_url}/api/notebook/import')
                    zeppelin_notebook = {'file' : open(os.path.join(dirName, fileName), 'rb')}
                    res = ses.post(zeppelin_import_url, files=zeppelin_notebook)
                    Logger.info("Result: " + res.text)
Ejemplo n.º 3
0
    def zeppelin_notebook_import(self, env):
        from params import params
        env.set_params(params)
        metron_service.check_indexer_parameters()

        commands = IndexingCommands(params)
        Logger.info(ambari_format('Searching for Zeppelin Notebooks in {metron_config_zeppelin_path}'))

        # Check if authentication is configured on Zeppelin server, and fetch details if enabled.
        session_id = commands.get_zeppelin_auth_details(params.zeppelin_server_url, env)
        for dirName, subdirList, files in os.walk(params.metron_config_zeppelin_path):
            for fileName in files:
                if fileName.endswith(".json"):
                    Logger.info("Importing notebook: " + fileName)
                    zeppelin_notebook = os.path.join(dirName, fileName)
                    zeppelin_import_url = 'curl -i -b \"{0}\" http://{1}/api/notebook/import -d @\'{2}\''
                    zeppelin_import_url = zeppelin_import_url.format(session_id, params.zeppelin_server_url, zeppelin_notebook)
                    return_code, import_result, stderr = get_user_call_output(zeppelin_import_url, user=params.metron_user)
                    Logger.info("Status of importing notebook: " + import_result)
                    if return_code != 0:
                        Logger.error("Error importing notebook: " + fileName + " Error Message: " + stderr)