dagster-evidence 0.1.4__tar.gz → 0.1.6__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.
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/PKG-INFO +1 -1
- dagster_evidence-0.1.6/dagster_evidence/__init__.py +12 -0
- dagster_evidence-0.1.6/dagster_evidence/resource.py +69 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence.egg-info/PKG-INFO +1 -1
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence.egg-info/SOURCES.txt +1 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence.egg-info/entry_points.txt +3 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/pyproject.toml +1 -0
- dagster_evidence-0.1.4/dagster_evidence/__init__.py +0 -9
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/README.md +0 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence/lib/__init__.py +0 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence/lib/evidence_project.py +0 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence.egg-info/dependency_links.txt +0 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence.egg-info/requires.txt +0 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence.egg-info/top_level.txt +0 -0
- {dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/setup.cfg +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from dagster._core.libraries import DagsterLibraryRegistry
|
|
2
|
+
|
|
3
|
+
from dagster_evidence.lib.evidence_project import EvidenceProject
|
|
4
|
+
from dagster_evidence.resource import EvidenceResource
|
|
5
|
+
|
|
6
|
+
__version__ = "0.1.6"
|
|
7
|
+
|
|
8
|
+
__all__ = [EvidenceProject, EvidenceResource]
|
|
9
|
+
|
|
10
|
+
DagsterLibraryRegistry.register(
|
|
11
|
+
"dagster-evidence", __version__, is_dagster_package=False
|
|
12
|
+
)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import sys
|
|
3
|
+
import subprocess
|
|
4
|
+
from typing import Optional, Sequence
|
|
5
|
+
import dagster as dg
|
|
6
|
+
from pydantic import Field
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class EvidenceResource(dg.ConfigurableResource):
|
|
10
|
+
"""A Dagster resource for managing Evidence.dev projects.
|
|
11
|
+
|
|
12
|
+
This resource provides functionality to build and deploy Evidence.dev dashboards.
|
|
13
|
+
It assumes that you have already created an Evidence.dev project. Read [the Evidence docs](https://docs.evidence.dev/) for more information.
|
|
14
|
+
|
|
15
|
+
Examples:
|
|
16
|
+
.. code-block:: python
|
|
17
|
+
import dagster as dg
|
|
18
|
+
from dagster_evidence import EvidenceResource
|
|
19
|
+
|
|
20
|
+
@dg.asset
|
|
21
|
+
def evidence_application(evidence: EvidenceResource):
|
|
22
|
+
evidence.build()
|
|
23
|
+
|
|
24
|
+
evidence_resource = EvidenceResource(
|
|
25
|
+
project_path="/path/to/evidence/project",
|
|
26
|
+
deploy_command="optional-deploy-command", # eg. `aws s3 cp ...`
|
|
27
|
+
)
|
|
28
|
+
|
|
29
|
+
defs = dg.Definitions(
|
|
30
|
+
assets=[evidence_application],
|
|
31
|
+
resources={"evidence": evidence_resource}
|
|
32
|
+
)
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
project_path: str = Field(..., description="The path to the Evidence.dev project")
|
|
36
|
+
deploy_command: Optional[str] = Field(
|
|
37
|
+
None, description="Command to deploy the built assets"
|
|
38
|
+
)
|
|
39
|
+
executable: str = Field(
|
|
40
|
+
default="npm",
|
|
41
|
+
description="The executable to use for commands (npm, yarn, etc.)",
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
def _run_cmd(self, cmd: Sequence[str]):
|
|
45
|
+
"""Run a command in the project directory.
|
|
46
|
+
|
|
47
|
+
Args:
|
|
48
|
+
cmd: The command to run as a sequence of strings.
|
|
49
|
+
"""
|
|
50
|
+
print(
|
|
51
|
+
f"{self.project_path}$ {' '.join(cmd)}",
|
|
52
|
+
file=sys.stderr,
|
|
53
|
+
)
|
|
54
|
+
subprocess.run(
|
|
55
|
+
cmd,
|
|
56
|
+
cwd=self.project_path,
|
|
57
|
+
check=True,
|
|
58
|
+
capture_output=False,
|
|
59
|
+
env=os.environ,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
def build(self) -> None:
|
|
63
|
+
"""Build the Evidence project.
|
|
64
|
+
|
|
65
|
+
1. Run all sources to fetch data
|
|
66
|
+
2. Build the project to generate the dashboard
|
|
67
|
+
"""
|
|
68
|
+
self._run_cmd([self.executable, "run", "sources"])
|
|
69
|
+
self._run_cmd([self.executable, "run", "build"])
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dagster_evidence-0.1.4 → dagster_evidence-0.1.6}/dagster_evidence.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|