Azure Synapse Analytics · Arazzo Workflow

Azure Synapse Analytics Deploy and Run Pipeline

Version 1.0.0

Create or update a pipeline, confirm it persisted, then trigger a run.

1 workflow 1 source API 1 provider
View Spec View on GitHub AnalyticsApache SparkBig DataData IntegrationData WarehouseETLSQLArazzoWorkflows

Provider

microsoft-azure-synapse-analytics

Workflows

deploy-and-run-pipeline
Publish a pipeline into the workspace and kick off a run of it.
Creates or updates a pipeline resource, retrieves it to verify the definition was stored, and then creates a run of the pipeline, capturing the generated run identifier.
3 steps inputs: apiVersion, pipeline, pipelineName, runParameters outputs: pipelineId, runId
1
deployPipeline
Pipeline_CreateOrUpdatePipeline
Create or update the pipeline definition in the workspace using the supplied PipelineResource body.
2
confirmPipeline
Pipeline_GetPipeline
Read the pipeline back from the workspace to confirm the definition was persisted before triggering a run.
3
createRun
Pipeline_CreatePipelineRun
Submit a new run of the confirmed pipeline, passing any optional run-time parameters, and capture the run identifier.

Source API Descriptions

Arazzo Workflow Specification

microsoft-azure-synapse-analytics-deploy-and-run-pipeline-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Azure Synapse Analytics Deploy and Run Pipeline
  summary: Create or update a pipeline, confirm it persisted, then trigger a run.
  description: >-
    The core orchestration flow for Azure Synapse Analytics data integration.
    The workflow publishes a pipeline definition into the workspace with a
    create-or-update call, reads the pipeline back to confirm it was persisted
    with the expected definition, and then submits a new run of that pipeline
    with optional run-time parameters. Every step spells out its request inline
    so the flow can be read and executed without opening the underlying OpenAPI
    description.
  version: 1.0.0
sourceDescriptions:
- name: pipelineApi
  url: ../openapi/azure-synapse-analytics-pipeline-openapi.yml
  type: openapi
workflows:
- workflowId: deploy-and-run-pipeline
  summary: Publish a pipeline into the workspace and kick off a run of it.
  description: >-
    Creates or updates a pipeline resource, retrieves it to verify the
    definition was stored, and then creates a run of the pipeline, capturing
    the generated run identifier.
  inputs:
    type: object
    required:
    - apiVersion
    - pipelineName
    - pipeline
    properties:
      apiVersion:
        type: string
        description: The Synapse data plane API version (e.g. 2020-12-01).
      pipelineName:
        type: string
        description: The name of the pipeline to create or update.
      pipeline:
        type: object
        description: The PipelineResource definition to publish.
      runParameters:
        type: object
        description: Optional run-time parameters passed to the pipeline run.
  steps:
  - stepId: deployPipeline
    description: >-
      Create or update the pipeline definition in the workspace using the
      supplied PipelineResource body.
    operationId: Pipeline_CreateOrUpdatePipeline
    parameters:
    - name: api-version
      in: query
      value: $inputs.apiVersion
    - name: pipelineName
      in: path
      value: $inputs.pipelineName
    requestBody:
      contentType: application/json
      payload: $inputs.pipeline
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      pipelineId: $response.body#/id
      pipelineEtag: $response.body#/etag
  - stepId: confirmPipeline
    description: >-
      Read the pipeline back from the workspace to confirm the definition was
      persisted before triggering a run.
    operationId: Pipeline_GetPipeline
    parameters:
    - name: api-version
      in: query
      value: $inputs.apiVersion
    - name: pipelineName
      in: path
      value: $inputs.pipelineName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      confirmedName: $response.body#/name
  - stepId: createRun
    description: >-
      Submit a new run of the confirmed pipeline, passing any optional run-time
      parameters, and capture the run identifier.
    operationId: Pipeline_CreatePipelineRun
    parameters:
    - name: api-version
      in: query
      value: $inputs.apiVersion
    - name: pipelineName
      in: path
      value: $inputs.pipelineName
    requestBody:
      contentType: application/json
      payload: $inputs.runParameters
    successCriteria:
    - condition: $statusCode == 202
    outputs:
      runId: $response.body#/runId
  outputs:
    pipelineId: $steps.deployPipeline.outputs.pipelineId
    runId: $steps.createRun.outputs.runId