bigeye-cli 0.3.51__tar.gz → 0.3.53__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.
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/PKG-INFO +8 -6
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/CLI_DOCS.md +6 -4
- bigeye_cli-0.3.53/bigeye_cli/__version__.py +2 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/catalog/catalog_commands.py +58 -5
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/deltas/deltas_commands.py +2 -6
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/functions.py +1 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/metric/metric_commands.py +6 -2
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/pyproject.toml +2 -2
- bigeye_cli-0.3.51/bigeye_cli/__version__.py +0 -2
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/LICENSE +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/__main__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/bigconfig/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/bigconfig/bigconfig_commands.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/bigconfig/bigconfig_options.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/catalog/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/collections/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/collections/collection_commands.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/configure/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/configure/configure_commands.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/deltas/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/enums.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/exceptions/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/exceptions/exceptions.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/global_options.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/issues/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/issues/issue_commands.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/lineage/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/lineage/lineage_commands.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/metric/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/model/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/model/cicd_conf.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/model/github_report.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/model/vendor_report.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/workspace/__init__.py +0 -0
- {bigeye_cli-0.3.51 → bigeye_cli-0.3.53}/bigeye_cli/workspace/workspace_commands.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: bigeye-cli
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.53
|
|
4
4
|
Summary: Bigeye CLI offers developer tools for maintaining your developer workspace.
|
|
5
5
|
Home-page: https://docs.bigeye.com/docs
|
|
6
6
|
License: Proprietary
|
|
@@ -13,13 +13,13 @@ Classifier: Programming Language :: Python :: 3.9
|
|
|
13
13
|
Classifier: Programming Language :: Python :: 3.10
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.11
|
|
15
15
|
Requires-Dist: PyGithub (>=1.57,<2.0)
|
|
16
|
-
Requires-Dist: bigeye-sdk (>=0.4.
|
|
16
|
+
Requires-Dist: bigeye-sdk (>=0.4.73,<0.5.0)
|
|
17
17
|
Requires-Dist: click (>=8.0.4,<9.0.0)
|
|
18
18
|
Requires-Dist: rich (>=12.4.4,<13.0.0)
|
|
19
19
|
Description-Content-Type: text/markdown
|
|
20
20
|
|
|
21
21
|
# **Bigeye CLI**
|
|
22
|
-
Version: 0.3.
|
|
22
|
+
Version: 0.3.52
|
|
23
23
|
## Installation
|
|
24
24
|
|
|
25
25
|
**Setting up your local/build environment**
|
|
@@ -191,7 +191,9 @@ password = fakepassword1234
|
|
|
191
191
|
|
|
192
192
|
**Note:** Most use cases will only require you to have a single `DEFAULT` credential that all workspaces can utilize. Running the `bigeye configure -w <workspace-name>` command for a non-default workspace will prompt you to inherit the credentials from default or create a new set of credentials. A workspace credential is only required if the `use_default_credential` setting is set to False in the configuration of the corresponding workspace.
|
|
193
193
|
|
|
194
|
-
# CLI Documentation
|
|
194
|
+
# CLI Documentation
|
|
195
|
+
|
|
196
|
+
# `bigeye configure`
|
|
195
197
|
|
|
196
198
|
Configuration Commands for Bigeye CLI
|
|
197
199
|
|
|
@@ -1481,8 +1483,8 @@ $ bigeye deltas suggest-deltas [OPTIONS]
|
|
|
1481
1483
|
* `-b, --bigeye_conf TEXT`: Bigeye Credential File Path [env var: BIGEYE_API_CRED_FILE]
|
|
1482
1484
|
* `-c, --config_file TEXT`: Bigeye CLI Configuration File Path [env var: BIGEYE_API_CONFIG_FILE]
|
|
1483
1485
|
* `-w, --workspace TEXT`: Name of the workspace configuration. [env var: BIGEYE_WORKSPACE; default: DEFAULT]
|
|
1484
|
-
*
|
|
1485
|
-
*
|
|
1486
|
+
* `-source, --source_selector TEXT`: The pattern of tables in the source to select. Wildcard (*) indicates all tables or all schemas, e.g. source_1.*.* would be all schemas in source_1. [required]
|
|
1487
|
+
* `-target, --target_selector TEXT`: The pattern of tables in the target to select. Wildcard (*) indicates all tables or all schemas, e.g. source_2.*.* would be all schemas in source_2. [required]
|
|
1486
1488
|
* `-mt, --match_type [strict|fuzzy]`: How to match tables between the source and target destinations. Strict will only create relations if table names match exactly, Fuzzy will attempt to create relations using a fuzzy match. [default: MatchType.STRICT]
|
|
1487
1489
|
* `-op, --output_path TEXT`: File to write the delta configuration. [required]
|
|
1488
1490
|
* `--help`: Show this message and exit.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# **Bigeye CLI**
|
|
2
|
-
Version: 0.3.
|
|
2
|
+
Version: 0.3.52
|
|
3
3
|
## Installation
|
|
4
4
|
|
|
5
5
|
**Setting up your local/build environment**
|
|
@@ -171,7 +171,9 @@ password = fakepassword1234
|
|
|
171
171
|
|
|
172
172
|
**Note:** Most use cases will only require you to have a single `DEFAULT` credential that all workspaces can utilize. Running the `bigeye configure -w <workspace-name>` command for a non-default workspace will prompt you to inherit the credentials from default or create a new set of credentials. A workspace credential is only required if the `use_default_credential` setting is set to False in the configuration of the corresponding workspace.
|
|
173
173
|
|
|
174
|
-
# CLI Documentation
|
|
174
|
+
# CLI Documentation
|
|
175
|
+
|
|
176
|
+
# `bigeye configure`
|
|
175
177
|
|
|
176
178
|
Configuration Commands for Bigeye CLI
|
|
177
179
|
|
|
@@ -1461,8 +1463,8 @@ $ bigeye deltas suggest-deltas [OPTIONS]
|
|
|
1461
1463
|
* `-b, --bigeye_conf TEXT`: Bigeye Credential File Path [env var: BIGEYE_API_CRED_FILE]
|
|
1462
1464
|
* `-c, --config_file TEXT`: Bigeye CLI Configuration File Path [env var: BIGEYE_API_CONFIG_FILE]
|
|
1463
1465
|
* `-w, --workspace TEXT`: Name of the workspace configuration. [env var: BIGEYE_WORKSPACE; default: DEFAULT]
|
|
1464
|
-
*
|
|
1465
|
-
*
|
|
1466
|
+
* `-source, --source_selector TEXT`: The pattern of tables in the source to select. Wildcard (*) indicates all tables or all schemas, e.g. source_1.*.* would be all schemas in source_1. [required]
|
|
1467
|
+
* `-target, --target_selector TEXT`: The pattern of tables in the target to select. Wildcard (*) indicates all tables or all schemas, e.g. source_2.*.* would be all schemas in source_2. [required]
|
|
1466
1468
|
* `-mt, --match_type [strict|fuzzy]`: How to match tables between the source and target destinations. Strict will only create relations if table names match exactly, Fuzzy will attempt to create relations using a fuzzy match. [default: MatchType.STRICT]
|
|
1467
1469
|
* `-op, --output_path TEXT`: File to write the delta configuration. [required]
|
|
1468
1470
|
* `--help`: Show this message and exit.
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
# create logger
|
|
2
1
|
import json
|
|
3
2
|
import logging
|
|
4
3
|
from pathlib import Path
|
|
5
|
-
from typing import Optional, List,
|
|
4
|
+
from typing import Optional, List, Dict
|
|
6
5
|
|
|
7
6
|
import typer
|
|
8
7
|
from rich.progress import track
|
|
@@ -12,12 +11,12 @@ from bigeye_sdk.client.enum import Method
|
|
|
12
11
|
from bigeye_cli.enums import OPS_METRICS
|
|
13
12
|
from bigeye_cli import global_options
|
|
14
13
|
from bigeye_sdk.functions.dbt import parse_dbt_manifest
|
|
14
|
+
from bigeye_sdk.functions.file_functs import read_json_file
|
|
15
15
|
from bigeye_sdk.functions.search_and_match_functions import fuzzy_match
|
|
16
16
|
from bigeye_sdk.model.dbt_manifest import DbtManifest
|
|
17
17
|
from bigeye_sdk.model.protobuf_enum_facade import (
|
|
18
18
|
MetricStatus,
|
|
19
19
|
SimpleMetricCategory,
|
|
20
|
-
SimpleMetricTemplateParameterType,
|
|
21
20
|
SimpleMetricTemplateFieldType,
|
|
22
21
|
)
|
|
23
22
|
from bigeye_sdk.functions.aws import get_secret
|
|
@@ -46,6 +45,7 @@ from bigeye_cli.functions import (
|
|
|
46
45
|
from bigeye_sdk.functions.metric_functions import has_auto_threshold
|
|
47
46
|
from bigeye_sdk.functions.core_py_functs import int_enum_enum_list_joined
|
|
48
47
|
|
|
48
|
+
# create logger
|
|
49
49
|
log = get_logger(__file__)
|
|
50
50
|
|
|
51
51
|
app = typer.Typer(no_args_is_help=True, help="Catalog Commands for Bigeye CLI")
|
|
@@ -520,7 +520,7 @@ def backfill_metrics(
|
|
|
520
520
|
"--queue",
|
|
521
521
|
"-q",
|
|
522
522
|
help="Submit the batch to a queue. (Recommended for larger batches)",
|
|
523
|
-
)
|
|
523
|
+
),
|
|
524
524
|
):
|
|
525
525
|
"""Backfills metrics by warehouse id, schema names, and/or table ids."""
|
|
526
526
|
client = cli_client_factory(bigeye_conf, config_file, workspace)
|
|
@@ -571,7 +571,7 @@ def run_metrics(
|
|
|
571
571
|
"--queue",
|
|
572
572
|
"-q",
|
|
573
573
|
help="Submit the batch to a queue. (Recommended for larger batches)",
|
|
574
|
-
)
|
|
574
|
+
),
|
|
575
575
|
):
|
|
576
576
|
"""Runs metrics by warehouse id, schema names, and/or table ids"""
|
|
577
577
|
client = cli_client_factory(bigeye_conf, config_file, workspace)
|
|
@@ -1075,3 +1075,56 @@ def ingest_owners_from_dbt(
|
|
|
1075
1075
|
f"No matching Bigeye user found for model: {model_name} - "
|
|
1076
1076
|
f"owner: {node.config.meta.owner}"
|
|
1077
1077
|
)
|
|
1078
|
+
|
|
1079
|
+
|
|
1080
|
+
@app.command()
|
|
1081
|
+
def ingest_dbt_core_run_info(
|
|
1082
|
+
bigeye_conf: str = global_options.bigeye_conf,
|
|
1083
|
+
config_file: str = global_options.config_file,
|
|
1084
|
+
workspace: str = global_options.workspace,
|
|
1085
|
+
target_path: Optional[str] = typer.Option(
|
|
1086
|
+
"./target",
|
|
1087
|
+
"--target_path",
|
|
1088
|
+
"-tp",
|
|
1089
|
+
help="The path to the target directory created with dbt run, build, and test commands.",
|
|
1090
|
+
),
|
|
1091
|
+
project_name: Optional[str] = typer.Option(
|
|
1092
|
+
None, "--project_name", "-pn", help="The name of the dbt project. Will attempt to parse from metadata section of manifest.json, if not present"
|
|
1093
|
+
),
|
|
1094
|
+
job_name: Optional[str] = typer.Option(
|
|
1095
|
+
None, "--job_name", "-jn", help="The name of the dbt job."
|
|
1096
|
+
),
|
|
1097
|
+
job_run_id: Optional[str] = typer.Option(
|
|
1098
|
+
None, "--job_run_id", "-jid", help="The ID of the dbt job run."
|
|
1099
|
+
),
|
|
1100
|
+
project_url: Optional[str] = typer.Option(
|
|
1101
|
+
None, "--project_url", "-purl", help="The URL of the project."
|
|
1102
|
+
),
|
|
1103
|
+
job_url: Optional[str] = typer.Option(
|
|
1104
|
+
None, "--job_url", "-jurl", help="The URL of the job."
|
|
1105
|
+
),
|
|
1106
|
+
job_run_url: Optional[str] = typer.Option(
|
|
1107
|
+
None, "--job_run_url", "-jrurl", help="The URL of the job run."
|
|
1108
|
+
),
|
|
1109
|
+
):
|
|
1110
|
+
"""Ingest manifest.json and run_results.json from different dbt commands."""
|
|
1111
|
+
|
|
1112
|
+
manifest_json = read_json_file(file_path=f"{target_path}/manifest.json")
|
|
1113
|
+
run_results_json = read_json_file(file_path=f"{target_path}/run_results.json")
|
|
1114
|
+
|
|
1115
|
+
client = cli_client_factory(bigeye_conf, config_file, workspace)
|
|
1116
|
+
|
|
1117
|
+
response = client.send_dbt_core_job_info(
|
|
1118
|
+
project_name=project_name,
|
|
1119
|
+
job_name=job_name,
|
|
1120
|
+
job_run_id=job_run_id,
|
|
1121
|
+
manifest_json=json.dumps(manifest_json),
|
|
1122
|
+
run_results_json=json.dumps(run_results_json),
|
|
1123
|
+
project_url=project_url,
|
|
1124
|
+
job_url=job_url,
|
|
1125
|
+
job_run_url=job_run_url
|
|
1126
|
+
)
|
|
1127
|
+
|
|
1128
|
+
log.info(
|
|
1129
|
+
f"The following response was returned:\n\n\t{response.to_json(indent=True)}"
|
|
1130
|
+
)
|
|
@@ -45,23 +45,19 @@ def suggest_deltas(
|
|
|
45
45
|
bigeye_conf: str = global_options.bigeye_conf,
|
|
46
46
|
config_file: str = global_options.config_file,
|
|
47
47
|
workspace: str = global_options.workspace,
|
|
48
|
-
source_selector: str = (
|
|
49
|
-
typer.Option(
|
|
48
|
+
source_selector: str = typer.Option(
|
|
50
49
|
...,
|
|
51
50
|
"--source_selector",
|
|
52
51
|
"-source",
|
|
53
52
|
help="The pattern of tables in the source to select. Wildcard (*) indicates all tables or all "
|
|
54
53
|
"schemas, e.g. source_1.*.* would be all schemas in source_1.",
|
|
55
|
-
),
|
|
56
54
|
),
|
|
57
|
-
target_selector: List[str] = (
|
|
58
|
-
typer.Option(
|
|
55
|
+
target_selector: List[str] = typer.Option(
|
|
59
56
|
...,
|
|
60
57
|
"--target_selector",
|
|
61
58
|
"-target",
|
|
62
59
|
help="The pattern of tables in the target to select. Wildcard (*) indicates all tables or all "
|
|
63
60
|
"schemas, e.g. source_2.*.* would be all schemas in source_2.",
|
|
64
|
-
),
|
|
65
61
|
),
|
|
66
62
|
match_type: Optional[MatchType] = typer.Option(
|
|
67
63
|
MatchType.STRICT,
|
|
@@ -8,6 +8,8 @@ import typer
|
|
|
8
8
|
import json
|
|
9
9
|
from pathlib import Path
|
|
10
10
|
|
|
11
|
+
import yaml
|
|
12
|
+
|
|
11
13
|
from bigeye_cli import global_options
|
|
12
14
|
from bigeye_cli.enums import MetricFileType
|
|
13
15
|
from bigeye_sdk.controller.metric_controller import MetricController
|
|
@@ -329,12 +331,14 @@ def dbt_tests_to_metrics(
|
|
|
329
331
|
),
|
|
330
332
|
):
|
|
331
333
|
"""Convert tests in a dbt schema.yml to metrics in Bigeye"""
|
|
332
|
-
|
|
334
|
+
with open(schema_file) as fin:
|
|
335
|
+
schema_yml = yaml.safe_load(fin)
|
|
336
|
+
dbt_schema = SimpleDbtSchema(**schema_yml)
|
|
333
337
|
client = cli_client_factory(bigeye_conf, config_file, workspace)
|
|
334
338
|
metric_controller = MetricController(client=client)
|
|
335
339
|
source = client.get_sources_by_name(source_names=[warehouse_name])[warehouse_name]
|
|
336
340
|
dbt_tables: Dict[str, List[SimpleMetricDefinition]] = {
|
|
337
|
-
t.name: t.
|
|
341
|
+
t.name: t.column_tests for t in dbt_schema.models
|
|
338
342
|
}
|
|
339
343
|
tables: Dict[str, Table] = {
|
|
340
344
|
t.name.lower(): t
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "bigeye-cli"
|
|
3
|
-
version = "0.3.
|
|
3
|
+
version = "0.3.53"
|
|
4
4
|
description = "Bigeye CLI offers developer tools for maintaining your developer workspace."
|
|
5
5
|
license = "Proprietary"
|
|
6
6
|
authors = ["Bigeye <support@bigeye.com>"]
|
|
@@ -19,7 +19,7 @@ bigeye = "bigeye_cli.__main__:app"
|
|
|
19
19
|
[tool.poetry.dependencies]
|
|
20
20
|
python = "^3.9.0"
|
|
21
21
|
click = "^8.0.4"
|
|
22
|
-
bigeye-sdk = "^0.4.
|
|
22
|
+
bigeye-sdk = "^0.4.73"
|
|
23
23
|
rich = "^12.4.4"
|
|
24
24
|
PyGithub = '^1.57'
|
|
25
25
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|