Zuplo · Arazzo Workflow

Zuplo Inspect and Redeploy a Project Deployment

Version 1.0.0

List a project's deployments, read the live deployment detail, then trigger a redeploy.

1 workflow 1 source API 1 provider
View Spec View on GitHub AI GatewayAPI ManagementGatewaysPlatformArazzoWorkflows

Provider

zuplo

Workflows

redeploy-project-deployment
Find a project's deployment, inspect it, and redeploy it.
Lists deployments, branches when at least one is present, reads the deployment detail, and redeploys it to apply configuration changes.
3 steps inputs: accountName, apiKey, projectName outputs: deploymentName, state, status
1
listDeployments
DeploymentsService_list
List the project's deployments to find the live deployment.
2
readDeployment
DeploymentsService_read
Read the deployment detail to confirm its state and url.
3
redeploy
DeployService_redeploy
Redeploy the deployment to apply configuration changes.

Source API Descriptions

Arazzo Workflow Specification

zuplo-redeploy-project-deployment-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Zuplo Inspect and Redeploy a Project Deployment
  summary: List a project's deployments, read the live deployment detail, then trigger a redeploy.
  description: >-
    Refreshes a running Zuplo deployment so it picks up configuration or
    environment changes. The workflow lists the project's deployments, branches
    on whether any deployments exist, reads the first deployment's detail to
    confirm its state and url, and then triggers a redeploy. 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: zuploApi
  url: ../openapi/zuplo-openapi.yml
  type: openapi
workflows:
- workflowId: redeploy-project-deployment
  summary: Find a project's deployment, inspect it, and redeploy it.
  description: >-
    Lists deployments, branches when at least one is present, reads the
    deployment detail, and redeploys it to apply configuration changes.
  inputs:
    type: object
    required:
    - accountName
    - apiKey
    - projectName
    properties:
      accountName:
        type: string
        description: The Zuplo account name (Settings > Project Information).
      apiKey:
        type: string
        description: The Zuplo Developer API key, sent as a Bearer token.
      projectName:
        type: string
        description: The name of the project whose deployment is refreshed.
  steps:
  - stepId: listDeployments
    description: List the project's deployments to find the live deployment.
    operationId: DeploymentsService_list
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.apiKey
    - name: accountName
      in: path
      value: $inputs.accountName
    - name: projectName
      in: path
      value: $inputs.projectName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      deploymentName: $response.body#/data/0/name
    onSuccess:
    - name: deploymentsPresent
      type: goto
      stepId: readDeployment
      criteria:
      - context: $response.body
        condition: $.data.length > 0
        type: jsonpath
  - stepId: readDeployment
    description: Read the deployment detail to confirm its state and url.
    operationId: DeploymentsService_read
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.apiKey
    - name: deploymentName
      in: path
      value: $steps.listDeployments.outputs.deploymentName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      deploymentName: $response.body#/name
      state: $response.body#/state
      url: $response.body#/url
  - stepId: redeploy
    description: Redeploy the deployment to apply configuration changes.
    operationId: DeployService_redeploy
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.apiKey
    - name: deploymentName
      in: path
      value: $steps.readDeployment.outputs.deploymentName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      status: $response.body#/status
  outputs:
    deploymentName: $steps.readDeployment.outputs.deploymentName
    state: $steps.readDeployment.outputs.state
    status: $steps.redeploy.outputs.status