Rename worker clusters to tags #104223

Manually merged
Sybren A. Stüvel merged 8 commits from Evelinealy/flamenco:worker-tag-rename into main 2023-07-10 11:13:35 +02:00
Showing only changes of commit 9e0e28d896 - Show all commits

View File

@ -534,10 +534,10 @@ paths:
schema: schema:
$ref: "#/components/schemas/Error" $ref: "#/components/schemas/Error"
/api/v3/worker-mgt/workers/{worker_id}/setclusters: /api/v3/worker-mgt/workers/{worker_id}/settags:
summary: Update the cluster membership of this Worker. summary: Update the tag membership of this Worker.
post: post:
operationId: setWorkerClusters operationId: setWorkerTags
tags: [worker-mgt] tags: [worker-mgt]
parameters: parameters:
- name: worker_id - name: worker_id
@ -545,12 +545,12 @@ paths:
required: true required: true
schema: { type: string, format: uuid } schema: { type: string, format: uuid }
requestBody: requestBody:
description: The list of cluster IDs this worker should be a member of. description: The list of worker tag IDs this worker should be a member of.
required: true required: true
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/WorkerClusterChangeRequest" $ref: "#/components/schemas/WorkerTagChangeRequest"
responses: responses:
"204": "204":
description: Status change was accepted. description: Status change was accepted.
@ -611,84 +611,84 @@ paths:
schema: schema:
$ref: "#/components/schemas/Error" $ref: "#/components/schemas/Error"
/api/v3/worker-mgt/clusters: /api/v3/worker-mgt/tags:
summary: Manage worker clusters. summary: Manage worker tags.
get: get:
operationId: fetchWorkerClusters operationId: fetchWorkerTags
summary: Get list of worker clusters. summary: Get list of worker tags.
tags: [worker-mgt] tags: [worker-mgt]
responses: responses:
"200": "200":
description: Worker clusters. description: Worker tags.
content: content:
application/json: application/json:
schema: { $ref: "#/components/schemas/WorkerClusterList" } schema: { $ref: "#/components/schemas/WorkerTagList" }
post: post:
operationId: createWorkerCluster operationId: createWorkerTag
summary: Create a new worker cluster. summary: Create a new worker tag.
tags: [worker-mgt] tags: [worker-mgt]
requestBody: requestBody:
description: The worker cluster. description: The worker tag.
required: true required: true
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/WorkerCluster" $ref: "#/components/schemas/WorkerTag"
responses: responses:
"200": "200":
description: The cluster was created. The created cluster is returned, so that the caller can know its UUID. description: The tag was created. The created tag is returned, so that the caller can know its UUID.
content: content:
application/json: application/json:
schema: { $ref: "#/components/schemas/WorkerCluster" } schema: { $ref: "#/components/schemas/WorkerTag" }
default: default:
description: Error message description: Error message
content: content:
application/json: application/json:
schema: { $ref: "#/components/schemas/Error" } schema: { $ref: "#/components/schemas/Error" }
/api/v3/worker-mgt/cluster/{cluster_id}: /api/v3/worker-mgt/tag/{tag_id}:
summary: Get, update, or delete a worker cluster. summary: Get, update, or delete a worker tag.
parameters: parameters:
- name: cluster_id - name: tag_id
in: path in: path
required: true required: true
schema: { type: string, format: uuid } schema: { type: string, format: uuid }
get: get:
operationId: fetchWorkerCluster operationId: fetchWorkerTag
summary: Get a single worker cluster. summary: Get a single worker tag.
tags: [worker-mgt] tags: [worker-mgt]
responses: responses:
"200": "200":
description: The worker cluster. description: The worker tag.
content: content:
application/json: application/json:
schema: { $ref: "#/components/schemas/WorkerCluster" } schema: { $ref: "#/components/schemas/WorkerTag" }
put: put:
operationId: updateWorkerCluster operationId: updateWorkerTag
summary: Update an existing worker cluster. summary: Update an existing worker tag.
tags: [worker-mgt] tags: [worker-mgt]
requestBody: requestBody:
description: The updated worker cluster. description: The updated worker tag.
required: true required: true
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/WorkerCluster" $ref: "#/components/schemas/WorkerTag"
responses: responses:
"204": "204":
description: The cluster update has been stored. description: The tag update has been stored.
default: default:
description: Error message description: Error message
content: content:
application/json: application/json:
schema: { $ref: "#/components/schemas/Error" } schema: { $ref: "#/components/schemas/Error" }
delete: delete:
operationId: deleteWorkerCluster operationId: deleteWorkerTag
summary: Remove this worker cluster. This unassigns all workers from the cluster and removes it. summary: Remove this worker tag. This unassigns all workers from the tag and removes it.
tags: [worker-mgt] tags: [worker-mgt]
responses: responses:
"204": "204":
description: The cluster has been removed. description: The tag has been removed.
default: default:
description: Unexpected error. description: Unexpected error.
content: content:
@ -1758,12 +1758,12 @@ components:
test/debug scripts easier, as they can use a static document on all test/debug scripts easier, as they can use a static document on all
platforms. platforms.
"storage": { $ref: "#/components/schemas/JobStorageInfo" } "storage": { $ref: "#/components/schemas/JobStorageInfo" }
"worker_cluster": "worker_tag":
type: string type: string
format: uuid format: uuid
description: > description: >
Worker Cluster that should execute this job. When a cluster ID is Worker tag that should execute this job. When a tag ID is
given, only Workers in that cluster will be scheduled to work on it. given, only Workers in that tag will be scheduled to work on it.
If empty or ommitted, all workers can work on this job. If empty or ommitted, all workers can work on this job.
required: [name, type, priority, submitter_platform] required: [name, type, priority, submitter_platform]
example: example:
@ -2364,10 +2364,10 @@ components:
type: array type: array
items: { type: string } items: { type: string }
"task": { $ref: "#/components/schemas/WorkerTask" } "task": { $ref: "#/components/schemas/WorkerTask" }
"clusters": "tags":
type: array type: array
items: { $ref: "#/components/schemas/WorkerCluster" } items: { $ref: "#/components/schemas/WorkerTag" }
description: Clusters of which this Worker is a member. description: Tags of which this Worker is a member.
required: required:
- id - id
- name - name
@ -2421,17 +2421,17 @@ components:
start_time: "09:00" start_time: "09:00"
end_time: "18:00" end_time: "18:00"
WorkerCluster: WorkerTag:
type: object type: object
description: > description: >
Cluster of workers. A job can optionally specify which cluster it should Tag of workers. A job can optionally specify which tag it should
be limited to. Workers can be part of multiple clusters simultaneously. be limited to. Workers can be part of multiple tags simultaneously.
properties: properties:
"id": "id":
type: string type: string
format: uuid format: uuid
description: > description: >
UUID of the cluster. Can be ommitted when creating a new cluster, in UUID of the tag. Can be ommitted when creating a new tag, in
which case a random UUID will be assigned. which case a random UUID will be assigned.
"name": "name":
type: string type: string
@ -2442,25 +2442,25 @@ components:
name: GPU-EEVEE name: GPU-EEVEE
description: All workers that can do GPU rendering with EEVEE. description: All workers that can do GPU rendering with EEVEE.
WorkerClusterList: WorkerTagList:
type: object type: object
properties: properties:
"clusters": "tags":
type: array type: array
items: { $ref: "#/components/schemas/WorkerCluster" } items: { $ref: "#/components/schemas/WorkerTag" }
WorkerClusterChangeRequest: WorkerTagChangeRequest:
type: object type: object
description: Request to change which clusters this Worker is assigned to. description: Request to change which tags this Worker is assigned to.
properties: properties:
"cluster_ids": "tag_ids":
type: array type: array
items: items:
type: string type: string
format: uuid format: uuid
required: [cluster_ids] required: [tag_ids]
example: example:
"cluster_ids": ["4312d68c-ea6d-4566-9bf6-e9f09be48ceb"] "tag_ids": ["4312d68c-ea6d-4566-9bf6-e9f09be48ceb"]
securitySchemes: securitySchemes:
worker_auth: worker_auth: