Oracle GoldenGate · Arazzo Workflow

Oracle GoldenGate Start Extract and Verify

Version 1.0.0

Confirm an Extract exists, start it, and poll until it is running.

1 workflow 1 source API 1 provider
View Spec View on GitHub CDCData IntegrationData SynchronizationDatabaseEnterpriseReal-Time ReplicationArazzoWorkflows

Provider

oracle-goldengate

Workflows

start-extract-and-verify
Start an existing Extract process and confirm it reaches a running state.
Reads the Extract, starts it, and polls status until running.
3 steps inputs: authorization, extract outputs: extractName, finalStatus
1
getExtract
getExtract
Retrieve the Extract to confirm it exists before starting it.
2
startExtract
issueExtractCommand
Issue a START command to the Extract process.
3
pollStatus
getExtractStatus
Poll the Extract status until it reports running, looping while it is still starting.

Source API Descriptions

Arazzo Workflow Specification

oracle-goldengate-start-extract-and-verify-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Oracle GoldenGate Start Extract and Verify
  summary: Confirm an Extract exists, start it, and poll until it is running.
  description: >-
    Operational flow for bringing an existing Extract online. It retrieves the
    Extract configuration to confirm it exists, issues a START command, and polls
    the runtime status until the process reports running. 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: goldengateApi
  url: ../openapi/oracle-goldengate-rest-api-openapi.yml
  type: openapi
workflows:
- workflowId: start-extract-and-verify
  summary: Start an existing Extract process and confirm it reaches a running state.
  description: >-
    Reads the Extract, starts it, and polls status until running.
  inputs:
    type: object
    required:
    - authorization
    - extract
    properties:
      authorization:
        type: string
        description: HTTP Basic Authorization header value.
      extract:
        type: string
        description: Name of the Extract process to start.
  steps:
  - stepId: getExtract
    description: Retrieve the Extract to confirm it exists before starting it.
    operationId: getExtract
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: extract
      in: path
      value: $inputs.extract
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      extractName: $response.body#/name
      currentStatus: $response.body#/status
  - stepId: startExtract
    description: Issue a START command to the Extract process.
    operationId: issueExtractCommand
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: extract
      in: path
      value: $inputs.extract
    requestBody:
      contentType: application/json
      payload:
        action: start
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      commandMessage: $response.body#/response/message
  - stepId: pollStatus
    description: >-
      Poll the Extract status until it reports running, looping while it is
      still starting.
    operationId: getExtractStatus
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: extract
      in: path
      value: $inputs.extract
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      status: $response.body#/status
    onSuccess:
    - name: stillStarting
      type: goto
      stepId: pollStatus
      criteria:
      - context: $response.body
        condition: $.status == "starting"
        type: jsonpath
  outputs:
    extractName: $steps.getExtract.outputs.extractName
    finalStatus: $steps.pollStatus.outputs.status