"swagger": "2.0",
"info": {
"description": "This is a draft API for RIC appmgr",
- "version": "0.1.2",
+ "version": "0.1.5",
"title": "RIC appmgr",
"license": {
"name": "Apache 2.0",
"host": "hostname",
"basePath": "/ric/v1",
"schemes": [
- "https",
"http"
],
"paths": {
- "/health": {
+ "/health/alive": {
"get": {
- "summary": "Health check of xApp Manager",
+ "summary": "Health check of xApp Manager - Liveness probe",
"tags": [
"health"
],
- "operationId": "getHealth",
+ "operationId": "getHealthAlive",
"responses": {
"200": {
"description": "Status of xApp Manager is ok"
}
}
},
+ "/health/ready": {
+ "get": {
+ "summary": "Readiness check of xApp Manager - Readiness probe",
+ "tags": [
+ "health"
+ ],
+ "operationId": "getHealthReady",
+ "responses": {
+ "200": {
+ "description": "xApp Manager is ready for service"
+ },
+ "503": {
+ "description": "xApp Manager is not ready for service"
+ }
+ }
+ }
+ },
"/xapps": {
"post": {
"summary": "Deploy a xapp",
"schema": {
"type": "object",
"required": [
- "xAppName"
+ "name"
],
"properties": {
- "xAppName": {
- "type":"string",
- "description":"Name of the xApp",
+ "name": {
+ "type": "string",
+ "description": "Name of the xApp.",
+ "example": "xapp-dummy"
+ },
+ "configName": {
+ "type": "string",
+ "description": "Name of the xApp configmap. Overrides the value given in Helm chart value file.",
+ "example": "xapp-dummy-configmap"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "Name of the namespace to which xApp is deployed. Overrides the value given in Helm chart value file.",
+ "example": "ricxapps"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "Name of the service xApp is providing. Overrides the value given in Helm chart value file.",
+ "example": "xapp-dummy-service"
+ },
+ "imageRepo": {
+ "type": "string",
+ "description": "Name of the docker repository xApp is located. Overrides the value given in Helm chart value file.",
+ "example": "xapprepo"
+ },
+ "hostname": {
+ "type": "string",
+ "description": "Hostname for the pod. Used by messaging library. Overrides the value given in Helm chart value file.",
"example": "xapp-dummy"
}
}
"200": {
"description": "successful query of xApps",
"schema": {
- "$ref": "#/definitions/AllXapps"
+ "$ref": "#/definitions/AllDeployedXapps"
+ }
+ },
+ "500": {
+ "description": "Internal error"
+ }
+ }
+ }
+ },
+ "/xapps/list": {
+ "get": {
+ "summary": "Returns the list of all deployable xapps",
+ "tags": [
+ "xapp"
+ ],
+ "operationId": "listAllXapps",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful list of deployable xApps",
+ "schema": {
+ "$ref": "#/definitions/AllDeployableXapps"
}
},
"500": {
],
"parameters": [
{
- "name": "xAppConfig",
+ "name": "XAppConfig",
"in": "body",
"description": "xApp config",
"schema": {
- "$ref": "#/definitions/xAppConfig"
+ "$ref": "#/definitions/XAppConfig"
}
}
],
"201": {
"description": "xApp config successfully created",
"schema": {
- "$ref": "#/definitions/xAppConfig"
+ "$ref": "#/definitions/XAppConfig"
}
},
"400": {
],
"parameters": [
{
- "name": "xAppConfig",
+ "name": "XAppConfig",
"in": "body",
"description": "xApp config",
"schema": {
- "$ref": "#/definitions/xAppConfig"
+ "$ref": "#/definitions/XAppConfig"
}
}
],
"200": {
"description": "xApp config successfully modified",
"schema": {
- "$ref": "#/definitions/xAppConfig"
+ "$ref": "#/definitions/XAppConfig"
}
},
"400": {
"operationId": "deleteXappConfig",
"parameters": [
{
- "name": "xAppConfigInfo",
+ "name": "ConfigMetadata",
"in": "body",
"description": "xApp configuration information",
"schema": {
- "$ref": "#/definitions/xAppConfigInfo"
+ "$ref": "#/definitions/ConfigMetadata"
}
}
],
"in": "path",
"description": "ID of subscription",
"required": true,
- "type": "integer"
+ "type": "string"
}
],
"responses": {
"in": "path",
"description": "ID of subscription",
"required": true,
- "type": "integer"
+ "type": "string"
},
{
"in": "body",
"in": "path",
"description": "ID of subscription",
"required": true,
- "type": "integer"
+ "type": "string"
}
],
"responses": {
}
},
"definitions": {
- "AllXapps": {
+ "AllDeployableXapps": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "example": "xapp-dummy"
+ }
+ },
+ "AllDeployedXapps": {
"type": "array",
"items": {
"$ref": "#/definitions/Xapp"
"type": "integer",
"example": 32300
},
- "txMessages" : {
+ "txMessages": {
"type": "array",
"items": {
- "type" : "string",
- "example" : "ControlIndication"
+ "type": "string",
+ "example": "ControlIndication"
}
},
- "rxMessages" : {
+ "rxMessages": {
"type": "array",
"items": {
- "type" : "string",
- "example" : "LoadIndication"
+ "type": "string",
+ "example": "LoadIndication"
}
}
}
},
- "xAppConfigInfo": {
+ "ConfigMetadata": {
"type": "object",
"required": [
- "xAppName",
- "configMapName",
+ "name",
+ "configName",
"namespace"
],
"properties": {
- "xAppName": {
- "type":"string",
- "description":"Name of the xApp",
+ "name": {
+ "type": "string",
+ "description": "Name of the xApp",
"example": "xapp-dummy"
},
- "configMapName": {
- "type":"string",
- "description":"Name of the config map",
+ "configName": {
+ "type": "string",
+ "description": "Name of the config map",
"example": "xapp-dummy-config-map"
},
"namespace": {
- "type":"string",
- "description":"Name of the namespace",
+ "type": "string",
+ "description": "Name of the namespace",
"example": "ricxapp"
}
}
},
- "xAppConfig": {
+ "XAppConfig": {
"type": "object",
"required": [
- "xAppConfigInfo",
- "configSchema",
- "configMap"
+ "metadata",
+ "descriptor",
+ "config"
],
"properties": {
- "xAppConfigInfo": {
- "$ref": "#/definitions/xAppConfigInfo"
+ "metadata": {
+ "$ref": "#/definitions/ConfigMetadata"
},
- "configSchema": {
- "type":"object",
- "description":"Schema of configuration in JSON format"
+ "descriptor": {
+ "type": "object",
+ "description": "Schema of configuration in JSON format"
},
- "configMap": {
- "type":"object",
- "description":"Configuration in JSON format"
+ "config": {
+ "type": "object",
+ "description": "Configuration in JSON format"
}
}
},
"AllXappConfig": {
"type": "array",
"items": {
- "$ref": "#/definitions/xAppConfig"
+ "$ref": "#/definitions/XAppConfig"
}
},
"subscriptionRequest": {
]
},
"xApps": {
- "$ref": "#/definitions/AllXapps"
+ "$ref": "#/definitions/AllDeployedXapps"
}
}
}