SilverStreamingApplication 1.0__tar.gz → 1.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/PKG-INFO +1 -1
  2. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/PKG-INFO +1 -1
  3. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/WorkflowBuilder.py +15 -4
  4. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/setup.py +1 -1
  5. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/SOURCES.txt +0 -0
  6. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/dependency_links.txt +0 -0
  7. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/SilverStreamingApplication.egg-info/top_level.txt +0 -0
  8. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/__init__.py +0 -0
  9. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/__init__.py +0 -0
  10. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/Maintenance.py +0 -0
  11. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/Operations.py +0 -0
  12. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/PartitionAnalyzer.py +0 -0
  13. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/PerfAnalyzer.py +0 -0
  14. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/SilverMerge.py +0 -0
  15. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/__init__.py +0 -0
  16. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/logging.py +0 -0
  17. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/sparksession.py +0 -0
  18. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/utils.py +0 -0
  19. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/main/utilsDatabricksAPI.py +0 -0
  20. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/OperationsTest.py +0 -0
  21. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/__init__.py +0 -0
  22. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/main_test.py +0 -0
  23. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/com/phida/tests/utils_test.py +0 -0
  24. {SilverStreamingApplication-1.0 → SilverStreamingApplication-1.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SilverStreamingApplication
3
- Version: 1.0
3
+ Version: 1.1
4
4
  Summary: initial version
5
5
  Home-page: UNKNOWN
6
6
  Author:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SilverStreamingApplication
3
- Version: 1.0
3
+ Version: 1.1
4
4
  Summary: initial version
5
5
  Home-page: UNKNOWN
6
6
  Author:
@@ -25,7 +25,7 @@ class WorkflowBuilder:
25
25
 
26
26
  """
27
27
 
28
- def __init__(self, inputDict: OrderedDict, onFailureEmailList: list):
28
+ def __init__(self, inputDict: OrderedDict, onFailureEmailList: list, library: str):
29
29
  """"
30
30
  desc:
31
31
  Initialize the required variables for the class
@@ -34,6 +34,7 @@ class WorkflowBuilder:
34
34
  inputDict: inputDict - A single ordered dictionary containing all the possible configurations
35
35
  for building the JSON in the databricks jobs API format
36
36
  onFailureEmailList: List of string - A list of emails to be notified when a job failed
37
+ library: string - PyPI library name with version number
37
38
 
38
39
  example:
39
40
  # Sample data for inputDict argument:
@@ -60,16 +61,18 @@ class WorkflowBuilder:
60
61
  ('driver_type', ['Standard_E8ds_v4', 'Standard_E8ds_v4']),
61
62
  ('worker_type', ['Standard_E8ds_v4', 'Standard_E8ds_v4']),
62
63
  ('num_workers', ['4', '4'])])
64
+ # example of library argument: "SilverStreamingApplication==1.0"
63
65
 
64
66
 
65
67
  """
66
68
  self.inputDict = inputDict
67
69
  self.onFailureEmailList = onFailureEmailList
70
+ self.library = library
68
71
 
69
72
  @staticmethod
70
73
  def createTask(taskKey, jobClusterKey, notebookPath, srcDatabaseName, srcTableName, tgtDatabaseName, tgtTableName,
71
74
  tgtCheckpoint, tgtTablePath, tgtPartitionColumns, derivedColExpr, triggerOnce, dropColumnStr,
72
- pruneColumn, pythonWhlPath):
75
+ pruneColumn, pythonWhlPath, library):
73
76
  """
74
77
  desc:
75
78
  A method for creating the dict/json for a single task
@@ -90,6 +93,7 @@ class WorkflowBuilder:
90
93
  dropColumnStr: String - Columns to be dropped from source table df
91
94
  pruneColumn: String - Column for applying the prune filter in the merge ON condition clause \
92
95
  (to improve performance of the merge)
96
+ library: String - Library to be installed for the job (with version number)
93
97
 
94
98
  return:
95
99
  silverCleansedDF: dict - returns the task in jobs API format as a dictionary
@@ -132,7 +136,14 @@ class WorkflowBuilder:
132
136
  "timeout_seconds": timeout_seconds,
133
137
  "max_retries": max_retries,
134
138
  "min_retry_interval_millis": 900000,
135
- "retry_on_timeout": "false"
139
+ "retry_on_timeout": "false",
140
+ "libraries": [
141
+ {
142
+ "pypi": {
143
+ "package": library
144
+ }
145
+ }
146
+ ]
136
147
  }
137
148
 
138
149
  return taskDict
@@ -319,7 +330,7 @@ class WorkflowBuilder:
319
330
  taskTemp = self.createTask(taskKey, jobClusterKey, notebookPath, srcDatabaseName, srcTableName,
320
331
  tgtDatabaseName, tgtTableName, tgtCheckpoint, tgtTablePath,
321
332
  tgtPartitionColumns, derivedColExpr, triggerOnce, dropColumnStr,
322
- pruneColumn, "")
333
+ pruneColumn, "", self.library)
323
334
 
324
335
  tasks.append(taskTemp)
325
336
  if jobId is None:
@@ -2,7 +2,7 @@ from setuptools import setup
2
2
 
3
3
  setup(
4
4
  name='SilverStreamingApplication',
5
- version='1.0',
5
+ version='1.1',
6
6
  packages=['com.phida.main', 'com.phida.tests'],
7
7
  url='',
8
8
  license='',