Update API specification
This commit is contained in:
		@@ -448,14 +448,40 @@ class API_Status(Resource):
 | 
				
			|||||||
              type: object
 | 
					              type: object
 | 
				
			||||||
              id: ClusterStatus
 | 
					              id: ClusterStatus
 | 
				
			||||||
              properties:
 | 
					              properties:
 | 
				
			||||||
                health:
 | 
					                cluster_health:
 | 
				
			||||||
 | 
					                  type: object
 | 
				
			||||||
 | 
					                  properties:
 | 
				
			||||||
 | 
					                    health:
 | 
				
			||||||
 | 
					                      type: integer
 | 
				
			||||||
 | 
					                      description: The overall health (%) of the cluster
 | 
				
			||||||
 | 
					                      example: 100
 | 
				
			||||||
 | 
					                    messages:
 | 
				
			||||||
 | 
					                      type: array
 | 
				
			||||||
 | 
					                      description: A list of health event strings
 | 
				
			||||||
 | 
					                      items:
 | 
				
			||||||
 | 
					                        type: string
 | 
				
			||||||
 | 
					                        example: "hv1: plugin 'nics': bond0 DEGRADED with 1 active slaves, bond0 OK at 10000 Mbps"
 | 
				
			||||||
 | 
					                node_health:
 | 
				
			||||||
 | 
					                  type: object
 | 
				
			||||||
 | 
					                  properties:
 | 
				
			||||||
 | 
					                    hvX:
 | 
				
			||||||
 | 
					                      type: object
 | 
				
			||||||
 | 
					                      description: A node entry for per-node health details, one per node in the cluster
 | 
				
			||||||
 | 
					                      properties:
 | 
				
			||||||
 | 
					                        health:
 | 
				
			||||||
 | 
					                          type: integer
 | 
				
			||||||
 | 
					                          description: The health (%) of the node
 | 
				
			||||||
 | 
					                          example: 100
 | 
				
			||||||
 | 
					                        messages:
 | 
				
			||||||
 | 
					                          type: array
 | 
				
			||||||
 | 
					                          description: A list of health event strings
 | 
				
			||||||
 | 
					                          items:
 | 
				
			||||||
 | 
					                            type: string
 | 
				
			||||||
 | 
					                            example: "'nics': bond0 DEGRADED with 1 active slaves, bond0 OK at 10000 Mbps"
 | 
				
			||||||
 | 
					                maintenance:
 | 
				
			||||||
                  type: string
 | 
					                  type: string
 | 
				
			||||||
                  description: The overall cluster health
 | 
					                  description: Whether the cluster is in maintenance mode or not (string boolean)
 | 
				
			||||||
                  example: Optimal
 | 
					                  example: true
 | 
				
			||||||
                storage_health:
 | 
					 | 
				
			||||||
                  type: string
 | 
					 | 
				
			||||||
                  description: The overall storage cluster health
 | 
					 | 
				
			||||||
                  example: Optimal
 | 
					 | 
				
			||||||
                primary_node:
 | 
					                primary_node:
 | 
				
			||||||
                  type: string
 | 
					                  type: string
 | 
				
			||||||
                  description: The current primary coordinator node
 | 
					                  description: The current primary coordinator node
 | 
				
			||||||
@@ -605,6 +631,32 @@ class API_Node_Root(Resource):
 | 
				
			|||||||
                arch:
 | 
					                arch:
 | 
				
			||||||
                  type: string
 | 
					                  type: string
 | 
				
			||||||
                  description: The architecture of the CPU
 | 
					                  description: The architecture of the CPU
 | 
				
			||||||
 | 
					                health:
 | 
				
			||||||
 | 
					                  type: integer
 | 
				
			||||||
 | 
					                  description: The overall health (%) of the node
 | 
				
			||||||
 | 
					                  example: 100
 | 
				
			||||||
 | 
					                health_details:
 | 
				
			||||||
 | 
					                  type: array
 | 
				
			||||||
 | 
					                  description: A list of health plugin results
 | 
				
			||||||
 | 
					                  items:
 | 
				
			||||||
 | 
					                    type: object
 | 
				
			||||||
 | 
					                    properties:
 | 
				
			||||||
 | 
					                      name:
 | 
				
			||||||
 | 
					                        type: string
 | 
				
			||||||
 | 
					                        description: The name of the health plugin
 | 
				
			||||||
 | 
					                        example: nics
 | 
				
			||||||
 | 
					                      last_run:
 | 
				
			||||||
 | 
					                        type: integer
 | 
				
			||||||
 | 
					                        description: The UNIX timestamp (s) of the last plugin run
 | 
				
			||||||
 | 
					                        example: 1676786078
 | 
				
			||||||
 | 
					                      health_delta:
 | 
				
			||||||
 | 
					                        type: integer
 | 
				
			||||||
 | 
					                        description: The health delta (negatively applied to the health percentage) of the plugin's current state
 | 
				
			||||||
 | 
					                        example: 10
 | 
				
			||||||
 | 
					                      message:
 | 
				
			||||||
 | 
					                        type: string
 | 
				
			||||||
 | 
					                        description: The output message of the plugin
 | 
				
			||||||
 | 
					                        example: "bond0 DEGRADED with 1 active slaves, bond0 OK at 10000 Mbps"
 | 
				
			||||||
                load:
 | 
					                load:
 | 
				
			||||||
                  type: number
 | 
					                  type: number
 | 
				
			||||||
                  format: float
 | 
					                  format: float
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,15 +15,57 @@
 | 
				
			|||||||
        },
 | 
					        },
 | 
				
			||||||
        "ClusterStatus": {
 | 
					        "ClusterStatus": {
 | 
				
			||||||
            "properties": {
 | 
					            "properties": {
 | 
				
			||||||
                "health": {
 | 
					                "cluster_health": {
 | 
				
			||||||
                    "description": "The overall cluster health",
 | 
					                    "properties": {
 | 
				
			||||||
                    "example": "Optimal",
 | 
					                        "health": {
 | 
				
			||||||
 | 
					                            "description": "The overall health (%) of the cluster",
 | 
				
			||||||
 | 
					                            "example": 100,
 | 
				
			||||||
 | 
					                            "type": "integer"
 | 
				
			||||||
 | 
					                        },
 | 
				
			||||||
 | 
					                        "messages": {
 | 
				
			||||||
 | 
					                            "description": "A list of health event strings",
 | 
				
			||||||
 | 
					                            "items": {
 | 
				
			||||||
 | 
					                                "example": "hv1: plugin 'nics': bond0 DEGRADED with 1 active slaves, bond0 OK at 10000 Mbps",
 | 
				
			||||||
 | 
					                                "type": "string"
 | 
				
			||||||
 | 
					                            },
 | 
				
			||||||
 | 
					                            "type": "array"
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    },
 | 
				
			||||||
 | 
					                    "type": "object"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                "maintenance": {
 | 
				
			||||||
 | 
					                    "description": "Whether the cluster is in maintenance mode or not (string boolean)",
 | 
				
			||||||
 | 
					                    "example": true,
 | 
				
			||||||
                    "type": "string"
 | 
					                    "type": "string"
 | 
				
			||||||
                },
 | 
					                },
 | 
				
			||||||
                "networks": {
 | 
					                "networks": {
 | 
				
			||||||
                    "description": "The total number of networks in the cluster",
 | 
					                    "description": "The total number of networks in the cluster",
 | 
				
			||||||
                    "type": "integer"
 | 
					                    "type": "integer"
 | 
				
			||||||
                },
 | 
					                },
 | 
				
			||||||
 | 
					                "node_health": {
 | 
				
			||||||
 | 
					                    "properties": {
 | 
				
			||||||
 | 
					                        "hvX": {
 | 
				
			||||||
 | 
					                            "description": "A node entry for per-node health details, one per node in the cluster",
 | 
				
			||||||
 | 
					                            "properties": {
 | 
				
			||||||
 | 
					                                "health": {
 | 
				
			||||||
 | 
					                                    "description": "The health (%) of the node",
 | 
				
			||||||
 | 
					                                    "example": 100,
 | 
				
			||||||
 | 
					                                    "type": "integer"
 | 
				
			||||||
 | 
					                                },
 | 
				
			||||||
 | 
					                                "messages": {
 | 
				
			||||||
 | 
					                                    "description": "A list of health event strings",
 | 
				
			||||||
 | 
					                                    "items": {
 | 
				
			||||||
 | 
					                                        "example": "'nics': bond0 DEGRADED with 1 active slaves, bond0 OK at 10000 Mbps",
 | 
				
			||||||
 | 
					                                        "type": "string"
 | 
				
			||||||
 | 
					                                    },
 | 
				
			||||||
 | 
					                                    "type": "array"
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                            },
 | 
				
			||||||
 | 
					                            "type": "object"
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    },
 | 
				
			||||||
 | 
					                    "type": "object"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
                "nodes": {
 | 
					                "nodes": {
 | 
				
			||||||
                    "properties": {
 | 
					                    "properties": {
 | 
				
			||||||
                        "state-combination": {
 | 
					                        "state-combination": {
 | 
				
			||||||
@@ -65,11 +107,6 @@
 | 
				
			|||||||
                    "description": "The total number of snapshots in the storage cluster",
 | 
					                    "description": "The total number of snapshots in the storage cluster",
 | 
				
			||||||
                    "type": "integer"
 | 
					                    "type": "integer"
 | 
				
			||||||
                },
 | 
					                },
 | 
				
			||||||
                "storage_health": {
 | 
					 | 
				
			||||||
                    "description": "The overall storage cluster health",
 | 
					 | 
				
			||||||
                    "example": "Optimal",
 | 
					 | 
				
			||||||
                    "type": "string"
 | 
					 | 
				
			||||||
                },
 | 
					 | 
				
			||||||
                "upstream_ip": {
 | 
					                "upstream_ip": {
 | 
				
			||||||
                    "description": "The cluster upstream IP address in CIDR format",
 | 
					                    "description": "The cluster upstream IP address in CIDR format",
 | 
				
			||||||
                    "example": "10.0.0.254/24",
 | 
					                    "example": "10.0.0.254/24",
 | 
				
			||||||
@@ -456,6 +493,40 @@
 | 
				
			|||||||
                    "description": "The number of running domains (VMs)",
 | 
					                    "description": "The number of running domains (VMs)",
 | 
				
			||||||
                    "type": "integer"
 | 
					                    "type": "integer"
 | 
				
			||||||
                },
 | 
					                },
 | 
				
			||||||
 | 
					                "health": {
 | 
				
			||||||
 | 
					                    "description": "The overall health (%) of the node",
 | 
				
			||||||
 | 
					                    "example": 100,
 | 
				
			||||||
 | 
					                    "type": "integer"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                "health_details": {
 | 
				
			||||||
 | 
					                    "description": "A list of health plugin results",
 | 
				
			||||||
 | 
					                    "items": {
 | 
				
			||||||
 | 
					                        "properties": {
 | 
				
			||||||
 | 
					                            "health_delta": {
 | 
				
			||||||
 | 
					                                "description": "The health delta (negatively applied to the health percentage) of the plugin's current state",
 | 
				
			||||||
 | 
					                                "example": 10,
 | 
				
			||||||
 | 
					                                "type": "integer"
 | 
				
			||||||
 | 
					                            },
 | 
				
			||||||
 | 
					                            "last_run": {
 | 
				
			||||||
 | 
					                                "description": "The UNIX timestamp (s) of the last plugin run",
 | 
				
			||||||
 | 
					                                "example": 1676786078,
 | 
				
			||||||
 | 
					                                "type": "integer"
 | 
				
			||||||
 | 
					                            },
 | 
				
			||||||
 | 
					                            "message": {
 | 
				
			||||||
 | 
					                                "description": "The output message of the plugin",
 | 
				
			||||||
 | 
					                                "example": "bond0 DEGRADED with 1 active slaves, bond0 OK at 10000 Mbps",
 | 
				
			||||||
 | 
					                                "type": "string"
 | 
				
			||||||
 | 
					                            },
 | 
				
			||||||
 | 
					                            "name": {
 | 
				
			||||||
 | 
					                                "description": "The name of the health plugin",
 | 
				
			||||||
 | 
					                                "example": "nics",
 | 
				
			||||||
 | 
					                                "type": "string"
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                        },
 | 
				
			||||||
 | 
					                        "type": "object"
 | 
				
			||||||
 | 
					                    },
 | 
				
			||||||
 | 
					                    "type": "array"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
                "kernel": {
 | 
					                "kernel": {
 | 
				
			||||||
                    "desription": "The running kernel version from uname",
 | 
					                    "desription": "The running kernel version from uname",
 | 
				
			||||||
                    "type": "string"
 | 
					                    "type": "string"
 | 
				
			||||||
@@ -6177,7 +6248,7 @@
 | 
				
			|||||||
                        "description": "The selector used to determine candidate nodes during migration; see 'target_selector' in the node daemon configuration reference",
 | 
					                        "description": "The selector used to determine candidate nodes during migration; see 'target_selector' in the node daemon configuration reference",
 | 
				
			||||||
                        "enum": [
 | 
					                        "enum": [
 | 
				
			||||||
                            "mem",
 | 
					                            "mem",
 | 
				
			||||||
                            "memfree",
 | 
					                            "memprov",
 | 
				
			||||||
                            "vcpus",
 | 
					                            "vcpus",
 | 
				
			||||||
                            "load",
 | 
					                            "load",
 | 
				
			||||||
                            "vms",
 | 
					                            "vms",
 | 
				
			||||||
@@ -6336,7 +6407,7 @@
 | 
				
			|||||||
                        "description": "The selector used to determine candidate nodes during migration; see 'target_selector' in the node daemon configuration reference",
 | 
					                        "description": "The selector used to determine candidate nodes during migration; see 'target_selector' in the node daemon configuration reference",
 | 
				
			||||||
                        "enum": [
 | 
					                        "enum": [
 | 
				
			||||||
                            "mem",
 | 
					                            "mem",
 | 
				
			||||||
                            "memfree",
 | 
					                            "memprov",
 | 
				
			||||||
                            "vcpus",
 | 
					                            "vcpus",
 | 
				
			||||||
                            "load",
 | 
					                            "load",
 | 
				
			||||||
                            "vms",
 | 
					                            "vms",
 | 
				
			||||||
@@ -6597,7 +6668,7 @@
 | 
				
			|||||||
                        "description": "The selector used to determine candidate nodes during migration; see 'target_selector' in the node daemon configuration reference",
 | 
					                        "description": "The selector used to determine candidate nodes during migration; see 'target_selector' in the node daemon configuration reference",
 | 
				
			||||||
                        "enum": [
 | 
					                        "enum": [
 | 
				
			||||||
                            "mem",
 | 
					                            "mem",
 | 
				
			||||||
                            "memfree",
 | 
					                            "memprov",
 | 
				
			||||||
                            "vcpus",
 | 
					                            "vcpus",
 | 
				
			||||||
                            "load",
 | 
					                            "load",
 | 
				
			||||||
                            "vms",
 | 
					                            "vms",
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user