etlplus 0.4.7__py3-none-any.whl → 0.4.9__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.
- etlplus/cli/app.py +19 -3
- etlplus/cli/handlers.py +12 -0
- etlplus/cli/main.py +15 -2
- {etlplus-0.4.7.dist-info → etlplus-0.4.9.dist-info}/METADATA +14 -1
- {etlplus-0.4.7.dist-info → etlplus-0.4.9.dist-info}/RECORD +9 -9
- {etlplus-0.4.7.dist-info → etlplus-0.4.9.dist-info}/WHEEL +0 -0
- {etlplus-0.4.7.dist-info → etlplus-0.4.9.dist-info}/entry_points.txt +0 -0
- {etlplus-0.4.7.dist-info → etlplus-0.4.9.dist-info}/licenses/LICENSE +0 -0
- {etlplus-0.4.7.dist-info → etlplus-0.4.9.dist-info}/top_level.txt +0 -0
etlplus/cli/app.py
CHANGED
|
@@ -782,8 +782,21 @@ def list_cmd(
|
|
|
782
782
|
'--pipelines',
|
|
783
783
|
help='List ETL pipelines',
|
|
784
784
|
),
|
|
785
|
-
sources: bool = typer.Option(
|
|
786
|
-
|
|
785
|
+
sources: bool = typer.Option(
|
|
786
|
+
False,
|
|
787
|
+
'--sources',
|
|
788
|
+
help='List data sources',
|
|
789
|
+
),
|
|
790
|
+
summary: bool = typer.Option(
|
|
791
|
+
False,
|
|
792
|
+
'--summary',
|
|
793
|
+
help='Show pipeline summary (name, version, sources, targets, jobs)',
|
|
794
|
+
),
|
|
795
|
+
targets: bool = typer.Option(
|
|
796
|
+
False,
|
|
797
|
+
'--targets',
|
|
798
|
+
help='List data targets',
|
|
799
|
+
),
|
|
787
800
|
transforms: bool = typer.Option(
|
|
788
801
|
False,
|
|
789
802
|
'--transforms',
|
|
@@ -805,6 +818,8 @@ def list_cmd(
|
|
|
805
818
|
If True, list ETL pipelines.
|
|
806
819
|
sources : bool, optional
|
|
807
820
|
If True, list data sources.
|
|
821
|
+
summary : bool, optional
|
|
822
|
+
If True, show pipeline summary (name, version, sources, targets, jobs).
|
|
808
823
|
targets : bool, optional
|
|
809
824
|
If True, list data targets.
|
|
810
825
|
transforms : bool, optional
|
|
@@ -820,6 +835,7 @@ def list_cmd(
|
|
|
820
835
|
state,
|
|
821
836
|
command='list',
|
|
822
837
|
config=config,
|
|
838
|
+
summary=summary,
|
|
823
839
|
pipelines=pipelines,
|
|
824
840
|
jobs=jobs,
|
|
825
841
|
sources=sources,
|
|
@@ -953,7 +969,7 @@ def pipeline_cmd(
|
|
|
953
969
|
),
|
|
954
970
|
) -> int:
|
|
955
971
|
"""
|
|
956
|
-
|
|
972
|
+
Deprecated wrapper to inspect or run a pipeline YAML configuration.
|
|
957
973
|
|
|
958
974
|
Parameters
|
|
959
975
|
----------
|
etlplus/cli/handlers.py
CHANGED
|
@@ -117,6 +117,8 @@ def _list_sections(
|
|
|
117
117
|
Metadata output for the list command.
|
|
118
118
|
"""
|
|
119
119
|
sections: dict[str, Any] = {}
|
|
120
|
+
if getattr(args, 'jobs', False):
|
|
121
|
+
sections['jobs'] = _pipeline_summary(cfg)['jobs']
|
|
120
122
|
if getattr(args, 'pipelines', False):
|
|
121
123
|
sections['pipelines'] = [cfg.name]
|
|
122
124
|
if getattr(args, 'sources', False):
|
|
@@ -598,6 +600,12 @@ def cmd_pipeline(
|
|
|
598
600
|
int
|
|
599
601
|
Zero on success.
|
|
600
602
|
"""
|
|
603
|
+
print(
|
|
604
|
+
'DEPRECATED: use "etlplus list --summary|--jobs" or '
|
|
605
|
+
'"etlplus run --job/--pipeline" instead of "etlplus pipeline".',
|
|
606
|
+
file=sys.stderr,
|
|
607
|
+
)
|
|
608
|
+
|
|
601
609
|
cfg = load_pipeline_config(args.config, substitute=True)
|
|
602
610
|
|
|
603
611
|
list_flag = getattr(args, 'list', False) or getattr(args, 'jobs', False)
|
|
@@ -635,6 +643,10 @@ def cmd_list(args: argparse.Namespace) -> int:
|
|
|
635
643
|
Zero on success.
|
|
636
644
|
"""
|
|
637
645
|
cfg = load_pipeline_config(args.config, substitute=True)
|
|
646
|
+
if getattr(args, 'summary', False):
|
|
647
|
+
print_json(_pipeline_summary(cfg))
|
|
648
|
+
return 0
|
|
649
|
+
|
|
638
650
|
print_json(_list_sections(cfg, args))
|
|
639
651
|
return 0
|
|
640
652
|
|
etlplus/cli/main.py
CHANGED
|
@@ -422,8 +422,9 @@ def create_parser() -> argparse.ArgumentParser:
|
|
|
422
422
|
pipe_parser = subparsers.add_parser(
|
|
423
423
|
'pipeline',
|
|
424
424
|
help=(
|
|
425
|
-
'
|
|
426
|
-
|
|
425
|
+
'DEPRECATED: use "list" (for summary/jobs) or "run" (to execute); '
|
|
426
|
+
'see '
|
|
427
|
+
f'{PROJECT_URL}/blob/main/docs/pipeline-guide.md'
|
|
427
428
|
),
|
|
428
429
|
formatter_class=argparse.ArgumentDefaultsHelpFormatter,
|
|
429
430
|
)
|
|
@@ -446,6 +447,11 @@ def create_parser() -> argparse.ArgumentParser:
|
|
|
446
447
|
formatter_class=argparse.ArgumentDefaultsHelpFormatter,
|
|
447
448
|
)
|
|
448
449
|
_add_config_option(list_parser)
|
|
450
|
+
_add_boolean_flag(
|
|
451
|
+
list_parser,
|
|
452
|
+
name='jobs',
|
|
453
|
+
help_text='List ETL jobs',
|
|
454
|
+
)
|
|
449
455
|
_add_boolean_flag(
|
|
450
456
|
list_parser,
|
|
451
457
|
name='pipelines',
|
|
@@ -456,6 +462,13 @@ def create_parser() -> argparse.ArgumentParser:
|
|
|
456
462
|
name='sources',
|
|
457
463
|
help_text='List data sources',
|
|
458
464
|
)
|
|
465
|
+
_add_boolean_flag(
|
|
466
|
+
list_parser,
|
|
467
|
+
name='summary',
|
|
468
|
+
help_text=(
|
|
469
|
+
'Show pipeline summary (name, version, sources, targets, jobs)'
|
|
470
|
+
),
|
|
471
|
+
)
|
|
459
472
|
_add_boolean_flag(
|
|
460
473
|
list_parser,
|
|
461
474
|
name='targets',
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: etlplus
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.9
|
|
4
4
|
Summary: A Swiss Army knife for simple ETL operations
|
|
5
5
|
Home-page: https://github.com/Dagitali/ETLPlus
|
|
6
6
|
Author: ETLPlus Team
|
|
@@ -306,6 +306,19 @@ For YAML-driven pipelines executed end-to-end (extract → validate → transfor
|
|
|
306
306
|
- Authoring: [`docs/pipeline-guide.md`](docs/pipeline-guide.md)
|
|
307
307
|
- Runner API and internals: [`docs/run-module.md`](docs/run-module.md)
|
|
308
308
|
|
|
309
|
+
CLI quick reference for pipelines:
|
|
310
|
+
|
|
311
|
+
```bash
|
|
312
|
+
# List jobs or show a pipeline summary
|
|
313
|
+
etlplus list --config examples/configs/pipeline.yml --jobs
|
|
314
|
+
etlplus list --config examples/configs/pipeline.yml --summary
|
|
315
|
+
|
|
316
|
+
# Run a job
|
|
317
|
+
etlplus run --config examples/configs/pipeline.yml --job file_to_file_customers
|
|
318
|
+
|
|
319
|
+
# Deprecated shim (will be removed): etlplus pipeline
|
|
320
|
+
```
|
|
321
|
+
|
|
309
322
|
### Complete ETL Pipeline Example
|
|
310
323
|
|
|
311
324
|
```bash
|
|
@@ -31,9 +31,9 @@ etlplus/api/rate_limiting/__init__.py,sha256=ZySB1dZettEDnWvI1EHf_TZ9L08M_kKsNR-
|
|
|
31
31
|
etlplus/api/rate_limiting/config.py,sha256=2b4wIynblN-1EyMqI4aXa71SljzSjXYh5N1Nngr3jOg,9406
|
|
32
32
|
etlplus/api/rate_limiting/rate_limiter.py,sha256=Uxozqd_Ej5Lsj-M-mLT2WexChgWh7x35_YP10yqYPQA,7159
|
|
33
33
|
etlplus/cli/__init__.py,sha256=J97-Rv931IL1_b4AXnB7Fbbd7HKnHBpx18NQfC_kE6c,299
|
|
34
|
-
etlplus/cli/app.py,sha256=
|
|
35
|
-
etlplus/cli/handlers.py,sha256=
|
|
36
|
-
etlplus/cli/main.py,sha256=
|
|
34
|
+
etlplus/cli/app.py,sha256=A8MxgKpJs9_KeyAgkopLrdJnB0SH24Mlxituh9Uwmrw,32991
|
|
35
|
+
etlplus/cli/handlers.py,sha256=mObms9k-3XoImECNW-CpOqQkJzlRtDlobU3sHMu4itM,16190
|
|
36
|
+
etlplus/cli/main.py,sha256=rl0NmZdzWwlGQSVyzWYutbBwHWOmBFYJcEjl6fYhwm0,15395
|
|
37
37
|
etlplus/config/__init__.py,sha256=VZWzOg7d2YR9NT6UwKTv44yf2FRUMjTHynkm1Dl5Qzo,1486
|
|
38
38
|
etlplus/config/connector.py,sha256=0-TIwevHbKRHVmucvyGpPd-3tB1dKHB-dj0yJ6kq5eY,9809
|
|
39
39
|
etlplus/config/jobs.py,sha256=hmzRCqt0OvCEZZR4ONKrd3lvSv0OmayjLc4yOBk3ug8,7399
|
|
@@ -43,9 +43,9 @@ etlplus/config/types.py,sha256=a0epJ3z16HQ5bY3Ctf8s_cQPa3f0HHcwdOcjCP2xoG4,4954
|
|
|
43
43
|
etlplus/config/utils.py,sha256=4SUHMkt5bKBhMhiJm-DrnmE2Q4TfOgdNCKz8PJDS27o,3443
|
|
44
44
|
etlplus/validation/__init__.py,sha256=Pe5Xg1_EA4uiNZGYu5WTF3j7odjmyxnAJ8rcioaplSQ,1254
|
|
45
45
|
etlplus/validation/utils.py,sha256=Mtqg449VIke0ziy_wd2r6yrwJzQkA1iulZC87FzXMjo,10201
|
|
46
|
-
etlplus-0.4.
|
|
47
|
-
etlplus-0.4.
|
|
48
|
-
etlplus-0.4.
|
|
49
|
-
etlplus-0.4.
|
|
50
|
-
etlplus-0.4.
|
|
51
|
-
etlplus-0.4.
|
|
46
|
+
etlplus-0.4.9.dist-info/licenses/LICENSE,sha256=MuNO63i6kWmgnV2pbP2SLqP54mk1BGmu7CmbtxMmT-U,1069
|
|
47
|
+
etlplus-0.4.9.dist-info/METADATA,sha256=hEyIXQ7XwoLu5Y3fJwslHtyfLhChIxHV_BaWCz22LT4,17635
|
|
48
|
+
etlplus-0.4.9.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
49
|
+
etlplus-0.4.9.dist-info/entry_points.txt,sha256=6w-2-jzuPa55spzK34h-UKh2JTEShh38adFRONNP9QE,45
|
|
50
|
+
etlplus-0.4.9.dist-info/top_level.txt,sha256=aWWF-udn_sLGuHTM6W6MLh99ArS9ROkUWO8Mi8y1_2U,8
|
|
51
|
+
etlplus-0.4.9.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|