Skip to content

Commit 09d270e

Browse files
OAS Update
1 parent 739851c commit 09d270e

File tree

1 file changed

+169
-17
lines changed

1 file changed

+169
-17
lines changed

services/sfs/v1/sfs.json

Lines changed: 169 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,6 @@
3333
}
3434
},
3535
"schemas": {
36-
"CreateLockResponse": {
37-
"properties": {
38-
"lockId": {
39-
"type": "string"
40-
}
41-
},
42-
"type": "object"
43-
},
4436
"CreateResourcePoolPayload": {
4537
"properties": {
4638
"availabilityZone": {
@@ -257,9 +249,6 @@
257249
},
258250
"type": "object"
259251
},
260-
"DeleteLockResponse": {
261-
"type": "object"
262-
},
263252
"DeleteResourcePoolResponse": {
264253
"type": "object"
265254
},
@@ -272,6 +261,12 @@
272261
"DeleteShareResponse": {
273262
"type": "object"
274263
},
264+
"DisableLockResponse": {
265+
"type": "object"
266+
},
267+
"EnableLockResponse": {
268+
"type": "object"
269+
},
275270
"Error": {
276271
"properties": {
277272
"error_description": {
@@ -293,6 +288,15 @@
293288
],
294289
"type": "object"
295290
},
291+
"GetLockResponse": {
292+
"properties": {
293+
"lockId": {
294+
"description": "Whether the lock is enabled for the project",
295+
"type": "string"
296+
}
297+
},
298+
"type": "object"
299+
},
296300
"GetResourcePoolResponse": {
297301
"properties": {
298302
"resourcePool": {
@@ -939,6 +943,34 @@
939943
},
940944
"type": "object"
941945
},
946+
"UpdateResourcePoolSnapshotPayload": {
947+
"properties": {
948+
"comment": {
949+
"description": "(optional) A comment to add more information about a snapshot",
950+
"nullable": true,
951+
"type": "string"
952+
},
953+
"name": {
954+
"description": "(optional) name of the Resource Pool Snapshot",
955+
"nullable": true,
956+
"type": "string"
957+
}
958+
},
959+
"type": "object"
960+
},
961+
"UpdateResourcePoolSnapshotResponse": {
962+
"properties": {
963+
"resourcePoolSnapshot": {
964+
"allOf": [
965+
{
966+
"$ref": "#/components/schemas/ResourcePoolSnapshot"
967+
}
968+
],
969+
"description": "Updated Resource Pool Snapshot"
970+
}
971+
},
972+
"type": "object"
973+
},
942974
"UpdateShareExportPolicyBody_Rule": {
943975
"properties": {
944976
"description": {
@@ -2011,6 +2043,84 @@
20112043
"resource-id-type": "dynamic",
20122044
"resource-type": "project"
20132045
}
2046+
},
2047+
"patch": {
2048+
"description": "Updates a Snapshot from a Resource Pool in a project.",
2049+
"operationId": "UpdateResourcePoolSnapshot",
2050+
"parameters": [
2051+
{
2052+
"in": "path",
2053+
"name": "projectId",
2054+
"required": true,
2055+
"schema": {
2056+
"type": "string"
2057+
}
2058+
},
2059+
{
2060+
"in": "path",
2061+
"name": "region",
2062+
"required": true,
2063+
"schema": {
2064+
"type": "string"
2065+
}
2066+
},
2067+
{
2068+
"in": "path",
2069+
"name": "resourcePoolId",
2070+
"required": true,
2071+
"schema": {
2072+
"type": "string"
2073+
}
2074+
},
2075+
{
2076+
"in": "path",
2077+
"name": "snapshotName",
2078+
"required": true,
2079+
"schema": {
2080+
"type": "string"
2081+
}
2082+
}
2083+
],
2084+
"requestBody": {
2085+
"content": {
2086+
"application/json": {
2087+
"schema": {
2088+
"$ref": "#/components/schemas/UpdateResourcePoolSnapshotPayload"
2089+
}
2090+
}
2091+
},
2092+
"required": true
2093+
},
2094+
"responses": {
2095+
"200": {
2096+
"content": {
2097+
"application/json": {
2098+
"schema": {
2099+
"$ref": "#/components/schemas/UpdateResourcePoolSnapshotResponse"
2100+
}
2101+
}
2102+
},
2103+
"description": "OK"
2104+
},
2105+
"400": {
2106+
"$ref": "#/components/responses/ValidationError"
2107+
},
2108+
"401": {
2109+
"$ref": "#/components/responses/UnauthorizedError"
2110+
},
2111+
"500": {
2112+
"$ref": "#/components/responses/InternalServerError"
2113+
}
2114+
},
2115+
"summary": "Update Resource Pool Snapshot",
2116+
"x-stackit-authorization": {
2117+
"actions": [
2118+
"file-storage.resource-pool.snapshot.update"
2119+
],
2120+
"resource-id": "projectId",
2121+
"resource-id-type": "dynamic",
2122+
"resource-type": "project"
2123+
}
20142124
}
20152125
},
20162126
"/v1/projects/{projectId}/regions/{region}/shareExportPolicies": {
@@ -2530,8 +2640,8 @@
25302640
},
25312641
"/v1/regions/{region}/project/{projectId}/locks": {
25322642
"delete": {
2533-
"description": "Delete Lock",
2534-
"operationId": "DeleteLock",
2643+
"description": "Clean up locks for a project so that it can be deleted successfully.",
2644+
"operationId": "DisableLock",
25352645
"parameters": [
25362646
{
25372647
"in": "path",
@@ -2555,7 +2665,7 @@
25552665
"content": {
25562666
"application/json": {
25572667
"schema": {
2558-
"$ref": "#/components/schemas/DeleteLockResponse"
2668+
"$ref": "#/components/schemas/DisableLockResponse"
25592669
}
25602670
}
25612671
},
@@ -2581,9 +2691,51 @@
25812691
"resource-type": "project"
25822692
}
25832693
},
2694+
"get": {
2695+
"description": "Get lock status for a project.",
2696+
"operationId": "GetLock",
2697+
"parameters": [
2698+
{
2699+
"in": "path",
2700+
"name": "region",
2701+
"required": true,
2702+
"schema": {
2703+
"type": "string"
2704+
}
2705+
},
2706+
{
2707+
"in": "path",
2708+
"name": "projectId",
2709+
"required": true,
2710+
"schema": {
2711+
"type": "string"
2712+
}
2713+
}
2714+
],
2715+
"responses": {
2716+
"200": {
2717+
"content": {
2718+
"application/json": {
2719+
"schema": {
2720+
"$ref": "#/components/schemas/GetLockResponse"
2721+
}
2722+
}
2723+
},
2724+
"description": "OK"
2725+
}
2726+
},
2727+
"x-stackit-authorization": {
2728+
"actions": [
2729+
"file-storage.resource-pool.create"
2730+
],
2731+
"resource-id": "projectId",
2732+
"resource-id-type": "dynamic",
2733+
"resource-type": "project"
2734+
}
2735+
},
25842736
"post": {
2585-
"description": "Create Lock",
2586-
"operationId": "CreateLock",
2737+
"description": "Enable Lock for a project. Necessary for immutable snapshots and to prevent accidental deletion of resources.",
2738+
"operationId": "EnableLock",
25872739
"parameters": [
25882740
{
25892741
"in": "path",
@@ -2607,7 +2759,7 @@
26072759
"content": {
26082760
"application/json": {
26092761
"schema": {
2610-
"$ref": "#/components/schemas/CreateLockResponse"
2762+
"$ref": "#/components/schemas/EnableLockResponse"
26112763
}
26122764
}
26132765
},

0 commit comments

Comments
 (0)