arazzo: 1.0.1 info: title: Gitea Create Milestone With Tracked Issue summary: Create a milestone and open an issue assigned to that milestone. description: >- Organizes planned work on Gitea. The workflow creates a milestone in a repository and then opens an issue that is attached to that milestone so the issue rolls up under the milestone's progress. Each 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: giteaApi url: ../openapi/gitea-rest-api-openapi.yml type: openapi workflows: - workflowId: milestone-with-issue summary: Create a milestone and open an issue assigned to it. description: >- Creates a repository milestone, then opens an issue attached to the new milestone by id. inputs: type: object required: - authToken - owner - repo - milestoneTitle - issueTitle properties: authToken: type: string description: Authorization header value, e.g. "token ". owner: type: string description: Owner of the repository. repo: type: string description: Name of the repository. milestoneTitle: type: string description: Title of the milestone to create. milestoneDescription: type: string description: Description of the milestone. dueOn: type: string description: Optional milestone due date in RFC3339 date-time format. issueTitle: type: string description: Title of the issue to open under the milestone. issueBody: type: string description: Body text for the issue. steps: - stepId: createMilestone description: Create a milestone in the repository. operationId: issueCreateMilestone parameters: - name: Authorization in: header value: $inputs.authToken - name: owner in: path value: $inputs.owner - name: repo in: path value: $inputs.repo requestBody: contentType: application/json payload: title: $inputs.milestoneTitle description: $inputs.milestoneDescription due_on: $inputs.dueOn state: open successCriteria: - condition: $statusCode == 201 outputs: milestoneId: $response.body#/id milestoneTitle: $response.body#/title - stepId: createIssue description: Open an issue attached to the new milestone. operationId: issueCreateIssue parameters: - name: Authorization in: header value: $inputs.authToken - name: owner in: path value: $inputs.owner - name: repo in: path value: $inputs.repo requestBody: contentType: application/json payload: title: $inputs.issueTitle body: $inputs.issueBody milestone: $steps.createMilestone.outputs.milestoneId successCriteria: - condition: $statusCode == 201 outputs: issueNumber: $response.body#/number issueUrl: $response.body#/html_url outputs: milestoneId: $steps.createMilestone.outputs.milestoneId issueNumber: $steps.createIssue.outputs.issueNumber issueUrl: $steps.createIssue.outputs.issueUrl