service-types-authority/schema.json
Monty Taylor 55831f8b2f
Add flag to indicate a service is a secondary service
In cases where one project provices more than one service, answering the
question "what service-type corresponds with this project name?" becomes
hard. In the one existing example, nova with compute and placement, if
someone asks "what is the service-type associated with 'nova'?" - they
mean compute.

Allow for marking a service as secondary so that data consumption
routines can know.

Change-Id: I9434dc22b5f268fa4035b417e4062f58096ebc40
2017-08-15 07:38:08 -05:00

62 lines
2.0 KiB
JSON

{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "https://specs.openstack.org/openstack/service-types-authority/_downloads/schema.json#",
"type": "object",
"required": ["services"],
"additionalProperties": false,
"properties": {
"services": {
"type": "array",
"items": {
"$ref": "#/definitions/service"
}
}
},
"definitions":{
"service":{
"properties": {
"service_type": {
"type":"string",
"pattern":"^([a-z][a-z-]*[a-z]+|ec2-api)$",
"description": "The unique identifier for the service to be used in the service catalog"
},
"project": {
"type":"string",
"pattern":"^([a-z][a-z-]*[a-z]+|ec2-api)$",
"description": "The OpenStack project name that contains the definition of the API"
},
"api_reference": {
"type":"string",
"format": "url",
"description": "A published API reference document for the API identified by this service type."
},
"api_reference_project": {
"type":"string",
"description": "Project where API reference is found, if not the same as the main project"
},
"description": {
"type":"string",
"description": "A short description about the service in question."
},
"aliases": {
"type": "array",
"items": {
"type": "string"
},
"description": "An ordered list of historical aliases for this service type."
},
"secondary": {
"type": "boolean",
"description": "Is this a secondary service for a project?"
}
},
"additionalProperties":false,
"required":[
"api_reference",
"project",
"service_type"
]
}
}
}