datacontract-cli 0.10.10__py3-none-any.whl → 0.10.12__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.
Potentially problematic release.
This version of datacontract-cli might be problematic. Click here for more details.
- datacontract/cli.py +19 -3
- datacontract/data_contract.py +17 -17
- datacontract/engines/fastjsonschema/check_jsonschema.py +15 -1
- datacontract/engines/fastjsonschema/s3/s3_read_files.py +2 -0
- datacontract/engines/soda/check_soda_execute.py +2 -8
- datacontract/engines/soda/connections/duckdb.py +23 -20
- datacontract/engines/soda/connections/kafka.py +81 -23
- datacontract/engines/soda/connections/snowflake.py +8 -5
- datacontract/export/avro_converter.py +12 -2
- datacontract/export/dbml_converter.py +42 -19
- datacontract/export/exporter.py +2 -1
- datacontract/export/exporter_factory.py +6 -0
- datacontract/export/jsonschema_converter.py +1 -4
- datacontract/export/spark_converter.py +4 -0
- datacontract/export/sql_type_converter.py +64 -29
- datacontract/export/sqlalchemy_converter.py +169 -0
- datacontract/imports/avro_importer.py +1 -0
- datacontract/imports/bigquery_importer.py +2 -2
- datacontract/imports/dbml_importer.py +112 -0
- datacontract/imports/dbt_importer.py +67 -91
- datacontract/imports/glue_importer.py +64 -54
- datacontract/imports/importer.py +3 -2
- datacontract/imports/importer_factory.py +5 -0
- datacontract/imports/jsonschema_importer.py +106 -120
- datacontract/imports/odcs_importer.py +1 -1
- datacontract/imports/spark_importer.py +29 -10
- datacontract/imports/sql_importer.py +5 -1
- datacontract/imports/unity_importer.py +1 -1
- datacontract/integration/{publish_datamesh_manager.py → datamesh_manager.py} +33 -5
- datacontract/integration/{publish_opentelemetry.py → opentelemetry.py} +1 -1
- datacontract/model/data_contract_specification.py +6 -2
- datacontract/templates/partials/model_field.html +10 -2
- {datacontract_cli-0.10.10.dist-info → datacontract_cli-0.10.12.dist-info}/METADATA +283 -113
- {datacontract_cli-0.10.10.dist-info → datacontract_cli-0.10.12.dist-info}/RECORD +38 -37
- {datacontract_cli-0.10.10.dist-info → datacontract_cli-0.10.12.dist-info}/WHEEL +1 -1
- datacontract/publish/publish.py +0 -32
- {datacontract_cli-0.10.10.dist-info → datacontract_cli-0.10.12.dist-info}/LICENSE +0 -0
- {datacontract_cli-0.10.10.dist-info → datacontract_cli-0.10.12.dist-info}/entry_points.txt +0 -0
- {datacontract_cli-0.10.10.dist-info → datacontract_cli-0.10.12.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
datacontract/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
datacontract/cli.py,sha256=
|
|
3
|
-
datacontract/data_contract.py,sha256=
|
|
2
|
+
datacontract/cli.py,sha256=IFwIjs3q2SLEmBq02njzSGYUxGNPrJa15U3JTfThnn4,14931
|
|
3
|
+
datacontract/data_contract.py,sha256=zW2Mfju4cv5NzjWvfy9EFZHFYxvZaTWs4ILB7mS66wg,13883
|
|
4
4
|
datacontract/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
datacontract/web.py,sha256=Ov50NJVbQiaxjHXnVOvRw9moMkKHHcxFhdzwbA13QOw,2134
|
|
6
6
|
datacontract/breaking/breaking.py,sha256=l0ZwUX8G4QK_0nLRLJHArpwgTWTD7WQYMuAp3l_y1bY,12184
|
|
@@ -10,55 +10,57 @@ datacontract/engines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
|
|
|
10
10
|
datacontract/engines/datacontract/check_that_datacontract_contains_valid_servers_configuration.py,sha256=TXO47ON3NjwYI4Y2eBYklMOCo7vAtYzqLPAhZhii6dg,1565
|
|
11
11
|
datacontract/engines/datacontract/check_that_datacontract_file_exists.py,sha256=XHvxX6BrTdZk2wN55zd6ER4k7ILDyGzjbCbZxQAJ2iE,665
|
|
12
12
|
datacontract/engines/datacontract/check_that_datacontract_str_is_valid.py,sha256=CsxFGyInjpsylmoofByV1b-wpFhG1jtRWxSUpp-BXk8,1525
|
|
13
|
-
datacontract/engines/fastjsonschema/check_jsonschema.py,sha256=
|
|
14
|
-
datacontract/engines/fastjsonschema/s3/s3_read_files.py,sha256=
|
|
13
|
+
datacontract/engines/fastjsonschema/check_jsonschema.py,sha256=tI5mfdxilAn-zmq02s8t6pNww9-uJYTOjooO0HimwQo,6321
|
|
14
|
+
datacontract/engines/fastjsonschema/s3/s3_read_files.py,sha256=vuz_hLF2VD8LR_prjQpPLBU8Is-iHLAvqp4KwclOv9I,1157
|
|
15
15
|
datacontract/engines/soda/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
-
datacontract/engines/soda/check_soda_execute.py,sha256=
|
|
16
|
+
datacontract/engines/soda/check_soda_execute.py,sha256=BcPPq2kjOk5dMMjlVC-cspU3a1rpRfvRJ8XoXeBu79Y,7724
|
|
17
17
|
datacontract/engines/soda/connections/bigquery.py,sha256=C-8kxmzpYe88bJp80ObHFLMh4rpnIjnUQ7XOj0Ke7lk,903
|
|
18
18
|
datacontract/engines/soda/connections/dask.py,sha256=Yy6Et2n_vDVsdjtqyBWDSZt7mnjPzPk_MZ-92VZHfnY,1496
|
|
19
19
|
datacontract/engines/soda/connections/databricks.py,sha256=lpMju-o_TzLZeF0EEVwePPr8JahqvFnj5xRYjF15fc8,561
|
|
20
|
-
datacontract/engines/soda/connections/duckdb.py,sha256=
|
|
21
|
-
datacontract/engines/soda/connections/kafka.py,sha256=
|
|
20
|
+
datacontract/engines/soda/connections/duckdb.py,sha256=OVaxDO9HwfD4M6FYDIDS4zwnUJ20uAM1jz_Fy3EkClo,6271
|
|
21
|
+
datacontract/engines/soda/connections/kafka.py,sha256=VPbH0GfJO_YuBGTyQ3xehjm-sVzSGn4y0bt-fZqPcok,7481
|
|
22
22
|
datacontract/engines/soda/connections/postgres.py,sha256=9GTF4Es3M5vb7ocSGqAxXmslvkS5CjsPQGIuo020CFc,626
|
|
23
|
-
datacontract/engines/soda/connections/snowflake.py,sha256=
|
|
23
|
+
datacontract/engines/soda/connections/snowflake.py,sha256=rfG2ysuqNM6TkvyqQKcGHFsTGJ6AROmud5VleUDRrb0,749
|
|
24
24
|
datacontract/engines/soda/connections/sqlserver.py,sha256=RzGLbCUdRyfmDcqtM_AB9WZ-Xk-XYX91nkXpVNpYbvc,1440
|
|
25
25
|
datacontract/engines/soda/connections/trino.py,sha256=JvKUP9aFg_n095oWE0-bGmfbETSWEOURGEZdQuG8txA,718
|
|
26
26
|
datacontract/export/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
-
datacontract/export/avro_converter.py,sha256=
|
|
27
|
+
datacontract/export/avro_converter.py,sha256=n14GtP88c5lpcxyxF5W86k7xYGiwc6j0PIedElbeWjM,4171
|
|
28
28
|
datacontract/export/avro_idl_converter.py,sha256=-zZxV0OAC76tMkAA9hXbEtp2wtpildKJb0OIbPhgoJE,9794
|
|
29
29
|
datacontract/export/bigquery_converter.py,sha256=chAxgbYybyLG5v6SwqIweK9PePvE-36FStR7fyA_F_4,4577
|
|
30
30
|
datacontract/export/csv_type_converter.py,sha256=ZZuJwBgQnafZC7PPvAXsBf2IajPJq8TYZ1l8Qq0GYeI,1290
|
|
31
|
-
datacontract/export/dbml_converter.py,sha256=
|
|
31
|
+
datacontract/export/dbml_converter.py,sha256=Lmg0so_YP652UvDiNYyhAzzxtYvaHQBWFMUHzWadSDA,4739
|
|
32
32
|
datacontract/export/dbt_converter.py,sha256=QfapVeunwab7bWn_B9-J_1U8fm1wdsPBW_Ws2b99o1E,9390
|
|
33
|
-
datacontract/export/exporter.py,sha256=
|
|
34
|
-
datacontract/export/exporter_factory.py,sha256=
|
|
33
|
+
datacontract/export/exporter.py,sha256=BKUAUT6vifrBn0ktIZ7V0HHAMWhmQMohM2v-TBoHOlA,2875
|
|
34
|
+
datacontract/export/exporter_factory.py,sha256=cKyoHolVw3HrUtaqMKyh5NppvlNd_v54xJFC5bOD0gI,4931
|
|
35
35
|
datacontract/export/go_converter.py,sha256=oWkEjOXBIGN8emTaxeJD8xpB3VYP4sVaNzKX-Oeqgw0,3330
|
|
36
36
|
datacontract/export/great_expectations_converter.py,sha256=LIuWHn3h7xRrDDs1YoibHOI8NVF2Izh5IZOQFLeWN7k,5302
|
|
37
37
|
datacontract/export/html_export.py,sha256=i7jckL80osA8incF0YoJdq3NaYmV1_3OU0cZBfPdNDs,2578
|
|
38
|
-
datacontract/export/jsonschema_converter.py,sha256=
|
|
38
|
+
datacontract/export/jsonschema_converter.py,sha256=Zqx4K7RZWfE9n_F4CMext82jd2Gr6EoqOnBXChRJgfM,4948
|
|
39
39
|
datacontract/export/odcs_converter.py,sha256=WngHoTF7R9uMDLCedBso7m2s0yDJQS5HTACtH3AhG-E,4673
|
|
40
40
|
datacontract/export/protobuf_converter.py,sha256=Baqq2uvRg0AHFo6gR-hEYdLyiYRWziC1Q4AujlHgCzo,3192
|
|
41
41
|
datacontract/export/pydantic_converter.py,sha256=1Lt9F8i6zyQYb44MyQtsXwCWWXYxZ47SmzArr_uPqsU,5579
|
|
42
42
|
datacontract/export/rdf_converter.py,sha256=nNYVKJ5bQEq-rRz3yHwpvbsNbvjoOMwkCfkev8Y11H0,6436
|
|
43
43
|
datacontract/export/sodacl_converter.py,sha256=Uv3BOsq20YKCHmSU6mN-6L2hPPF4V9fPxDoJ42okfHs,7280
|
|
44
|
-
datacontract/export/spark_converter.py,sha256=
|
|
44
|
+
datacontract/export/spark_converter.py,sha256=wyJLxsyE6lQx_JyMsPtkN67ogggNUef0TE4kcIicZaA,6990
|
|
45
45
|
datacontract/export/sql_converter.py,sha256=grDTj3MGhVc5BbJbZ__LFawJtrsnv4ApmOMX4ohPnCQ,4802
|
|
46
|
-
datacontract/export/sql_type_converter.py,sha256=
|
|
46
|
+
datacontract/export/sql_type_converter.py,sha256=hxIpkCZ3Isi_8Hj06D6PP0r92091J3lSy1QzSQdfeLw,10854
|
|
47
|
+
datacontract/export/sqlalchemy_converter.py,sha256=x2_MVvDMfqgf_c5yfWimSC0um718EYYUpFiCe1-HN4g,6469
|
|
47
48
|
datacontract/export/terraform_converter.py,sha256=IFwn-6BWPVkfwDQbj_Gl0GwbJdMKiwKgXCXz5A64cEs,2163
|
|
48
|
-
datacontract/imports/avro_importer.py,sha256=
|
|
49
|
-
datacontract/imports/bigquery_importer.py,sha256=
|
|
50
|
-
datacontract/imports/
|
|
51
|
-
datacontract/imports/
|
|
52
|
-
datacontract/imports/
|
|
53
|
-
datacontract/imports/
|
|
54
|
-
datacontract/imports/
|
|
55
|
-
datacontract/imports/
|
|
56
|
-
datacontract/imports/
|
|
57
|
-
datacontract/imports/
|
|
58
|
-
datacontract/imports/
|
|
49
|
+
datacontract/imports/avro_importer.py,sha256=HkzaMCa9A20D3Z0O_7I67TRcqyNV9XGYX_0JAF51qF8,9937
|
|
50
|
+
datacontract/imports/bigquery_importer.py,sha256=zQU-eMOcY3ZRDXwyA4RYMorLKrSK0kgGRekuEPthh-A,8419
|
|
51
|
+
datacontract/imports/dbml_importer.py,sha256=iWX8EmCRqGfVCtpI2oojVCQQA7oTahtsMUUm_3gPRcE,3869
|
|
52
|
+
datacontract/imports/dbt_importer.py,sha256=f96-eGbdkDMh8B6iKhWy4qfAskE-b4dpWYHfenjTX8Y,3236
|
|
53
|
+
datacontract/imports/glue_importer.py,sha256=QuMvuga4rfiYm59AopFrscGPaiJkgrjtbu0-09_uF_A,8368
|
|
54
|
+
datacontract/imports/importer.py,sha256=FE9YsrcNunLiEpNGXd6PAHb_Zs8_dVUQPPBqOVAMBcE,812
|
|
55
|
+
datacontract/imports/importer_factory.py,sha256=0D8imN7WvQyvASkYHN8JTvNO9VLBllwHlyTeZNUD9Js,3155
|
|
56
|
+
datacontract/imports/jsonschema_importer.py,sha256=cY70b2bFx9Kfsnq5vNj0iy_GvNOIcBH8xeFjrsxv4bQ,4925
|
|
57
|
+
datacontract/imports/odcs_importer.py,sha256=uDBCzWi8mKCslw6Og5t-037dVVVZVsbJjK3EHJH_zQI,7474
|
|
58
|
+
datacontract/imports/spark_importer.py,sha256=fEOtUPVBRkhvaxsdk6fgRd_j-ka1TDwdrh6KkTLvv30,4942
|
|
59
|
+
datacontract/imports/sql_importer.py,sha256=CiOzSthTwyjCHxYQNVO7j4udchEFER8gtXrr_IyX2dU,2890
|
|
60
|
+
datacontract/imports/unity_importer.py,sha256=5qoU-PRq8ABXxiqVll--L2_6V0iAVQgkooWcvRuchLU,5604
|
|
59
61
|
datacontract/init/download_datacontract_file.py,sha256=pj_4mhWKlEtfueWohDgkb1nyuG5ERDipUDszxKwpZUs,413
|
|
60
|
-
datacontract/integration/
|
|
61
|
-
datacontract/integration/
|
|
62
|
+
datacontract/integration/datamesh_manager.py,sha256=iNjDrcZfH8vyNbyQPbxkv7XMfG5rtbcLZXIlfMJ0c8c,2752
|
|
63
|
+
datacontract/integration/opentelemetry.py,sha256=0XsqOsc06qNtXC5KqZCxyeC_IGlIi63lYWHh3KKlOO0,3828
|
|
62
64
|
datacontract/lint/files.py,sha256=tg0vq_w4LQsEr_8A5qr4hUJmHeGalUpsXJXC1t-OGC0,471
|
|
63
65
|
datacontract/lint/lint.py,sha256=GhgBwfDgihXfWIu1WUfYeJoxfYacVJrwq3L2KO4Z2Io,5076
|
|
64
66
|
datacontract/lint/resolve.py,sha256=KOGKrf5wZYgsa5-Uc0x5-C5GX1aVt6TSftIwD8zxy_Y,8815
|
|
@@ -73,10 +75,9 @@ datacontract/lint/linters/notice_period_linter.py,sha256=oHSOLU2uXd7BDvfEd_VjeXS
|
|
|
73
75
|
datacontract/lint/linters/quality_schema_linter.py,sha256=-zaI49okETJYo-qR-J6rQqMRI9QX17UK9ASf1GxgYnk,2181
|
|
74
76
|
datacontract/lint/linters/valid_constraints_linter.py,sha256=GeeE2hojMt24EoHuSHE1lURA2v2p5Dmxc7Qq8IvZQH0,4915
|
|
75
77
|
datacontract/model/breaking_change.py,sha256=BIDEUo1U2CQLVT2-I5PyFttxAj6zQPI1UUkEoOOQXMY,2249
|
|
76
|
-
datacontract/model/data_contract_specification.py,sha256=
|
|
78
|
+
datacontract/model/data_contract_specification.py,sha256=T_BEZojXRYC_1nc4wJf2Zlp0xZ9WWCqcC8VIGM6doS0,6073
|
|
77
79
|
datacontract/model/exceptions.py,sha256=zW9NoyzwsND-c9UqgyTVuezUVGEc6KK1Uc2zl12loyo,1178
|
|
78
80
|
datacontract/model/run.py,sha256=v7QNsPwYS1otQrpjeOaFsLRnxO8OgbdK_d-Z_e3iy0s,2610
|
|
79
|
-
datacontract/publish/publish.py,sha256=rWnQWWneCjokCpwYv88EAtAlFnA-3hZgl-1k6dak_8w,1191
|
|
80
81
|
datacontract/templates/datacontract.html,sha256=w9xGnjYFtFmmsU90_I1NHVLNcuS22flPw51oIAn56WY,13442
|
|
81
82
|
datacontract/templates/index.html,sha256=dggq8ng61xZEeu6-6tbTQqjNcRFT0JTkn7y75087U58,12503
|
|
82
83
|
datacontract/templates/partials/datacontract_information.html,sha256=7ZBxgEgi2XndKBypeOpe03oCSRPOujC6NVlN7zexGNM,6221
|
|
@@ -84,12 +85,12 @@ datacontract/templates/partials/datacontract_servicelevels.html,sha256=ed3QgB11B
|
|
|
84
85
|
datacontract/templates/partials/datacontract_terms.html,sha256=1cnJcOTpxwot2BCuZmkLF_SPfiVloLs3c8mj9WfE4sc,1865
|
|
85
86
|
datacontract/templates/partials/definition.html,sha256=jEvjThHghHT2bo4oMAfe3H0lzc4ZuqDsJFOpN9w3Nho,7085
|
|
86
87
|
datacontract/templates/partials/example.html,sha256=F1dWbHDIXQScgfs4OVgqM1lR4uV4xX5j6suasXHNM88,1204
|
|
87
|
-
datacontract/templates/partials/model_field.html,sha256=
|
|
88
|
+
datacontract/templates/partials/model_field.html,sha256=kh_ZIqJuayyxN-zDNIUPIoXOZeehGxXQxiImYB6G5qY,6946
|
|
88
89
|
datacontract/templates/partials/server.html,sha256=WkWFbz1ZvhIAUQQhH5Lkwb0HZRW907ehEnFmJSkpquQ,6235
|
|
89
90
|
datacontract/templates/style/output.css,sha256=F3oEhUpuv8kA_dWr4pJymBS_Ju6huIIZdLMkJzPzMmU,25647
|
|
90
|
-
datacontract_cli-0.10.
|
|
91
|
-
datacontract_cli-0.10.
|
|
92
|
-
datacontract_cli-0.10.
|
|
93
|
-
datacontract_cli-0.10.
|
|
94
|
-
datacontract_cli-0.10.
|
|
95
|
-
datacontract_cli-0.10.
|
|
91
|
+
datacontract_cli-0.10.12.dist-info/LICENSE,sha256=23h64qnSeIZ0DKeziWAKC-zBCt328iSbRbWBrXoYRb4,2210
|
|
92
|
+
datacontract_cli-0.10.12.dist-info/METADATA,sha256=Kg7oXLjfYrIU1uNuhJMh5VSlwOBYX9NukWQpznbcQow,88281
|
|
93
|
+
datacontract_cli-0.10.12.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
|
|
94
|
+
datacontract_cli-0.10.12.dist-info/entry_points.txt,sha256=D3Eqy4q_Z6bHauGd4ppIyQglwbrm1AJnLau4Ppbw9Is,54
|
|
95
|
+
datacontract_cli-0.10.12.dist-info/top_level.txt,sha256=VIRjd8EIUrBYWjEXJJjtdUgc0UAJdPZjmLiOR8BRBYM,13
|
|
96
|
+
datacontract_cli-0.10.12.dist-info/RECORD,,
|
datacontract/publish/publish.py
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
|
|
3
|
-
import requests
|
|
4
|
-
|
|
5
|
-
from datacontract.data_contract import DataContract
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
def publish_to_datamesh_manager(data_contract: DataContract):
|
|
9
|
-
try:
|
|
10
|
-
headers = {"Content-Type": "application/json", "x-api-key": _require_datamesh_manager_api_key()}
|
|
11
|
-
spec = data_contract.get_data_contract_specification()
|
|
12
|
-
id = spec.id
|
|
13
|
-
url = "https://api.datamesh-manager.com/api/datacontracts/{0}".format(id)
|
|
14
|
-
request_body = spec.model_dump_json().encode("utf-8")
|
|
15
|
-
response = requests.put(
|
|
16
|
-
url=url,
|
|
17
|
-
data=request_body,
|
|
18
|
-
headers=headers,
|
|
19
|
-
)
|
|
20
|
-
if response.status_code != 200:
|
|
21
|
-
print(f"Error publishing data contract to Data Mesh Manager: {response.text}")
|
|
22
|
-
exit(1)
|
|
23
|
-
print(f"Published data contract to {url}")
|
|
24
|
-
except Exception as e:
|
|
25
|
-
print(f"Failed publishing data contract. Error: {str(e)}")
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
def _require_datamesh_manager_api_key():
|
|
29
|
-
datamesh_manager_api_key = os.getenv("DATAMESH_MANAGER_API_KEY")
|
|
30
|
-
if datamesh_manager_api_key is None:
|
|
31
|
-
raise Exception("Cannot publish data contract, as DATAMESH_MANAGER_API_KEY is not set")
|
|
32
|
-
return datamesh_manager_api_key
|
|
File without changes
|
|
File without changes
|
|
File without changes
|