Skip to main content
Version: devel

dlt._workspace.deployment.typing

MAIN_GROUP

Conventional group name for top-level workspace dependencies.

DEFAULT_DEPLOYMENT_MODULE

Default deployment module name for manifest generation.

TJobRef

Resolved job reference in jobs.<section>.<name> or jobs.<name> form.

DASHBOARD_JOB_REF

job_ref of the synthesized dashboard; doubles as its requirements group name.

TTrigger

Normalized trigger string in type:expr form, e.g. "schedule:0 8 * * *".

TFreshnessConstraint

Opaque freshness constraint string in type:job_ref form.

TFreshnessType

Constraint types for interval freshness checks — not triggers.

TRefreshPolicy

Refresh-signal policy of a job

  • auto - if received, propagates refresh signal to downstream jobs
  • always - sends refresh signal to downstream jobs when started
  • block - blocks refresh signal, prevents downstream jobs from receiving it.

TParsedTrigger Objects

class TParsedTrigger(NamedTuple)

View source on GitHub

type

noqa: A003

TJobType

Execution model: batch (run to completion), interactive (long-running HTTP), stream (consumer loop).

TInterfaceType

What an interactive job exposes: web UI, programmatic API, or MCP tool server.

TJobExposeCategory

UI category for grouping jobs in the runtime interface.

TJobExposeSpec Objects

class TJobExposeSpec(TypedDict)

View source on GitHub

User-facing UI presentation metadata, accepted by decorators.

display_name

Human-friendly label shown in the UI. May contain spaces and punctuation.

tags

Job tags that can also be used to trigger group of jobs.

starred

Show in top-level runtime UI.

manual

When True (default), runner creates a manual: trigger for this job.

TExposeSpec Objects

class TExposeSpec(TJobExposeSpec)

View source on GitHub

Extends TJobExposeSpec will elements not directly set by users.

interface

What an interactive job exposes: "gui", "rest_api", or "mcp".

category

UI grouping category (e.g. "pipeline", "notebook").

TRequireSpec Objects

class TRequireSpec(TypedDict)

View source on GitHub

Runner (machine, environment) requirements for a job.

dependency_groups

PEP 735 groups to install on top of the workspace's default_groups.

profile

Workspace profile name to activate for this job.

provider

Infra provider identifier (e.g. "modal"). Runtime default when unset.

machine

Machine spec identifier (e.g. "gpu-a100", "2xlarge").

region

Runner region for placement (e.g. "us-east-1", "eu-west").

timezone

IANA timezone for cron ticks and intervals (e.g. "America/New_York"). Default: UTC.

TEntryPoint Objects

class TEntryPoint(TypedDict)

View source on GitHub

How to invoke the job code.

module

Python module path relative to workspace root.

function

Function name within the module, or None for module-level jobs.

launcher

Fully qualified launcher module path.

TRunArgs Objects

class TRunArgs(TypedDict)

View source on GitHub

Runtime-supplied arguments for launching a job.

Provided by the runtime when invoking a launcher. Not part of the deployment manifest — filled in at launch time.

port

HTTP port assigned by the runtime for interactive jobs.

base_path

Reverse proxy subpath prefix (e.g. "/workspace/123/notebook").

TIntervalSpec Objects

class TIntervalSpec(TypedDict)

View source on GitHub

Overall time range for interval-based job scheduling.

Stored in the manifest. Together with the job's cron schedule, defines the set of discrete intervals to process.

start

ISO 8601 string or datetime for the start of the range. Required.

end

ISO 8601 string or datetime for the end of the range. Defaults to now.

TJobRunContext Objects

class TJobRunContext(TypedDict)

View source on GitHub

Job run context injected into job functions that declare a run_context argument.

run_id

Unique identifier for this job run.

trigger

The trigger string that fired this run.

run_args

Runtime-provided launch arguments (port, base_path), if available.

interval_start

Start of the interval being processed.

interval_end

End of the interval being processed.

refresh

Refresh signal with request to refresh (reload) the data

TRuntimeEntryPoint Objects

class TRuntimeEntryPoint(TEntryPoint)

View source on GitHub

Entry point enriched with runtime-assigned launch arguments.

interval_start

ISO 8601 UTC start of the interval being processed.

interval_end

ISO 8601 UTC end of the interval being processed.

interval_timezone

IANA timezone name (from require.timezone); applied to the interval by the launcher.

allow_external_schedulers

Experimental. Incremental instance will automatically assume interval of the job.

profile

Active workspace profile, resolved from require.profile.

config

Config key-value pairs injected as env vars before job execution.

refresh

Refresh signal with request to refresh (reload) the data

intercept_signals

Intercept SIGTERM and SIGINT during job execution. Defaults to True when absent; set to False to opt out.

TTimeoutSpec Objects

class TTimeoutSpec(TypedDict)

View source on GitHub

Expanded timeout specification stored in the manifest.

timeout

Maximum duration of the job after which it will be terminated.

grace_period

Seconds for graceful shutdown after sending termination signal.

TExecuteSpec Objects

class TExecuteSpec(TypedDict)

View source on GitHub

Runtime execution constraints for a job.

concurrency

Max concurrent runs. Default 1 for both batch and interactive jobs. Pass any positive integer to allow that many concurrent instances, or explicitly None to remove the limit.

intercept_signals

Intercept SIGINT/SIGTERM around the whole job. Default True.

TDeliverSpec Objects

class TDeliverSpec(TypedDict)

View source on GitHub

Associates a job with a data delivery target.

source_ref

Source rel_ref, e.g. "sources.job_runs.chat_analytics".

pipeline_name

Pipeline name this job operates on.

deadline

Human-readable delivery deadline, e.g. "8am on Mondays".

TJobDefinition Objects

class TJobDefinition(TypedDict)

View source on GitHub

A single job in the deployment manifest.

job_ref

Unique job identity: "jobs.<section>.<name>" or "jobs.<name>" for module-level jobs.

expose

UI presentation and scheduling metadata.

triggers

When to run: 0, 1, or many trigger strings.

config_keys

Config keys discovered from function signature (dlt.config.value defaults).

interval

Overall time range for interval-based scheduling.

freshness

Upstream freshness constraints for interval eligibility.

allow_external_schedulers

When True, intervals and state are managed by the scheduler.

require

Runtime resource requirements.

default_trigger

Primary trigger, computed during manifest generation. Prefers schedule/every triggers.

refresh

Controls refresh policy of the job

TDeploymentFileItem Objects

class TDeploymentFileItem(TypedDict)

View source on GitHub

A file in the deployment package.

sha3_256

Digest of file contents for regular files; digest of linkname for symlinks.

linkname

Symlink target string; set for symlink entries only.

TFilesManifest Objects

class TFilesManifest(TypedDict)

View source on GitHub

Base manifest for file sync. Used by PackageBuilder.

TJobsDeploymentManifest Objects

class TJobsDeploymentManifest(TypedDict)

View source on GitHub

Full deployment manifest with job definitions.

version

Auto-incremented on content change.

version_hash

SHA3-256 content hash, excluding version metadata.

previous_hashes

Last 10 version hashes for history.

created_at

ISO 8601 timestamp of manifest creation.

deployment_module

Module name, default "__deployment__".

description

First line of the deployment module's __doc__.

tags

From __tags__ of the deployment module.

TWorkspaceRequirementsManifest Objects

class TWorkspaceRequirementsManifest(TypedDict)

View source on GitHub

Workspace Python dependencies exported per dependency group.

python_version

Client-side major.minor Python version captured at export time.

default_groups

Groups installed on top of any job-declared dependency_groups.

groups

Group name to sorted PEP 508 specs. Always contains "main".

launcher_requirements

Launcher module path to mandatory specs installed for jobs of that launcher.

This demo works on codespaces. Codespaces is a development environment available for free to anyone with a Github account. You'll be asked to fork the demo repository and from there the README guides you with further steps.
The demo uses the Continue VSCode extension.

Off to codespaces!

DHelp

Ask a question

Welcome to "Codex Central", your next-gen help center, driven by OpenAI's GPT-4 model. It's more than just a forum or a FAQ hub – it's a dynamic knowledge base where coders can find AI-assisted solutions to their pressing problems. With GPT-4's powerful comprehension and predictive abilities, Codex Central provides instantaneous issue resolution, insightful debugging, and personalized guidance. Get your code running smoothly with the unparalleled support at Codex Central - coding help reimagined with AI prowess.