You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1102 lines
30 KiB
1102 lines
30 KiB
// Code generated by go-swagger; DO NOT EDIT.
|
|
|
|
package restapi
|
|
|
|
// This file was generated by the swagger tool.
|
|
// Editing this file might prove futile when you re-run the swagger generate command
|
|
|
|
import (
|
|
"encoding/json"
|
|
)
|
|
|
|
var (
|
|
// SwaggerJSON embedded version of the swagger document used at generation time
|
|
SwaggerJSON json.RawMessage
|
|
// FlatSwaggerJSON embedded flattened version of the swagger document used at generation time
|
|
FlatSwaggerJSON json.RawMessage
|
|
)
|
|
|
|
func init() {
|
|
SwaggerJSON = json.RawMessage([]byte(`{
|
|
"schemes": [
|
|
"http",
|
|
"https"
|
|
],
|
|
"swagger": "2.0",
|
|
"info": {
|
|
"description": "An API which supports creation, deletion, listing etc of SERVICE",
|
|
"title": "LEXIS Extension Management API",
|
|
"contact": {
|
|
"email": "diego@cyclops-labs.io"
|
|
},
|
|
"license": {
|
|
"name": "Apache 2.0",
|
|
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
|
|
},
|
|
"version": "0.1.0"
|
|
},
|
|
"host": "localhost:8000",
|
|
"basePath": "/api/v0.1",
|
|
"paths": {
|
|
"/status": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"statusManagement"
|
|
],
|
|
"summary": "Basic status of the system",
|
|
"operationId": "showStatus",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Status information of the system",
|
|
"schema": {
|
|
"$ref": "#/definitions/Status"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/status/{id}": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"statusManagement"
|
|
],
|
|
"summary": "Basic status of the system",
|
|
"operationId": "getStatus",
|
|
"parameters": [
|
|
{
|
|
"enum": [
|
|
"kafka-receiver",
|
|
"kafka-sender",
|
|
"status",
|
|
"trigger",
|
|
"metrics",
|
|
"sync"
|
|
],
|
|
"type": "string",
|
|
"description": "Id of the endpoint to be checked",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Status information of the system",
|
|
"schema": {
|
|
"$ref": "#/definitions/Status"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "The endpoint provided doesn't exist",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/sync/flavors": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"syncManagement"
|
|
],
|
|
"summary": "Sync the OpenStack's flavors data in the system",
|
|
"operationId": "syncFlavors",
|
|
"responses": {
|
|
"200": {
|
|
"description": "The load of data was completely successfully"
|
|
},
|
|
"202": {
|
|
"description": "Operation done but there might have been some fails when adding part of the data"
|
|
},
|
|
"500": {
|
|
"description": "Something unexpected happend, error raised",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/sync/hierarchy": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"syncManagement"
|
|
],
|
|
"summary": "syncs all the organizations, projects, resources hierarchy from LEXIS",
|
|
"operationId": "syncHierarchy",
|
|
"responses": {
|
|
"200": {
|
|
"description": "The load of data was completely successfully"
|
|
},
|
|
"202": {
|
|
"description": "Operation done but there might have been some fails when adding part of the data"
|
|
},
|
|
"500": {
|
|
"description": "Something unexpected happend, error raised",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/trigger/udrsredo": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Keycloak": [
|
|
"user"
|
|
]
|
|
},
|
|
{
|
|
"APIKeyHeader": []
|
|
},
|
|
{
|
|
"APIKeyParam": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"triggerManagement"
|
|
],
|
|
"summary": "Redo of UDRs from the specific dates and with the specifc interval",
|
|
"operationId": "UDRRedo",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "datetime",
|
|
"description": "Datetime from which to regenerate the udrs",
|
|
"name": "from",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "datetime",
|
|
"description": "Datetime until which to regenerate the udrs",
|
|
"name": "to",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Interval to do increments",
|
|
"name": "interval",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Generation task executed successfully.",
|
|
"schema": {
|
|
"$ref": "#/definitions/ItemCreatedResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Something unexpected happend, error raised",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"definitions": {
|
|
"ErrorResponse": {
|
|
"type": "object",
|
|
"required": [
|
|
"errorString"
|
|
],
|
|
"properties": {
|
|
"errorString": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"HPCResource": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ApprovalStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"ACCEPTED",
|
|
"REJECTED",
|
|
"PENDING"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:approvalstatus\""
|
|
},
|
|
"AssociatedHPCProject": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:associatedhpcproject\""
|
|
},
|
|
"AssociatedLEXISProject": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:associatedlexisproject;type:uuid\""
|
|
},
|
|
"CloudNetworkName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:cloudnetworkname\""
|
|
},
|
|
"HEAppEEndpoint": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:heappeendpoint\""
|
|
},
|
|
"HPCProvider": {
|
|
"type": "string",
|
|
"enum": [
|
|
"IT4I",
|
|
"LRZ",
|
|
"ICHEC"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:hpcprovider\""
|
|
},
|
|
"HPCResourceID": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:hpcresourceid;primary_key;unique;default:md5(random()::text || clock_timestamp()::text)::uuid\""
|
|
},
|
|
"OpenStackEndpoint": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:openstackendpoint\""
|
|
},
|
|
"OpenStackProjectID": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:openstackprojectid\""
|
|
},
|
|
"ProjectNetworkName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectnetworkname\""
|
|
},
|
|
"ResourceType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"CLOUD",
|
|
"HPC"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:resourcetype\""
|
|
},
|
|
"TermsConsent": {
|
|
"type": "boolean",
|
|
"x-go-custom-tag": "gorm:\"column:termsconsent;type:bool\""
|
|
}
|
|
}
|
|
},
|
|
"ItemCreatedResponse": {
|
|
"properties": {
|
|
"Message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"Metadata": {
|
|
"type": "object",
|
|
"x-go-type": {
|
|
"import": {
|
|
"package": "gitlab.com/cyclops-utilities/datamodels"
|
|
},
|
|
"type": "JSONdb"
|
|
}
|
|
},
|
|
"Organization": {
|
|
"type": "object",
|
|
"properties": {
|
|
"CreatedBy": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:createdby;type:uuid\""
|
|
},
|
|
"CreationDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:registrationdatetime;type:timestamptz\""
|
|
},
|
|
"FormalName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:formalname\""
|
|
},
|
|
"ID": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"type:uuid;primary_key;unique;default:md5(random()::text || clock_timestamp()::text)::uuid\""
|
|
},
|
|
"OrganizationEmailAddress": {
|
|
"type": "string",
|
|
"format": "email",
|
|
"x-go-custom-tag": "gorm:\"column:organizationemailaddress\""
|
|
},
|
|
"OrganizationStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"PENDING_APPROVAL",
|
|
"APPROVED",
|
|
"DISABLED",
|
|
"TERMINATED"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:organizationstatus\""
|
|
},
|
|
"PrimaryTelephoneNumber": {
|
|
"type": "string",
|
|
"format": "telephone-number",
|
|
"x-go-custom-tag": "gorm:\"column:primarytelephonenumber\""
|
|
},
|
|
"RegisteredAddress1": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:registeredaddress1\""
|
|
},
|
|
"RegisteredAddress2": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:registeredaddress2\""
|
|
},
|
|
"RegisteredAddress3": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:registeredaddress3\""
|
|
},
|
|
"RegisteredCountry": {
|
|
"type": "string",
|
|
"format": "country",
|
|
"x-go-custom-tag": "gorm:\"column:registeredcountry\""
|
|
},
|
|
"VATRegistrationNumber": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:vatregistrationnumber\""
|
|
},
|
|
"Website": {
|
|
"type": "string",
|
|
"format": "url"
|
|
}
|
|
}
|
|
},
|
|
"Project": {
|
|
"type": "object",
|
|
"properties": {
|
|
"AllowedOrganizations": {
|
|
"x-go-custom-tag": "gorm:\"column:allowedorganizations;type:text[]\"",
|
|
"$ref": "#/definitions/StringArray"
|
|
},
|
|
"LinkedOrganization": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:linkedorganization;type:uuid\""
|
|
},
|
|
"NormCoreHours": {
|
|
"type": "integer",
|
|
"default": 0,
|
|
"x-go-custom-tag": "gorm:\"column:normcorehours;default:0\"",
|
|
"x-nullable": true
|
|
},
|
|
"ProjectContactEmail": {
|
|
"type": "string",
|
|
"format": "email",
|
|
"x-go-custom-tag": "gorm:\"column:projectcontactemail\""
|
|
},
|
|
"ProjectContactPerson": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:projectcontactperson;type:uuid\""
|
|
},
|
|
"ProjectCreatedBy": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:projectcreatedby;type:uuid\""
|
|
},
|
|
"ProjectCreationTime": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:projectcreationtime;type:timestamptz;default:now()\""
|
|
},
|
|
"ProjectDescription": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectdescription\""
|
|
},
|
|
"ProjectDomain": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectdomain\""
|
|
},
|
|
"ProjectID": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:projectid;type:uuid;primary_key;unique;default:md5(random()::text || clock_timestamp()::text)::uuid\""
|
|
},
|
|
"ProjectMaxPrice": {
|
|
"type": "number",
|
|
"format": "double",
|
|
"default": 0,
|
|
"x-go-custom-tag": "gorm:\"column:projectmaxprice;type:float8;default:0.0\"",
|
|
"x-nullable": true
|
|
},
|
|
"ProjectName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectname\""
|
|
},
|
|
"ProjectShortName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectshortname;unique\""
|
|
},
|
|
"ProjectStartDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:projectstartdate;type:timestamptz\""
|
|
},
|
|
"ProjectStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"PENDING",
|
|
"ACTIVE",
|
|
"DISABLED",
|
|
"TERMINATED"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:projectstatus\""
|
|
},
|
|
"ProjectTerminationDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:projectterminationdate;type:timestamptz\""
|
|
}
|
|
}
|
|
},
|
|
"Status": {
|
|
"type": "object",
|
|
"required": [
|
|
"SystemState"
|
|
],
|
|
"properties": {
|
|
"AverageResponseTime": {
|
|
"type": "number",
|
|
"format": "double"
|
|
},
|
|
"DBState": {
|
|
"type": "string"
|
|
},
|
|
"LastRequest": {
|
|
"type": "string"
|
|
},
|
|
"RequestsBoT": {
|
|
"type": "integer"
|
|
},
|
|
"RequestsLastHour": {
|
|
"type": "integer"
|
|
},
|
|
"RequestsToday": {
|
|
"type": "integer"
|
|
},
|
|
"SystemState": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"StringArray": {
|
|
"x-go-type": {
|
|
"import": {
|
|
"package": "github.com/lib/pq"
|
|
},
|
|
"type": "StringArray"
|
|
}
|
|
}
|
|
},
|
|
"securityDefinitions": {
|
|
"APIKeyHeader": {
|
|
"type": "apiKey",
|
|
"name": "X-API-KEY",
|
|
"in": "header"
|
|
},
|
|
"APIKeyParam": {
|
|
"type": "apiKey",
|
|
"name": "api_key",
|
|
"in": "query"
|
|
},
|
|
"Keycloak": {
|
|
"type": "oauth2",
|
|
"flow": "accessCode",
|
|
"authorizationUrl": "http://localhost:8080/auth/realms/Dev/protocol/openid-connect/auth",
|
|
"tokenUrl": "http://localhost:8080/auth/realms/Dev/protocol/openid-connect/token",
|
|
"scopes": {
|
|
"admin": "Admin scope",
|
|
"user": "User scope"
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Keycloak": [
|
|
"user",
|
|
"admin"
|
|
]
|
|
},
|
|
{
|
|
"APIKeyHeader": []
|
|
},
|
|
{
|
|
"APIKeyParam": []
|
|
}
|
|
],
|
|
"tags": [
|
|
{
|
|
"description": "Actions relating to the reporting of the state of the service",
|
|
"name": "statusManagement"
|
|
},
|
|
{
|
|
"description": "Actions relating to the syncing of data from LEXIS into cyclops services.",
|
|
"name": "syncManagement"
|
|
},
|
|
{
|
|
"description": "Actions relating to the periodics actions to be triggered in the system",
|
|
"name": "triggerManagement"
|
|
}
|
|
]
|
|
}`))
|
|
FlatSwaggerJSON = json.RawMessage([]byte(`{
|
|
"schemes": [
|
|
"http",
|
|
"https"
|
|
],
|
|
"swagger": "2.0",
|
|
"info": {
|
|
"description": "An API which supports creation, deletion, listing etc of SERVICE",
|
|
"title": "LEXIS Extension Management API",
|
|
"contact": {
|
|
"email": "diego@cyclops-labs.io"
|
|
},
|
|
"license": {
|
|
"name": "Apache 2.0",
|
|
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
|
|
},
|
|
"version": "0.1.0"
|
|
},
|
|
"host": "localhost:8000",
|
|
"basePath": "/api/v0.1",
|
|
"paths": {
|
|
"/status": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"statusManagement"
|
|
],
|
|
"summary": "Basic status of the system",
|
|
"operationId": "showStatus",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Status information of the system",
|
|
"schema": {
|
|
"$ref": "#/definitions/Status"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/status/{id}": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"statusManagement"
|
|
],
|
|
"summary": "Basic status of the system",
|
|
"operationId": "getStatus",
|
|
"parameters": [
|
|
{
|
|
"enum": [
|
|
"kafka-receiver",
|
|
"kafka-sender",
|
|
"status",
|
|
"trigger",
|
|
"metrics",
|
|
"sync"
|
|
],
|
|
"type": "string",
|
|
"description": "Id of the endpoint to be checked",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Status information of the system",
|
|
"schema": {
|
|
"$ref": "#/definitions/Status"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "The endpoint provided doesn't exist",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/sync/flavors": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"syncManagement"
|
|
],
|
|
"summary": "Sync the OpenStack's flavors data in the system",
|
|
"operationId": "syncFlavors",
|
|
"responses": {
|
|
"200": {
|
|
"description": "The load of data was completely successfully"
|
|
},
|
|
"202": {
|
|
"description": "Operation done but there might have been some fails when adding part of the data"
|
|
},
|
|
"500": {
|
|
"description": "Something unexpected happend, error raised",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/sync/hierarchy": {
|
|
"get": {
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"syncManagement"
|
|
],
|
|
"summary": "syncs all the organizations, projects, resources hierarchy from LEXIS",
|
|
"operationId": "syncHierarchy",
|
|
"responses": {
|
|
"200": {
|
|
"description": "The load of data was completely successfully"
|
|
},
|
|
"202": {
|
|
"description": "Operation done but there might have been some fails when adding part of the data"
|
|
},
|
|
"500": {
|
|
"description": "Something unexpected happend, error raised",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/trigger/udrsredo": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Keycloak": [
|
|
"user"
|
|
]
|
|
},
|
|
{
|
|
"APIKeyHeader": []
|
|
},
|
|
{
|
|
"APIKeyParam": []
|
|
}
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"triggerManagement"
|
|
],
|
|
"summary": "Redo of UDRs from the specific dates and with the specifc interval",
|
|
"operationId": "UDRRedo",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"format": "datetime",
|
|
"description": "Datetime from which to regenerate the udrs",
|
|
"name": "from",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "datetime",
|
|
"description": "Datetime until which to regenerate the udrs",
|
|
"name": "to",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Interval to do increments",
|
|
"name": "interval",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Generation task executed successfully.",
|
|
"schema": {
|
|
"$ref": "#/definitions/ItemCreatedResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Something unexpected happend, error raised",
|
|
"schema": {
|
|
"$ref": "#/definitions/ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"definitions": {
|
|
"ErrorResponse": {
|
|
"type": "object",
|
|
"required": [
|
|
"errorString"
|
|
],
|
|
"properties": {
|
|
"errorString": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"HPCResource": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ApprovalStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"ACCEPTED",
|
|
"REJECTED",
|
|
"PENDING"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:approvalstatus\""
|
|
},
|
|
"AssociatedHPCProject": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:associatedhpcproject\""
|
|
},
|
|
"AssociatedLEXISProject": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:associatedlexisproject;type:uuid\""
|
|
},
|
|
"CloudNetworkName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:cloudnetworkname\""
|
|
},
|
|
"HEAppEEndpoint": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:heappeendpoint\""
|
|
},
|
|
"HPCProvider": {
|
|
"type": "string",
|
|
"enum": [
|
|
"IT4I",
|
|
"LRZ",
|
|
"ICHEC"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:hpcprovider\""
|
|
},
|
|
"HPCResourceID": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:hpcresourceid;primary_key;unique;default:md5(random()::text || clock_timestamp()::text)::uuid\""
|
|
},
|
|
"OpenStackEndpoint": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:openstackendpoint\""
|
|
},
|
|
"OpenStackProjectID": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:openstackprojectid\""
|
|
},
|
|
"ProjectNetworkName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectnetworkname\""
|
|
},
|
|
"ResourceType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"CLOUD",
|
|
"HPC"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:resourcetype\""
|
|
},
|
|
"TermsConsent": {
|
|
"type": "boolean",
|
|
"x-go-custom-tag": "gorm:\"column:termsconsent;type:bool\""
|
|
}
|
|
}
|
|
},
|
|
"ItemCreatedResponse": {
|
|
"properties": {
|
|
"Message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"Metadata": {
|
|
"type": "object",
|
|
"x-go-type": {
|
|
"import": {
|
|
"package": "gitlab.com/cyclops-utilities/datamodels"
|
|
},
|
|
"type": "JSONdb"
|
|
}
|
|
},
|
|
"Organization": {
|
|
"type": "object",
|
|
"properties": {
|
|
"CreatedBy": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:createdby;type:uuid\""
|
|
},
|
|
"CreationDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:registrationdatetime;type:timestamptz\""
|
|
},
|
|
"FormalName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:formalname\""
|
|
},
|
|
"ID": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"type:uuid;primary_key;unique;default:md5(random()::text || clock_timestamp()::text)::uuid\""
|
|
},
|
|
"OrganizationEmailAddress": {
|
|
"type": "string",
|
|
"format": "email",
|
|
"x-go-custom-tag": "gorm:\"column:organizationemailaddress\""
|
|
},
|
|
"OrganizationStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"PENDING_APPROVAL",
|
|
"APPROVED",
|
|
"DISABLED",
|
|
"TERMINATED"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:organizationstatus\""
|
|
},
|
|
"PrimaryTelephoneNumber": {
|
|
"type": "string",
|
|
"format": "telephone-number",
|
|
"x-go-custom-tag": "gorm:\"column:primarytelephonenumber\""
|
|
},
|
|
"RegisteredAddress1": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:registeredaddress1\""
|
|
},
|
|
"RegisteredAddress2": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:registeredaddress2\""
|
|
},
|
|
"RegisteredAddress3": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:registeredaddress3\""
|
|
},
|
|
"RegisteredCountry": {
|
|
"type": "string",
|
|
"format": "country",
|
|
"x-go-custom-tag": "gorm:\"column:registeredcountry\""
|
|
},
|
|
"VATRegistrationNumber": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:vatregistrationnumber\""
|
|
},
|
|
"Website": {
|
|
"type": "string",
|
|
"format": "url"
|
|
}
|
|
}
|
|
},
|
|
"Project": {
|
|
"type": "object",
|
|
"properties": {
|
|
"AllowedOrganizations": {
|
|
"x-go-custom-tag": "gorm:\"column:allowedorganizations;type:text[]\"",
|
|
"$ref": "#/definitions/StringArray"
|
|
},
|
|
"LinkedOrganization": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:linkedorganization;type:uuid\""
|
|
},
|
|
"NormCoreHours": {
|
|
"type": "integer",
|
|
"default": 0,
|
|
"x-go-custom-tag": "gorm:\"column:normcorehours;default:0\"",
|
|
"x-nullable": true
|
|
},
|
|
"ProjectContactEmail": {
|
|
"type": "string",
|
|
"format": "email",
|
|
"x-go-custom-tag": "gorm:\"column:projectcontactemail\""
|
|
},
|
|
"ProjectContactPerson": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:projectcontactperson;type:uuid\""
|
|
},
|
|
"ProjectCreatedBy": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:projectcreatedby;type:uuid\""
|
|
},
|
|
"ProjectCreationTime": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:projectcreationtime;type:timestamptz;default:now()\""
|
|
},
|
|
"ProjectDescription": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectdescription\""
|
|
},
|
|
"ProjectDomain": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectdomain\""
|
|
},
|
|
"ProjectID": {
|
|
"type": "string",
|
|
"format": "uuid",
|
|
"x-go-custom-tag": "gorm:\"column:projectid;type:uuid;primary_key;unique;default:md5(random()::text || clock_timestamp()::text)::uuid\""
|
|
},
|
|
"ProjectMaxPrice": {
|
|
"type": "number",
|
|
"format": "double",
|
|
"default": 0,
|
|
"x-go-custom-tag": "gorm:\"column:projectmaxprice;type:float8;default:0.0\"",
|
|
"x-nullable": true
|
|
},
|
|
"ProjectName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectname\""
|
|
},
|
|
"ProjectShortName": {
|
|
"type": "string",
|
|
"x-go-custom-tag": "gorm:\"column:projectshortname;unique\""
|
|
},
|
|
"ProjectStartDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:projectstartdate;type:timestamptz\""
|
|
},
|
|
"ProjectStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"PENDING",
|
|
"ACTIVE",
|
|
"DISABLED",
|
|
"TERMINATED"
|
|
],
|
|
"x-go-custom-tag": "gorm:\"column:projectstatus\""
|
|
},
|
|
"ProjectTerminationDate": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"x-go-custom-tag": "gorm:\"column:projectterminationdate;type:timestamptz\""
|
|
}
|
|
}
|
|
},
|
|
"Status": {
|
|
"type": "object",
|
|
"required": [
|
|
"SystemState"
|
|
],
|
|
"properties": {
|
|
"AverageResponseTime": {
|
|
"type": "number",
|
|
"format": "double"
|
|
},
|
|
"DBState": {
|
|
"type": "string"
|
|
},
|
|
"LastRequest": {
|
|
"type": "string"
|
|
},
|
|
"RequestsBoT": {
|
|
"type": "integer"
|
|
},
|
|
"RequestsLastHour": {
|
|
"type": "integer"
|
|
},
|
|
"RequestsToday": {
|
|
"type": "integer"
|
|
},
|
|
"SystemState": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"StringArray": {
|
|
"x-go-type": {
|
|
"import": {
|
|
"package": "github.com/lib/pq"
|
|
},
|
|
"type": "StringArray"
|
|
}
|
|
}
|
|
},
|
|
"securityDefinitions": {
|
|
"APIKeyHeader": {
|
|
"type": "apiKey",
|
|
"name": "X-API-KEY",
|
|
"in": "header"
|
|
},
|
|
"APIKeyParam": {
|
|
"type": "apiKey",
|
|
"name": "api_key",
|
|
"in": "query"
|
|
},
|
|
"Keycloak": {
|
|
"type": "oauth2",
|
|
"flow": "accessCode",
|
|
"authorizationUrl": "http://localhost:8080/auth/realms/Dev/protocol/openid-connect/auth",
|
|
"tokenUrl": "http://localhost:8080/auth/realms/Dev/protocol/openid-connect/token",
|
|
"scopes": {
|
|
"admin": "Admin scope",
|
|
"user": "User scope"
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Keycloak": [
|
|
"admin",
|
|
"user"
|
|
]
|
|
},
|
|
{
|
|
"APIKeyHeader": []
|
|
},
|
|
{
|
|
"APIKeyParam": []
|
|
}
|
|
],
|
|
"tags": [
|
|
{
|
|
"description": "Actions relating to the reporting of the state of the service",
|
|
"name": "statusManagement"
|
|
},
|
|
{
|
|
"description": "Actions relating to the syncing of data from LEXIS into cyclops services.",
|
|
"name": "syncManagement"
|
|
},
|
|
{
|
|
"description": "Actions relating to the periodics actions to be triggered in the system",
|
|
"name": "triggerManagement"
|
|
}
|
|
]
|
|
}`))
|
|
}
|
|
|