datajunction 0.0.250__tar.gz → 0.0.251__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.
- {datajunction-0.0.250 → datajunction-0.0.251}/PKG-INFO +1 -1
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/__about__.py +1 -1
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/deployment.py +6 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_deploy.py +47 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/.coveragerc +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/.gitignore +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/.pre-commit-config.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/LICENSE.txt +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/Makefile +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/README.md +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/claude_desktop_config.example.json +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/__init__.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/_base.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/_internal.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/admin.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/builder.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/cli.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/client.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/compile.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/exceptions.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/mcp/__init__.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/mcp/cli.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/mcp/config.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/models.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/nodes.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/rendering.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/init_system_nodes.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/date.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/deployment.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/dimension_link.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/distinct_node_authors.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/distinct_node_editors.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/is_active.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/materialization.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_deployment_duration_seconds.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_dim_links_per_node.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_dimension_indegree.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_downstream_count.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_revisions_per_node.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_upstream_count.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/namespace.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/node_revision.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/node_type.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/nodes.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_branches.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_deployments.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_materializations.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_namespaces.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_nodes.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_orphan_nodes.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_unused_dimensions.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/repo.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/user.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/skills/datajunction/SKILL.md +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/skills/datajunction-api/SKILL.md +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/skills/datajunction-query/SKILL.md +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/skills/datajunction-repo/SKILL.md +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/skills/datajunction-semantic-model/SKILL.md +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/datajunction/tags.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/pyproject.toml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/setup.cfg +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/__init__.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/conftest.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/roads/companies.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/roads/companies_dim.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/roads/contractor.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/roads/contractors.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/roads/us_state.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/roads/us_states.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/avg_length_of_employment.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/avg_repair_price.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/avg_time_to_dispatch.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/contractor.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/contractors.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/date.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/date_dim.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/dispatcher.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/dispatchers.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/hard_hat.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/hard_hat_state.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/hard_hats.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/local_hard_hats.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/municipality.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/municipality_dim.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/municipality_municipality_type.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/municipality_type.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/national_level_agg.transform.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/num_repair_orders.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/regional_level_agg.transform.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/regional_repair_efficiency.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/repair_order.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/repair_order_details.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/repair_order_transform.transform.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/repair_orders.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/repair_orders_cube.cube.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/repair_type.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/total_repair_cost.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/total_repair_order_discounts.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/us_region.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/us_state.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/us_states.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project10/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/avg_length_of_employment.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/avg_repair_price.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/avg_time_to_dispatch.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/contractor.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/contractors.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/date.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/date_dim.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/dispatcher.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/dispatchers.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/hard_hat.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/hard_hat_state.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/hard_hats.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/local_hard_hats.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/municipality.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/municipality_dim.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/municipality_municipality_type.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/municipality_type.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/national_level_agg.transform.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/num_repair_orders.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/regional_level_agg.transform.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/regional_repair_efficiency.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_order.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_order_details.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_order_transform.transform.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_orders.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_orders_cube.cube.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_type.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/total_repair_cost.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/total_repair_order_discounts.metric.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/us_region.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/us_state.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/us_states.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/companies.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/companies_dim.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/contractor.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/contractors.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/us_state.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/us_states.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project2/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project2/some_node.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project3/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project3/some_node.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project4/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project4/very/very/deeply/nested/namespace/some_node.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project5/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project5/some_node.a.b.c.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project6/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project6/roads/contractor.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project6/roads/contractors.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project7/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project7/roads/contractor.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project7/roads/contractors.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project8/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/dj.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/companies.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/companies_dim.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/contractor.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/contractors.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/us_state.dimension.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/us_states.source.yaml +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/examples.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/mcp/README.md +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/mcp/__init__.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/mcp/test_cli.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test__internal.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_admin.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_base.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_builder.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_cli.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_client.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_compile.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_generated_client.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_integration.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_models.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_plugin_mirror.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tests/test_skills.py +0 -0
- {datajunction-0.0.250 → datajunction-0.0.251}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: datajunction
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.251
|
|
4
4
|
Summary: DataJunction client library for connecting to a DataJunction server
|
|
5
5
|
Project-URL: repository, https://github.com/DataJunction/dj
|
|
6
6
|
Author-email: DataJunction Authors <yian.shang@gmail.com>
|
|
@@ -593,6 +593,12 @@ class DeploymentService:
|
|
|
593
593
|
if "managed_tag_types" in project_metadata:
|
|
594
594
|
deployment_spec["managed_tag_types"] = project_metadata["managed_tag_types"]
|
|
595
595
|
|
|
596
|
+
if "checks" in project_metadata:
|
|
597
|
+
deployment_spec["checks"] = project_metadata["checks"]
|
|
598
|
+
|
|
599
|
+
if "rulesets" in project_metadata:
|
|
600
|
+
deployment_spec["rulesets"] = project_metadata["rulesets"]
|
|
601
|
+
|
|
596
602
|
# Add deployment source if available from env vars
|
|
597
603
|
source = self._build_deployment_source(cwd=base_dir)
|
|
598
604
|
if source: # pragma: no branch
|
|
@@ -185,6 +185,53 @@ def test_reconstruct_deployment_spec_forwards_managed_tag_types(tmp_path):
|
|
|
185
185
|
assert spec["managed_tag_types"] == ["domain"]
|
|
186
186
|
|
|
187
187
|
|
|
188
|
+
def test_reconstruct_deployment_spec_forwards_checks_and_rulesets(tmp_path):
|
|
189
|
+
"""`checks:` and `rulesets:` in dj.yaml reach the deployment payload.
|
|
190
|
+
|
|
191
|
+
Same defect as custom_metadata_schemas: the payload names its keys one by
|
|
192
|
+
one, so a manifest section nobody named is read and dropped. Dropped here
|
|
193
|
+
it fails silently -- the deploy succeeds having evaluated nothing.
|
|
194
|
+
"""
|
|
195
|
+
(tmp_path / "dj.yaml").write_text(
|
|
196
|
+
"namespace: ns\n"
|
|
197
|
+
"checks:\n"
|
|
198
|
+
" - name: demo.described\n"
|
|
199
|
+
" description: Every node has a description.\n"
|
|
200
|
+
" condition: \"node.description != ''\"\n"
|
|
201
|
+
" gate: warn\n"
|
|
202
|
+
"rulesets:\n"
|
|
203
|
+
" - name: baseline\n"
|
|
204
|
+
" checks: [demo.described]\n",
|
|
205
|
+
)
|
|
206
|
+
(tmp_path / "revenue.yaml").write_text(
|
|
207
|
+
"name: ns.revenue\nnode_type: metric\nquery: SELECT SUM(amount) FROM ns.fct\n",
|
|
208
|
+
)
|
|
209
|
+
|
|
210
|
+
svc = DeploymentService(MagicMock())
|
|
211
|
+
spec, _ = svc._reconstruct_deployment_spec(tmp_path)
|
|
212
|
+
|
|
213
|
+
assert [check["name"] for check in spec["checks"]] == ["demo.described"]
|
|
214
|
+
assert spec["rulesets"] == [{"name": "baseline", "checks": ["demo.described"]}]
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
def test_reconstruct_deployment_spec_omits_absent_checks(tmp_path):
|
|
218
|
+
"""A manifest that declares no checks must not send the key.
|
|
219
|
+
|
|
220
|
+
Absent leaves the namespace's governance alone; [] would say this manifest
|
|
221
|
+
manages checks and declares none.
|
|
222
|
+
"""
|
|
223
|
+
(tmp_path / "dj.yaml").write_text("namespace: ns\n")
|
|
224
|
+
(tmp_path / "revenue.yaml").write_text(
|
|
225
|
+
"name: ns.revenue\nnode_type: metric\nquery: SELECT SUM(amount) FROM ns.fct\n",
|
|
226
|
+
)
|
|
227
|
+
|
|
228
|
+
svc = DeploymentService(MagicMock())
|
|
229
|
+
spec, _ = svc._reconstruct_deployment_spec(tmp_path)
|
|
230
|
+
|
|
231
|
+
assert "checks" not in spec
|
|
232
|
+
assert "rulesets" not in spec
|
|
233
|
+
|
|
234
|
+
|
|
188
235
|
def test_reconstruct_deployment_spec_omits_absent_managed_tag_types(tmp_path):
|
|
189
236
|
"""A manifest with no claims must not send the key: [] would release them."""
|
|
190
237
|
(tmp_path / "dj.yaml").write_text("namespace: ns\n")
|
|
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
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/distinct_node_authors.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/distinct_node_editors.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_dim_links_per_node.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_dimension_indegree.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_downstream_count.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_revisions_per_node.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/median_upstream_count.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_branches.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_deployments.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_namespaces.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/seed/nodes/number_of_orphan_nodes.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/skills/datajunction-query/SKILL.md
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/datajunction/skills/datajunction-repo/SKILL.md
RENAMED
|
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
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/deploy0/roads/companies_dim.yaml
RENAMED
|
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
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/contractors.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/date.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/date_dim.dimension.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/dispatchers.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/hard_hat.dimension.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/hard_hats.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/municipality.source.yaml
RENAMED
|
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
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/repair_type.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/us_region.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/us_state.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project1/roads/us_states.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/avg_repair_price.metric.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/contractor.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/contractors.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/date_dim.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/dispatcher.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/dispatchers.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/hard_hat.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/hard_hat_state.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/hard_hats.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/municipality.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/municipality_type.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/num_repair_orders.metric.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_order.dimension.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_orders.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_orders_cube.cube.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/repair_type.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/total_repair_cost.metric.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/us_region.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/us_state.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project11/us_states.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/companies.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/contractors.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/us_state.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project12/roads/us_states.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project5/some_node.a.b.c.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project6/roads/contractors.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project7/roads/contractors.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/companies.source.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/contractors.source.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/us_state.dimension.yaml
RENAMED
|
File without changes
|
{datajunction-0.0.250 → datajunction-0.0.251}/tests/examples/project9/roads/us_states.source.yaml
RENAMED
|
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
|