Dagster integration with Hex
Project description
Dagster Hex Integration
Installation
To install the library, use pip alongside your existing Dagster environment.
pip install dagster-hex
Usage
Create a HexResource
specifying the api_key
, then, use that resource in our assets.
import os
import dagster as dg
from dagster_hex.resources import HexResource
@dg.asset
def custom_hex_asset(
context: dg.AssetExecutionContext,
hex: HexResource
) -> dg.MaterializeResult:
project_id = "abcdefgh-1234-abcd-1234-abcdefghijkl"
context.log.info(f"Running Hex project {project_id}")
response = hex.run_project(
project_id,
inputs={
"message": "Hello, World!"
}
)
return dg.MaterializeResult(
metadata={
"data": response.get("data")
}
)
defs = Definitions(
assets=[custom_hex_asset],
resources={
"hex": HexResource(
api_key=dg.EnvVar("HEX_API_KEY")
)
}
)
Legacy
Ops
The hex_project_op
will call the Hex API to run a project until it completes.
import os
import dagster as dg
from dagster_hex.ops import hex_project_op
from dagster_hex.resources import hex_resource
hex_resource = HexResource(
api_key=dg.EnvVar("HEX_API_KEY")
)
run_hex_op = hex_project_op.configured({
"name": "run_hex_project_op",
"project_id": "abcdefgh-1234-abcd-1234-abcdefghijkl"
})
@job(resource_defs={"hex": my_resource})
def hex_job():
run_hex_op()
Asset Materializations
Ops will return an AssetMaterialization
with the following keys:
run_url
run_status_url
trace_id
run_id
elapsed_time
notifications
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dagster_hex-0.1.8.tar.gz
(8.4 kB
view details)
Built Distribution
File details
Details for the file dagster_hex-0.1.8.tar.gz
.
File metadata
- Download URL: dagster_hex-0.1.8.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aec0edd7e84ba03ab325daec9f0c750c44436409383c6d1446883d166f5545ad |
|
MD5 | c87b97f2bc463c9db6027fcde3e44611 |
|
BLAKE2b-256 | fb77cd6797fd1c906c1c60fd8426eb14c43480ea33a1e773904687572999d471 |
File details
Details for the file dagster_hex-0.1.8-py3-none-any.whl
.
File metadata
- Download URL: dagster_hex-0.1.8-py3-none-any.whl
- Upload date:
- Size: 9.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 987261a41c370430b89ef815f53da0109f718122eeae2f78419a5909fa9a1e72 |
|
MD5 | 4dd940d67a72b1159eb51603ebfff8e0 |
|
BLAKE2b-256 | f00be268d40df55761ab04be59354a01b7667a7d5f998951b0adda5bd38107a7 |