Преглед изворни кода

HUE-6659 [importer] Quick clean-up to submit sqoop as a task

Romain Rigaux пре 8 година
родитељ
комит
bc92257

+ 26 - 1
desktop/libs/indexer/src/indexer/api3.py

@@ -188,7 +188,7 @@ def importer_submit(request):
   elif destination['ouputFormat'] == 'database':
   elif destination['ouputFormat'] == 'database':
     job_handle = _create_database(request, source, destination, start_time)
     job_handle = _create_database(request, source, destination, start_time)
   elif destination['outputFormat'] == 'file' and source['inputFormat'] == 'rdbms':
   elif destination['outputFormat'] == 'file' and source['inputFormat'] == 'rdbms':
-    job_handle = run_morphline(request, source, 'sqoop')
+    job_handle = run_sqoop(request, source, destination, start_time)
   else:
   else:
     job_handle = _create_table(request, source, destination, start_time)
     job_handle = _create_table(request, source, destination, start_time)
   print JsonResponse(job_handle)
   print JsonResponse(job_handle)
@@ -313,3 +313,28 @@ def _index(request, file_format, collection_name, query=None, start_time=None, l
   morphline = indexer.generate_morphline_config(collection_name, file_format, unique_field)
   morphline = indexer.generate_morphline_config(collection_name, file_format, unique_field)
 
 
   return indexer.run_morphline(request, collection_name, morphline, input_path, query, start_time=start_time, lib_path=lib_path)
   return indexer.run_morphline(request, collection_name, morphline, input_path, query, start_time=start_time, lib_path=lib_path)
+
+def run_sqoop(request, source, destination, start_time):
+  print source['rdbmsName']
+
+  print source['rdbmsDatabaseName']
+  print source['rdbmsTableName']
+  
+  print destination['name']
+
+  task = make_notebook(
+      name=_('Indexer job for %(rdbmsDatabaseName)s.%(rdbmsDatabaseName)s to %(path)s') % {
+          'rdbmsDatabaseName': source['rdbmsDatabaseName'],
+          'rdbmsDatabaseName': source['rdbmsDatabaseName'],
+          'path': destination['name']
+        },
+      editor_type='sqoop1',
+      statement='export .... .... ',
+      files = [{"path": "/user/admin/mysql-connector-java-5.1.42-bin.jar", "type": "jar"}],
+      status='ready',
+      on_success_url='/filebrowser/view/%s(name)s' % destination,
+      last_executed=start_time,
+      is_task=True
+  )
+
+  return task.execute(request, batch=True)

+ 6 - 0
desktop/libs/indexer/src/indexer/templates/importer.mako

@@ -1647,6 +1647,12 @@ ${ assist.assistPanel() }
                   aceMode: 'ace/mode/impala',
                   aceMode: 'ace/mode/impala',
                   snippetImage: '${ static("impala/art/icon_impala_48.png") }',
                   snippetImage: '${ static("impala/art/icon_impala_48.png") }',
                   sqlDialect: true
                   sqlDialect: true
+                },
+                sqoop1: {
+                  placeHolder: '${ _("Example: SELECT * FROM tablename, or press CTRL + space") }',
+                  aceMode: 'ace/mode/impala',
+                  snippetImage: '${ static("impala/art/icon_impala_48.png") }',
+                  sqlDialect: true
                 }
                 }
               }
               }
             });
             });