DagsterDocs

GraphQL (dagster-graphql)

Python Client

class dagster_graphql.DagsterGraphQLClient(hostname, port_number=None)[source]

Official Dagster Python Client for GraphQL

Utilizes the gql library to dispatch queries over HTTP to a remote Dagster GraphQL Server

As of now, all operations on this client are synchronous.

Intended usage:

client = DagsterGraphQLClient("localhost", port_number=3000)
status = client.get_run_status(**SOME_RUN_ID**)
get_run_status(run_id)[source]

Get the status of a given Pipeline Run

Parameters

run_id (str) – run id of the requested pipeline run.

Raises
Returns

returns a status Enum describing the state of the requested pipeline run

Return type

PipelineRunStatus

reload_repository_location(repository_location_name)[source]

Reloads a Dagster Repository Location, which reloads all repositories in that repository location.

This is useful in a variety of contexts, including refreshing Dagit without restarting the server.

Parameters

repository_location_name (str) – The name of the repository location

Returns

Object with a .status attribute of ReloadRepositoryLocationStatus.SUCCESS if successful.

Otherwise, returns an object with a .status attribute of ReloadRepositoryLocationStatus.FAILURE if the reload failed, and a .message attribute with the attached error message

Return type

ReloadRepositoryLocationInfo

submit_pipeline_execution(pipeline_name, repository_location_name=None, repository_name=None, run_config=None, mode=None, preset=None)[source]

Submits a Pipeline with attached configuration for execution.

Parameters
  • pipeline_name (str) – The pipeline’s name

  • repository_location_name (Optional[str], optional) – The name of the repository location where the pipeline is located. If omitted, the client will try to infer the repository location from the available options on the Dagster deployment. Defaults to None.

  • repository_name (Optional[str], optional) – The name of the repository where the pipeline is located. If omitted, the client will try to infer the repository from the available options on the Dagster deployment. Defaults to None.

  • run_config (Optional[Any], optional) – This is the run config to execute the pipeline with. Note that runConfigData is any-typed in the GraphQL type system. This type is used when passing in an arbitrary object for run config. However, it must conform to the constraints of the config schema for this pipeline. If it does not, the client will throw a DagsterGraphQLClientError with a message of PipelineConfigValidationInvalid. Defaults to None.

  • mode (Optional[str], optional) – The mode to run the pipeline with. If you have not defined any custom modes for your pipeline, the default mode is “default”. Defaults to None.

  • preset (Optional[str], optional) – The name of a pre-defined preset to use instead of a run config. Defaults to None.

Raises
  • DagsterGraphQLClientError("InvalidStepError", invalid_step_key) – the pipeline has an invalid step

  • DagsterGraphQLClientError("InvalidOutputError", body=error_object) – some solid has an invalid output within the pipeline. The error_object is of type dagster_graphql.InvalidOutputErrorInfo.

  • DagsterGraphQLClientError("ConflictingExecutionParamsError", invalid_step_key) – a preset and a run_config & mode are present that conflict with one another

  • DagsterGraphQLClientError("PresetNotFoundError", message) – if the provided preset name is not found

  • DagsterGraphQLClientError("PipelineConfigurationInvalid", invalid_step_key) – the run_config is not in the expected format for the pipeline

  • DagsterGraphQLClientError("PipelineNotFoundError", message) – the requested pipeline does not exist

  • DagsterGraphQLClientError("PythonError", message) – an internal framework error occurred

Returns

run id of the submitted pipeline run

Return type

str

exception dagster_graphql.DagsterGraphQLClientError(*args, body=None)[source]
class dagster_graphql.InvalidOutputErrorInfo(step_key, invalid_output_name)[source]

This class gives information about an InvalidOutputError from submitting a pipeline for execution from GraphQL.

Parameters
  • step_key (str) – key of the step that failed

  • invalid_output_name (str) – the name of the invalid output from the given step

class dagster_graphql.ReloadRepositoryLocationInfo(status, message=None)[source]

This class gives information about the result of reloading a Dagster repository location with a GraphQL mutation.

Parameters
  • status (ReloadRepositoryLocationStatus) – The status of the reload repository location mutation

  • message (Optional[str], optional) – the failure message/reason if status == ReloadRepositoryLocationStatus.FAILURE. Defaults to None.

class dagster_graphql.ReloadRepositoryLocationStatus(value)[source]

This enum describes the status of a GraphQL mutation to reload a Dagster repository location

Parameters

Enum (str) – can be either ReloadRepositoryLocationStatus.SUCCESS or ReloadRepositoryLocationStatus.FAILURE.