From ccea8869c2866e262832109f9097570e12d1a64d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Tue, 31 May 2022 11:21:05 +0200 Subject: [PATCH] OAPI: add operation for fetching worker info --- pkg/api/flamenco-openapi.yaml | 54 +++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/pkg/api/flamenco-openapi.yaml b/pkg/api/flamenco-openapi.yaml index 52ac2f42..2e056b55 100644 --- a/pkg/api/flamenco-openapi.yaml +++ b/pkg/api/flamenco-openapi.yaml @@ -263,6 +263,24 @@ paths: application/json: schema: { $ref: "#/components/schemas/WorkerList" } + /api/worker-mgt/workers/{worker_id}: + summary: Get detailed worker info. + get: + operationId: fetchWorker + summary: Fetch info about the worker. + tags: [worker-mgt] + parameters: + - name: worker_id + in: path + required: true + schema: { type: string, format: uuid } + responses: + "200": + description: Worker info + content: + application/json: + schema: { $ref: "#/components/schemas/Worker" } + ## Jobs /api/jobs/types: @@ -1387,6 +1405,42 @@ components: # description: Last time this worker was seen by the Manager. required: [id, nickname, status] + Worker: + type: object + description: All information about a Worker + properties: + "id": { type: string, format: uuid } + "nickname": { type: string } + "status": { $ref: "#/components/schemas/WorkerStatus" } + "status_requested": { $ref: "#/components/schemas/WorkerStatus" } + # These will be implemented soon: + # "task_id": + # type: string + # format: uuid + # description: The worker's current/last-worked-on task. + # "last_seen": + # type: string + # format: date-time + # description: Last time this worker was seen by the Manager. + "ip_address": { type: string, description: IP address of the Worker } + "platform": + type: string + description: Operating system of the Worker + "version": + type: string + description: Version of Flamenco this Worker is running + "supported_task_types": + type: array + items: { type: string } + required: + - id + - nickname + - status + - ip_address + - platform + - version + - supported_task_types + securitySchemes: worker_auth: description: Username is the worker ID, password is the secret given at worker registration.