added manifest api description

This commit is contained in:
2026-04-14 18:54:57 +02:00
parent cb2bc53b77
commit 54af4c2112
8 changed files with 1116 additions and 18 deletions
+734
View File
@@ -0,0 +1,734 @@
{
"schemes": [
"http",
"https"
],
"swagger": "2.0",
"info": {
"description": "API documentation",
"title": "Service API",
"contact": {
"name": "API Support",
"url": "http://www.swagger.io/support",
"email": "support@swagger.io"
},
"license": {
"name": "Apache 2.0",
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
},
"version": "1.0"
},
"host": "localhost",
"basePath": "/",
"paths": {
"/v2/_catalog": {
"get": {
"description": "List manifests",
"produces": [
"application/json"
],
"tags": [
"manifest"
],
"summary": "List manifests",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/mstore_app_imageoper.ListManifestsResult"
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
}
},
"/v2/checker/": {
"post": {
"description": "Check images",
"produces": [
"application/json"
],
"tags": [
"manifest"
],
"summary": "Check images",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/mstore_app_imageoper.CheckImagesResult"
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
}
},
"/v2/checker/{name}": {
"post": {
"description": "Check images",
"produces": [
"application/json"
],
"tags": [
"manifest"
],
"summary": "Check images",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/mstore_app_imageoper.CheckImagesResult"
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
}
},
"/v2/{name}/manifests/{reference}": {
"get": {
"description": "Get manifest",
"tags": [
"manifest"
],
"summary": "Get manifest",
"parameters": [
{
"type": "string",
"description": "Manifest path",
"name": "name",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Manifest tag",
"name": "reference",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"headers": {
"Content-Length": {
"type": "string",
"description": "Manifest size"
},
"Content-Type": {
"type": "string",
"description": "Manifest type"
},
"Docker-Content-Digest": {
"type": "string",
"description": "Manigest digest"
}
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
},
"put": {
"description": "Put manifest",
"tags": [
"manifest"
],
"summary": "Put manifest",
"parameters": [
{
"type": "string",
"description": "Manifest path",
"name": "name",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Manifest tag",
"name": "reference",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Manifest size",
"name": "Content-Length",
"in": "header",
"required": true
},
{
"type": "string",
"description": "Manifest type",
"name": "Content-Type",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
},
"delete": {
"description": "Delete manifest",
"tags": [
"manifest"
],
"summary": "Delete manifest",
"parameters": [
{
"type": "string",
"description": "Manifest path",
"name": "name",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Manifest tag",
"name": "reference",
"in": "path",
"required": true
}
],
"responses": {
"202": {
"description": "Accepted"
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
},
"head": {
"description": "Get manifest info",
"tags": [
"manifest"
],
"summary": "Get manifest info",
"parameters": [
{
"type": "string",
"description": "Manifest path",
"name": "name",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Manifest tag",
"name": "reference",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"headers": {
"Content-Length": {
"type": "string",
"description": "Manifest size"
},
"Content-Type": {
"type": "string",
"description": "Manifest type"
},
"Docker-Content-Digest": {
"type": "string",
"description": "Manigest digest"
}
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
}
},
"/v2/{name}/referrers/{digest}": {
"get": {
"description": "Get manifest referer",
"produces": [
"application/json"
],
"tags": [
"manifest"
],
"summary": "Get manifest referer",
"parameters": [
{
"type": "string",
"description": "Manifest path",
"name": "name",
"in": "path",
"required": true
},
{
"type": "string",
"description": "Manifest digest",
"name": "digest",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/mstore_app_imageoper.GetRefererResult"
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
}
},
"/v2/{name}/tags/list": {
"get": {
"description": "List manifest tags",
"produces": [
"application/json"
],
"tags": [
"manifest"
],
"summary": "List manifest tags",
"parameters": [
{
"type": "string",
"description": "Manifest path",
"name": "name",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/mstore_app_imageoper.GetTagsResult"
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
},
"500": {
"description": "Internal Server Error"
}
}
}
},
"/v3/collection/{path}": {
"delete": {
"description": "Delete collections",
"tags": [
"file"
],
"summary": "Delete collections",
"parameters": [
{
"type": "string",
"description": "Collection path",
"name": "path",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
}
}
}
},
"/v3/collections/{path}": {
"get": {
"description": "List collections",
"produces": [
"application/json"
],
"tags": [
"file"
],
"summary": "List collections",
"parameters": [
{
"type": "string",
"description": "Collection path",
"name": "path",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
}
}
}
},
"/v3/file/{filepath}": {
"get": {
"description": "Get file",
"produces": [
"application/octet-stream",
"application/vnd.cncf.helm.chart.content.v1.tar+gzip"
],
"tags": [
"file"
],
"summary": "Get file",
"parameters": [
{
"type": "string",
"description": "File path",
"name": "filepath",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
}
}
},
"put": {
"description": "Store file",
"tags": [
"file"
],
"summary": "Store file",
"parameters": [
{
"type": "integer",
"format": "int64",
"description": "File size",
"name": "Content-Size",
"in": "header",
"required": true
},
{
"type": "string",
"description": "File type",
"name": "Content-Type",
"in": "header",
"required": true
},
{
"type": "string",
"description": "File path",
"name": "filepath",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
}
}
},
"delete": {
"description": "Delete file",
"tags": [
"file"
],
"summary": "Delete file",
"parameters": [
{
"type": "string",
"description": "File path",
"name": "filepath",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
}
}
},
"head": {
"description": "Get file info",
"tags": [
"file"
],
"summary": "Get file info",
"parameters": [
{
"type": "string",
"description": "File path",
"name": "filepath",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"headers": {
"Content-Collection": {
"type": "string",
"description": "File collection"
},
"Content-Digest": {
"type": "string",
"description": "File digest"
},
"Content-Name": {
"type": "string",
"description": "File name"
},
"Content-Size": {
"type": "int64",
"description": "File size"
}
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
}
}
}
},
"/v3/files/{path}": {
"get": {
"description": "List files",
"produces": [
"application/json"
],
"tags": [
"file"
],
"summary": "List files",
"parameters": [
{
"type": "string",
"description": "File path",
"name": "path",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/descr.File"
}
}
},
"404": {
"description": "Not Found"
},
"405": {
"description": "Method Not Allowed"
}
}
}
}
},
"definitions": {
"descr.File": {
"type": "object",
"properties": {
"checksum": {
"type": "string"
},
"collection": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"createdBy": {
"type": "string"
},
"helmHash": {
"type": "string"
},
"helmMeta": {
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"size": {
"type": "integer"
},
"type": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"updatedBy": {
"type": "string"
}
}
},
"descr.Tags": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"mstore_app_imageoper.CheckImagesResult": {
"type": "object",
"properties": {
"repositories": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"mstore_app_imageoper.GetRefererResult": {
"type": "object",
"properties": {
"reference": {
"type": "string"
}
}
},
"mstore_app_imageoper.GetTagsResult": {
"type": "object",
"properties": {
"tagDescr": {
"$ref": "#/definitions/descr.Tags"
}
}
},
"mstore_app_imageoper.ListManifestsResult": {
"type": "object",
"properties": {
"repositories": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}