Step 1: Define the Snowflake Resource
from dagster import (
Definitions,
AssetKey,
RunRequest,
SensorEvaluationContext,
AssetExecutionContext,
pipeline { | |
agent any | |
environment { | |
// Construct the IMAGE_TAG using Jenkins environment variables | |
IMAGE_TAG = "${env.GIT_COMMIT}-${env.BUILD_ID} | |
AWS_ACCESS_KEY_ID = credentials('aws-access-key-id') // Reference to the AWS access key ID secret | |
AWS_SECRET_ACCESS_KEY = credentials('aws-secret-access-key') // Reference to the AWS secret access key secret | |
AWS_REGION = 'us-west-2' // Set your AWS region | |
} |
import dagster as dg | |
from datetime import timedelta | |
# Upstream asset that should be fresh | |
@dg.asset | |
def upstream_asset(context: dg.AssetExecutionContext) -> None: | |
context.log.info("Upstream asset is being computed") | |
@dg.asset | |
def downstream_asset(context: dg.AssetExecutionContext) -> None: |
from dagster import ( | |
sensor, | |
EventLogEntry, | |
RunRequest, | |
SensorEvaluationContext, | |
SkipReason, | |
) | |
from datetime import datetime | |
# this would be your job |
# after running dlt init filesystem duckdb | |
from dagster import AssetExecutionContext | |
from dagster_embedded_elt.dlt import DagsterDltResource, dlt_assets | |
import dlt | |
from dlt_sources.filesystem_pipeline import s3_locations_data | |
from dlt_sources.filesystem import readers | |
from pathlib import Path | |
import os |
LOCATIONS_DATA_2__SOURCES__GITHUB_FROM_OPENAPI__BASE_URL=https://api.github.com | |
LOCATIONS_DATA_2__SOURCES__GITHUB_FROM_OPENAPI__ACCESS_TOKEN={your_token_here} |
from dagster import ( | |
Definitions, | |
) | |
from .assets.dlt_assets import dagster_s3_assets | |
defs = Definitions( | |
assets=[dagster_s3_assets]) |
# give the created service account cross namespace permissions (cluster role) | |
extraManifests: | |
- kind: ClusterRole | |
apiVersion: rbac.authorization.k8s.io/v1 | |
metadata: | |
name: extra-cluster-role | |
rules: | |
- apiGroups: ["batch"] | |
resources: ["jobs", "jobs/status"] | |
verbs: ["*"] |
#assets you want to put in the initial asset group | |
from dagster import ( | |
asset, | |
) | |
# Define your assets and group them | |
@asset | |
def asset1(): | |
pass |
Step 1: Define the Snowflake Resource
from dagster import (
Definitions,
AssetKey,
RunRequest,
SensorEvaluationContext,
AssetExecutionContext,
{{ config( | |
severity = 'warn', | |
meta = { | |
'dagster': { | |
'ref': { | |
'name': 'orders_cleaned' | |
} | |
} | |
} | |
) |