mirror of
https://github.com/ClusterCockpit/cc-backend
synced 2024-12-26 05:19:05 +01:00
Merge branch 'dev-job-archive-module' of github.com:ClusterCockpit/cc-backend into dev-job-archive-module
This commit is contained in:
commit
6325f02ba2
@ -508,4 +508,4 @@
|
|||||||
"in": "header"
|
"in": "header"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -89,6 +89,73 @@ definitions:
|
|||||||
walltime:
|
walltime:
|
||||||
type: integer
|
type: integer
|
||||||
type: object
|
type: object
|
||||||
|
schema.JobMeta:
|
||||||
|
properties:
|
||||||
|
arrayJobId:
|
||||||
|
type: integer
|
||||||
|
cluster:
|
||||||
|
type: string
|
||||||
|
duration:
|
||||||
|
type: integer
|
||||||
|
exclusive:
|
||||||
|
type: integer
|
||||||
|
id:
|
||||||
|
description: never used in the job-archive, only available via REST-API
|
||||||
|
type: integer
|
||||||
|
jobId:
|
||||||
|
type: integer
|
||||||
|
jobState:
|
||||||
|
type: string
|
||||||
|
metaData:
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
monitoringStatus:
|
||||||
|
type: integer
|
||||||
|
numAcc:
|
||||||
|
type: integer
|
||||||
|
numHwthreads:
|
||||||
|
type: integer
|
||||||
|
numNodes:
|
||||||
|
type: integer
|
||||||
|
partition:
|
||||||
|
type: string
|
||||||
|
project:
|
||||||
|
type: string
|
||||||
|
resources:
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/schema.Resource'
|
||||||
|
type: array
|
||||||
|
smt:
|
||||||
|
type: integer
|
||||||
|
startTime:
|
||||||
|
type: integer
|
||||||
|
statistics:
|
||||||
|
additionalProperties:
|
||||||
|
$ref: '#/definitions/schema.JobStatistics'
|
||||||
|
type: object
|
||||||
|
subCluster:
|
||||||
|
type: string
|
||||||
|
tags:
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/schema.Tag'
|
||||||
|
type: array
|
||||||
|
user:
|
||||||
|
type: string
|
||||||
|
walltime:
|
||||||
|
type: integer
|
||||||
|
type: object
|
||||||
|
schema.JobStatistics:
|
||||||
|
properties:
|
||||||
|
avg:
|
||||||
|
type: number
|
||||||
|
max:
|
||||||
|
type: number
|
||||||
|
min:
|
||||||
|
type: number
|
||||||
|
unit:
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
schema.Resource:
|
schema.Resource:
|
||||||
properties:
|
properties:
|
||||||
accelerators:
|
accelerators:
|
||||||
@ -196,7 +263,7 @@ paths:
|
|||||||
name: request
|
name: request
|
||||||
required: true
|
required: true
|
||||||
schema:
|
schema:
|
||||||
$ref: '#/definitions/schema.Job'
|
$ref: '#/definitions/schema.JobMeta'
|
||||||
produces:
|
produces:
|
||||||
- application/json
|
- application/json
|
||||||
responses:
|
responses:
|
||||||
|
@ -263,7 +263,6 @@ func main() {
|
|||||||
|
|
||||||
if flagDev {
|
if flagDev {
|
||||||
r.Handle("/playground", playground.Handler("GraphQL playground", "/query"))
|
r.Handle("/playground", playground.Handler("GraphQL playground", "/query"))
|
||||||
// secured.PathPrefix("/docs").Handler(httpSwagger.WrapHandler)
|
|
||||||
r.PathPrefix("/swagger/").Handler(httpSwagger.Handler(
|
r.PathPrefix("/swagger/").Handler(httpSwagger.Handler(
|
||||||
httpSwagger.URL("http://localhost:8080/swagger/doc.json"))).Methods(http.MethodGet)
|
httpSwagger.URL("http://localhost:8080/swagger/doc.json"))).Methods(http.MethodGet)
|
||||||
}
|
}
|
||||||
|
@ -133,7 +133,7 @@ const docTemplate = `{
|
|||||||
"in": "body",
|
"in": "body",
|
||||||
"required": true,
|
"required": true,
|
||||||
"schema": {
|
"schema": {
|
||||||
"$ref": "#/definitions/schema.Job"
|
"$ref": "#/definitions/schema.JobMeta"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@ -392,6 +392,21 @@ const docTemplate = `{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
<<<<<<< HEAD:internal/api/docs.go
|
||||||
|
=======
|
||||||
|
"api.TagJobApiRequest": {
|
||||||
|
"description": "Request to tag a job.",
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"error": {
|
||||||
|
"description": "Error Message",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"status": {
|
||||||
|
"description": "Statustext of Errorcode",
|
||||||
|
>>>>>>> 922e94e835e2fba068341645df50e7b42734dfb5:docs/docs.go
|
||||||
"schema.Job": {
|
"schema.Job": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
@ -469,6 +484,107 @@ const docTemplate = `{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"schema.JobMeta": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"arrayJobId": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"cluster": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"duration": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"exclusive": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"id": {
|
||||||
|
"description": "never used in the job-archive, only available via REST-API",
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"jobId": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"jobState": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"metaData": {
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"monitoringStatus": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"numAcc": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"numHwthreads": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"numNodes": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"partition": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"resources": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"$ref": "#/definitions/schema.Resource"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"smt": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"startTime": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"statistics": {
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": {
|
||||||
|
"$ref": "#/definitions/schema.JobStatistics"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"subCluster": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"tags": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"$ref": "#/definitions/schema.Tag"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"user": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"walltime": {
|
||||||
|
"type": "integer"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"schema.JobStatistics": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"avg": {
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
"max": {
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
"min": {
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
"unit": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"schema.Resource": {
|
"schema.Resource": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
|
@ -325,7 +325,7 @@ func (api *RestApi) tagJob(rw http.ResponseWriter, r *http.Request) {
|
|||||||
// @Tags jobs
|
// @Tags jobs
|
||||||
// @Accept json
|
// @Accept json
|
||||||
// @Produce json
|
// @Produce json
|
||||||
// @Param request body schema.Job true "Job to add"
|
// @Param request body schema.JobMeta true "Job to add"
|
||||||
// @Success 201 {object} api.StartJobApiResponse "Job added successfully"
|
// @Success 201 {object} api.StartJobApiResponse "Job added successfully"
|
||||||
// @Failure 400 {object} api.ErrorResponse "Bad Request"
|
// @Failure 400 {object} api.ErrorResponse "Bad Request"
|
||||||
// @Failure 422 {object} api.ErrorResponse "The combination of jobId, clusterId and startTime does already exist"
|
// @Failure 422 {object} api.ErrorResponse "The combination of jobId, clusterId and startTime does already exist"
|
||||||
@ -505,7 +505,7 @@ func (api *RestApi) stopJobById(rw http.ResponseWriter, r *http.Request) {
|
|||||||
// @Accept json
|
// @Accept json
|
||||||
// @Produce json
|
// @Produce json
|
||||||
// @Param request body api.StopJobApiRequest true "All fields required"
|
// @Param request body api.StopJobApiRequest true "All fields required"
|
||||||
// @Success 201 {object} schema.Job "Job resource"
|
// @Success 201 {object} schema.JobMeta "Job resource"
|
||||||
// @Failure 400 {object} api.ErrorResponse "Bad Request"
|
// @Failure 400 {object} api.ErrorResponse "Bad Request"
|
||||||
// @Failure 404 {object} api.ErrorResponse "Resource not found"
|
// @Failure 404 {object} api.ErrorResponse "Resource not found"
|
||||||
// @Security ApiKeyAuth
|
// @Security ApiKeyAuth
|
||||||
|
Loading…
Reference in New Issue
Block a user