Bläddra i källkod

HUE-2142 [editor] Convert saving result to an index in Hue 4

Romain Rigaux 8 år sedan
förälder
incheckning
e9bb183

+ 2 - 2
apps/oozie/src/oozie/models2.py

@@ -3690,9 +3690,9 @@ class WorkflowBuilder():
     for snippet in notebook['snippets']:
       if snippet['type'] == 'java':
         node = self.get_java_snippet_node(snippet)
-      elif snippet['type'] == 'query-hive':
+      elif snippet['type'] == 'hive':
         node = self.get_hive_snippet_node(snippet, user)
-      elif snippet['type'] == 'query-impala':
+      elif snippet['type'] == 'impala':
         node = self.get_impala_snippet_node(snippet, user)
       elif snippet['type'] == 'shell':
         node = self.get_shell_snippet_node(snippet)

+ 1 - 1
desktop/core/src/desktop/templates/ko_components.mako

@@ -284,7 +284,7 @@ from desktop.views import _ko
             },
             shell: {
               snippetIcon: 'fa-terminal'
-            }
+            },
           }
         });
         self.editorViewModel.editorMode(true);

+ 13 - 6
desktop/libs/indexer/src/indexer/smart_indexer.py

@@ -20,12 +20,13 @@ import os
 from collections import deque
 
 from django.contrib.auth.models import User
+from django.core.urlresolvers import reverse
 from django.utils.translation import ugettext as _
 from mako.lookup import TemplateLookup
 
 from desktop.models import Document2
 from notebook.connectors.base import get_api
-from notebook.models import Notebook
+from notebook.models import Notebook, make_notebook
 
 from indexer.conf import CONFIG_INDEXING_TEMPLATES_PATH
 from indexer.conf import CONFIG_INDEXER_LIBS_PATH
@@ -65,11 +66,17 @@ class Indexer(object):
 
   def run_morphline(self, request, collection_name, morphline, input_path, query=None):
     workspace_path = self._upload_workspace(morphline)
-
-    notebook = Notebook(
+# 
+    task = Notebook(
         name='Indexer job for %s' % collection_name,
         isManaged=True
     )
+#     task = make_notebook(
+#       name=_('Indexer job for %s') % collection_name,
+#       editor_type='notebook',
+#       on_success_url=reverse('search:browse', kwargs={'name': collection_name}),
+#       is_task=True
+#     )
 
     if query:
       q = Notebook(document=Document2.objects.get_by_uuid(user=self.user, uuid=query))
@@ -83,9 +90,9 @@ class Indexer(object):
       sql, success_url = api.export_data_as_table(notebook_data, snippet, destination, is_temporary=True, location=location)
       input_path = '${nameNode}%s' % location
 
-      notebook.add_hive_snippet(snippet['database'], sql)
+      task.add_hive_snippet(snippet['database'], sql)
 
-    notebook.add_java_snippet(
+    task.add_java_snippet(
       clazz='org.apache.solr.hadoop.MapReduceIndexerTool',
       app_jar=CONFIG_INDEXER_LIBS_PATH.get(),
       arguments=[
@@ -108,7 +115,7 @@ class Indexer(object):
       ]
     )
 
-    return notebook.execute(request, batch=True)
+    return task.execute(request, batch=True)
 
   def guess_format(self, data):
     file_format = get_file_format_instance(data['file'])

+ 0 - 2
desktop/libs/notebook/src/notebook/api.py

@@ -680,9 +680,7 @@ def export_result(request):
         destination = _get_snippet_name(notebook, unique=True, table_format=True)
         live_indexing = True
       else:
-        # Unsupported currently
         live_indexing = False
-        sql, success_url = api.export_data_as_table(notebook, snippet, destination, is_temporary=True, location='')
 
       sample = get_api(request, snippet).fetch_result(notebook, snippet, 0, start_over=True)
 

+ 2 - 2
desktop/libs/notebook/src/notebook/connectors/base.py

@@ -106,7 +106,7 @@ class Notebook(object):
        'status': 'running',
        'statement_raw': sql,
        'statement': sql,
-       'type': 'query-hive',
+       'type': 'hive',
        'properties': {
             'files': [],
             'functions': [],
@@ -114,7 +114,7 @@ class Notebook(object):
        },
        'database': database,
     }))
-    self._add_session(_data, 'query-hive')
+    self._add_session(_data, 'hive')
 
     self.data = json.dumps(_data)