Method: pipelines.run

Runs a pipeline. If pipelineId is specified in the request, then run a saved pipeline. If ephemeralPipeline is specified, then run that pipeline once without saving a copy.

The caller must have READ permission to the project where the pipeline is stored and WRITE permission to the project where the pipeline will be run, as VMs will be created and storage will be used.

If a pipeline operation is still running after 6 days, it will be canceled.

HTTP request

POST https://genomics.googleapis.com/v1alpha2/pipelines:run

The URL uses gRPC Transcoding syntax.

Request body

The request body contains data with the following structure:

JSON representation
{
  "pipelineArgs": {
    object (RunPipelineArgs)
  },

  // Union field pipeline can be only one of the following:
  "pipelineId": string,
  "ephemeralPipeline": {
    object (Pipeline)
  }
  // End of list of possible types for union field pipeline.
}
Fields
pipelineArgs

object (RunPipelineArgs)

The arguments to use when running this pipeline.

Union field pipeline.

pipeline can be only one of the following:

pipelineId

string

The already created pipeline to run.

ephemeralPipeline

object (Pipeline)

A new pipeline object to run once and then delete.

Response body

If successful, the response body contains an instance of Operation.

Authorization Scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/compute
  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/genomics

For more information, see the Authentication Overview.

RunPipelineArgs

The pipeline run arguments.

JSON representation
{
  "projectId": string,
  "inputs": {
    string: string,
    ...
  },
  "outputs": {
    string: string,
    ...
  },
  "serviceAccount": {
    object (ServiceAccount)
  },
  "clientId": string,
  "resources": {
    object (PipelineResources)
  },
  "logging": {
    object (LoggingOptions)
  },
  "keepVmAliveOnFailureDuration": string,
  "labels": {
    string: string,
    ...
  }
}
Fields
projectId

string

Required. The project in which to run the pipeline. The caller must have WRITER access to all Google Cloud services and resources (e.g. Google Compute Engine) will be used.

inputs

map (key: string, value: string)

Pipeline input arguments; keys are defined in the pipeline documentation. All input parameters that do not have default values must be specified. If parameters with defaults are specified here, the defaults will be overridden.

outputs

map (key: string, value: string)

Pipeline output arguments; keys are defined in the pipeline documentation. All output parameters of without default values must be specified. If parameters with defaults are specified here, the defaults will be overridden.

serviceAccount

object (ServiceAccount)

The Google Cloud Service Account that will be used to access data and services. By default, the compute service account associated with projectId is used.

clientId

string

This field is deprecated. Use labels instead. Client-specified pipeline operation identifier.

resources

object (PipelineResources)

Specifies resource requirements/overrides for the pipeline run.

logging

object (LoggingOptions)

Required. Logging options. Used by the service to communicate results to the user.

keepVmAliveOnFailureDuration

string (Duration format)

How long to keep the VM up after a failure (for example docker command failed, copying input or output files failed, etc). While the VM is up, one can ssh into the VM to debug. Default is 0; maximum allowed value is 1 day.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

labels

map (key: string, value: string)

Labels to apply to this pipeline run. Labels will also be applied to compute resources (VM, disks) created by this pipeline run. When listing operations, operations can filtered by labels. Label keys may not be empty; label values may be empty. Non-empty labels must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.

ServiceAccount

A Google Cloud Service Account.

JSON representation
{
  "email": string,
  "scopes": [
    string
  ]
}
Fields
email

string

Email address of the service account. Defaults to default, which uses the compute service account associated with the project.

scopes[]

string

List of scopes to be enabled for this service account on the VM. The following scopes are automatically included:

LoggingOptions

The logging options for the pipeline run.

JSON representation
{
  "gcsPath": string
}
Fields
gcsPath

string

The location in Google Cloud Storage to which the pipeline logs will be copied. Can be specified as a fully qualified directory path, in which case logs will be output with a unique identifier as the filename in that directory, or as a fully specified path, which must end in .log, in which case that path will be used, and the user must ensure that logs are not overwritten. Stdout and stderr logs from the run are also generated and output as -stdout.log and -stderr.log.

Was this page helpful? Let us know how we did:

Send feedback about...

Cloud Genomics