openmetadata-managed-apis 1.6.7.0__py3-none-any.whl → 1.7.0.0rc1__py3-none-any.whl

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.
@@ -19,7 +19,7 @@ from openmetadata_managed_apis.api.response import ApiResponse
19
19
  from openmetadata_managed_apis.utils.logger import routes_logger
20
20
  from pydantic import ValidationError
21
21
 
22
- from metadata.automations.runner import execute
22
+ from metadata.automations.execute_runner import execute
23
23
  from metadata.ingestion.api.parser import parse_automation_workflow_gracefully
24
24
  from metadata.utils.secrets.secrets_manager_factory import SecretsManagerFactory
25
25
 
@@ -48,7 +48,9 @@ def application_workflow(workflow_config: OpenMetadataApplicationConfig):
48
48
 
49
49
  set_operator_logger(workflow_config)
50
50
 
51
- config = json.loads(workflow_config.model_dump_json(exclude_defaults=False))
51
+ config = json.loads(
52
+ workflow_config.model_dump_json(exclude_defaults=False, mask_secrets=False)
53
+ )
52
54
  workflow = ApplicationWorkflow.create(config)
53
55
 
54
56
  workflow.execute()
@@ -42,7 +42,9 @@ def auto_classification_workflow(workflow_config: OpenMetadataWorkflowConfig):
42
42
 
43
43
  set_operator_logger(workflow_config)
44
44
 
45
- config = json.loads(workflow_config.model_dump_json(exclude_defaults=False))
45
+ config = json.loads(
46
+ workflow_config.model_dump_json(exclude_defaults=False, mask_secrets=False)
47
+ )
46
48
  workflow = AutoClassificationWorkflow.create(config)
47
49
 
48
50
  workflow.execute()
@@ -44,6 +44,7 @@ try:
44
44
  except ModuleNotFoundError:
45
45
  from airflow.operators.python_operator import PythonOperator
46
46
 
47
+ from croniter import croniter
47
48
  from openmetadata_managed_apis.utils.logger import set_operator_logger, workflow_logger
48
49
  from openmetadata_managed_apis.utils.parser import (
49
50
  parse_service_connection,
@@ -203,7 +204,9 @@ def metadata_ingestion_workflow(workflow_config: OpenMetadataWorkflowConfig):
203
204
 
204
205
  set_operator_logger(workflow_config)
205
206
 
206
- config = json.loads(workflow_config.model_dump_json(exclude_defaults=False))
207
+ config = json.loads(
208
+ workflow_config.model_dump_json(exclude_defaults=False, mask_secrets=False)
209
+ )
207
210
  workflow = MetadataWorkflow.create(config)
208
211
 
209
212
  workflow.execute()
@@ -247,11 +250,19 @@ def build_dag_configs(ingestion_pipeline: IngestionPipeline) -> dict:
247
250
  :param ingestion_pipeline: pipeline configs
248
251
  :return: dict to use as kwargs
249
252
  """
250
-
251
- if ingestion_pipeline.airflowConfig.startDate:
252
- start_date = ingestion_pipeline.airflowConfig.startDate.root
253
+ # Determine start_date based on schedule_interval using croniter
254
+ schedule_interval = ingestion_pipeline.airflowConfig.scheduleInterval
255
+ now = datetime.now()
256
+
257
+ if schedule_interval is None:
258
+ # On-demand DAG, set start_date to now
259
+ start_date = now
260
+ elif croniter.is_valid(schedule_interval):
261
+ cron = croniter(schedule_interval, now)
262
+ start_date = cron.get_prev(datetime)
253
263
  else:
254
- start_date = datetime.now() - timedelta(days=1)
264
+ # Handle invalid cron expressions if necessary
265
+ start_date = now
255
266
 
256
267
  return {
257
268
  "dag_id": clean_dag_id(ingestion_pipeline.name.root),
@@ -272,7 +283,7 @@ def build_dag_configs(ingestion_pipeline: IngestionPipeline) -> dict:
272
283
  "is_paused_upon_creation": ingestion_pipeline.airflowConfig.pausePipeline
273
284
  or False,
274
285
  "catchup": ingestion_pipeline.airflowConfig.pipelineCatchup or False,
275
- "schedule_interval": ingestion_pipeline.airflowConfig.scheduleInterval,
286
+ "schedule_interval": schedule_interval,
276
287
  "tags": [
277
288
  "OpenMetadata",
278
289
  clean_name_tag(ingestion_pipeline.displayName)
@@ -42,7 +42,9 @@ def profiler_workflow(workflow_config: OpenMetadataWorkflowConfig):
42
42
 
43
43
  set_operator_logger(workflow_config)
44
44
 
45
- config = json.loads(workflow_config.model_dump_json(exclude_defaults=False))
45
+ config = json.loads(
46
+ workflow_config.model_dump_json(exclude_defaults=False, mask_secrets=False)
47
+ )
46
48
  workflow = ProfilerWorkflow.create(config)
47
49
 
48
50
  workflow.execute()
@@ -42,7 +42,9 @@ def test_suite_workflow(workflow_config: OpenMetadataWorkflowConfig):
42
42
 
43
43
  set_operator_logger(workflow_config)
44
44
 
45
- config = json.loads(workflow_config.model_dump_json(exclude_defaults=False))
45
+ config = json.loads(
46
+ workflow_config.model_dump_json(exclude_defaults=False, mask_secrets=False)
47
+ )
46
48
  workflow = TestSuiteWorkflow.create(config)
47
49
 
48
50
  workflow.execute()
@@ -46,7 +46,9 @@ def usage_workflow(workflow_config: OpenMetadataWorkflowConfig):
46
46
 
47
47
  set_operator_logger(workflow_config)
48
48
 
49
- config = json.loads(workflow_config.model_dump_json(exclude_defaults=False))
49
+ config = json.loads(
50
+ workflow_config.model_dump_json(exclude_defaults=False, mask_secrets=False)
51
+ )
50
52
  workflow = UsageWorkflow.create(config)
51
53
 
52
54
  workflow.execute()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: openmetadata_managed_apis
3
- Version: 1.6.7.0
3
+ Version: 1.7.0.0rc1
4
4
  Summary: Airflow REST APIs to create and manage DAGS
5
5
  Author: OpenMetadata Committers
6
6
  License: Apache License
@@ -17,7 +17,7 @@ openmetadata_managed_apis/api/routes/health_auth.py,sha256=9-XkWQKN5GUJ3XjZvxbyQ
17
17
  openmetadata_managed_apis/api/routes/ip.py,sha256=jCVWfHqXHB_54qKGcX7xbZVGmMhHKUkpmaTwagvsJbc,2927
18
18
  openmetadata_managed_apis/api/routes/kill.py,sha256=wvWwQcCCLIYGmk45_FF0ZN4tl2GSd1UmFK24StXMYPc,2136
19
19
  openmetadata_managed_apis/api/routes/last_dag_logs.py,sha256=-YcizJ50W1Bb2icqFOO4aJtmqY4SK2lFFn4yLpDykmo,2345
20
- openmetadata_managed_apis/api/routes/run_automation.py,sha256=MNXnHnUTDFVdE6bfAwzaYJ_XMVtHGAeKfLUeZ1VTL2o,3294
20
+ openmetadata_managed_apis/api/routes/run_automation.py,sha256=faWWRALRtBNCqZRHVDyhImeL3fRucx3MucDoz98HrfE,3302
21
21
  openmetadata_managed_apis/api/routes/status.py,sha256=xjyXj5m707aK4fdywVNKRJ3gl08_9RNvWfwX3ci-KXY,2185
22
22
  openmetadata_managed_apis/api/routes/trigger.py,sha256=8wzRDT8QsdrElN0yZE3cbZQa4Hs6AhZIG3GRe-2Cl2w,2210
23
23
  openmetadata_managed_apis/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -42,21 +42,21 @@ openmetadata_managed_apis/workflows/config.py,sha256=BRUGDLybVppg4c-VyPiFG3ZKZFM
42
42
  openmetadata_managed_apis/workflows/workflow_builder.py,sha256=CZ_kzQbRpXWyfOrSCZq0PbNH7hMK5tjtQSBFzq-w_Do,2038
43
43
  openmetadata_managed_apis/workflows/workflow_factory.py,sha256=X3sG_WIYs1FyFc7bs-jCs_wjdIeDO3S3wlnd_D10moA,3108
44
44
  openmetadata_managed_apis/workflows/ingestion/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
- openmetadata_managed_apis/workflows/ingestion/application.py,sha256=zDrk9CzyNKKPFVycPb-27puLm6mLyCYw1xCSpXwvn-Q,3551
46
- openmetadata_managed_apis/workflows/ingestion/auto_classification.py,sha256=Xcb_x-IDpmgKu2gC8-2yZx2_2n52kCLYrNAM4ZRsGy0,3010
47
- openmetadata_managed_apis/workflows/ingestion/common.py,sha256=lHPXkTY5adv5pZbG1rlMWZXJm7L3KPVa6eNgQIOlOVM,14219
45
+ openmetadata_managed_apis/workflows/ingestion/application.py,sha256=QHA7pM9SmwaG9aLSGiJ29Y115ciA2o4rBjEQc_-9oPc,3585
46
+ openmetadata_managed_apis/workflows/ingestion/auto_classification.py,sha256=goDQbHi4nftx-7crWoymeGW98LtPO0uyu-Ua_5BCjHI,3044
47
+ openmetadata_managed_apis/workflows/ingestion/common.py,sha256=mgrS_4-GUaRp5G0PcNIeLDB38r5e6FFc-lJTCRenQwo,14569
48
48
  openmetadata_managed_apis/workflows/ingestion/dbt.py,sha256=kq1aCUGA08n0d1r9jcjNlnhhleMsT0Pc5LgHcCsiFKY,2119
49
49
  openmetadata_managed_apis/workflows/ingestion/elasticsearch_sink.py,sha256=hYczNsKEzlxT-qV6lr12AjVzijH6I9k-vgU08n9zT4A,2007
50
50
  openmetadata_managed_apis/workflows/ingestion/es_reindex.py,sha256=uYF2YjburBgoNgvorsuD7PHllpGjSUvwFTxxWnxs2mg,3381
51
51
  openmetadata_managed_apis/workflows/ingestion/lineage.py,sha256=jFLaF7rGT-8UVIkqczLvS-18DY2GZgRg3gn6WLTYQ1Y,2105
52
52
  openmetadata_managed_apis/workflows/ingestion/metadata.py,sha256=9ZWhSBUzuOlVdyYofvmY4EKLgRV5UAAA3-MEK2WStnk,2016
53
- openmetadata_managed_apis/workflows/ingestion/profiler.py,sha256=-eVJqQkiLNCDYeXzmpkwZa7PWk5HvLEq0TAHsZDrsvc,2896
53
+ openmetadata_managed_apis/workflows/ingestion/profiler.py,sha256=AzN5nAVrEBuNUNrmn9rx4yp4d5zD2yv0NbK4FRmVkz4,2930
54
54
  openmetadata_managed_apis/workflows/ingestion/registry.py,sha256=VBg5opRBigkEQUMJk4WIWEUtgPVM6W1wxFyxt3jIQbA,2314
55
- openmetadata_managed_apis/workflows/ingestion/test_suite.py,sha256=-CtbKi3K_Q5zGXPyjh8R00lUEFNZSvOzhEWqj8HlN2w,2903
56
- openmetadata_managed_apis/workflows/ingestion/usage.py,sha256=aK09MqpE2DkRwj3bwcSD5Ub_3n8SFnCt2FkWmjRf-MY,3671
57
- openmetadata_managed_apis-1.6.7.0.dist-info/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
58
- openmetadata_managed_apis-1.6.7.0.dist-info/METADATA,sha256=A6hqetfX8_deC0pstcGgjUkXOvRW2Jwze_o6-bdLKms,21758
59
- openmetadata_managed_apis-1.6.7.0.dist-info/WHEEL,sha256=Z4pYXqR_rTB7OWNDYFOm1qRk0RX6GFP2o8LgvP453Hk,91
60
- openmetadata_managed_apis-1.6.7.0.dist-info/entry_points.txt,sha256=zknKSL_4J9dZRwSySrmb5sPnSMpmIpZ4_k-Aa4uwUHQ,93
61
- openmetadata_managed_apis-1.6.7.0.dist-info/top_level.txt,sha256=GygnYc036LyoClYqtk72V3gk7sX5fAKAr9fggnvxNgA,26
62
- openmetadata_managed_apis-1.6.7.0.dist-info/RECORD,,
55
+ openmetadata_managed_apis/workflows/ingestion/test_suite.py,sha256=jCJ-w8TwtagA1uZv2Z3tAo160dj80CFTK0Qdn7ZbJ2Y,2937
56
+ openmetadata_managed_apis/workflows/ingestion/usage.py,sha256=xYs6bm1_l2EfaQvI5ytyP9tpPZNGGh7t-NtO73xdZpA,3705
57
+ openmetadata_managed_apis-1.7.0.0rc1.dist-info/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
58
+ openmetadata_managed_apis-1.7.0.0rc1.dist-info/METADATA,sha256=SkTOUrtnUoU5Kh6pnJWl4r274f3TsHAHeg-rp0UEWQk,21761
59
+ openmetadata_managed_apis-1.7.0.0rc1.dist-info/WHEEL,sha256=Z4pYXqR_rTB7OWNDYFOm1qRk0RX6GFP2o8LgvP453Hk,91
60
+ openmetadata_managed_apis-1.7.0.0rc1.dist-info/entry_points.txt,sha256=zknKSL_4J9dZRwSySrmb5sPnSMpmIpZ4_k-Aa4uwUHQ,93
61
+ openmetadata_managed_apis-1.7.0.0rc1.dist-info/top_level.txt,sha256=GygnYc036LyoClYqtk72V3gk7sX5fAKAr9fggnvxNgA,26
62
+ openmetadata_managed_apis-1.7.0.0rc1.dist-info/RECORD,,