arazzo: 1.0.1 info: title: Azure Container Apps Run Existing Job summary: Confirm a job is provisioned and manually triggerable, then start an execution. description: >- A safe trigger flow for an already-provisioned job. This workflow reads the job to confirm it has reached the Succeeded provisioning state before starting work, then starts a single execution. 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: containerAppsApi url: ../openapi/azure-container-apps-openapi.yml type: openapi workflows: - workflowId: run-existing-job summary: Verify an existing job is ready and start one execution of it. description: >- Reads the job, confirms its provisioningState is Succeeded, and starts a single execution, returning the execution status. inputs: type: object required: - subscriptionId - resourceGroupName - jobName properties: subscriptionId: type: string description: The Azure subscription ID. resourceGroupName: type: string description: The name of the resource group. jobName: type: string description: The name of the job to start. apiVersion: type: string description: Client API version. default: '2023-05-01' steps: - stepId: getJob description: >- Read the job and confirm it has finished provisioning before starting an execution. operationId: Jobs_Get parameters: - name: subscriptionId in: path value: $inputs.subscriptionId - name: resourceGroupName in: path value: $inputs.resourceGroupName - name: jobName in: path value: $inputs.jobName - name: api-version in: query value: $inputs.apiVersion successCriteria: - condition: $statusCode == 200 - context: $response.body condition: $.properties.provisioningState == "Succeeded" type: jsonpath outputs: jobId: $response.body#/id triggerType: $response.body#/properties/configuration/triggerType - stepId: startExecution description: >- Start a single execution of the job. The request body is sent empty so the job runs with its own configured template. operationId: Jobs_Start parameters: - name: subscriptionId in: path value: $inputs.subscriptionId - name: resourceGroupName in: path value: $inputs.resourceGroupName - name: jobName in: path value: $inputs.jobName - name: api-version in: query value: $inputs.apiVersion requestBody: contentType: application/json payload: {} successCriteria: - condition: $statusCode == 200 outputs: executionId: $response.body#/id executionStatus: $response.body#/properties/status startTime: $response.body#/properties/startTime outputs: jobId: $steps.getJob.outputs.jobId executionId: $steps.startExecution.outputs.executionId executionStatus: $steps.startExecution.outputs.executionStatus