143 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			143 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
| {
 | |
|   "$schema": "http://json-schema.org/draft-04/schema#",
 | |
|   "type": "object",
 | |
|   "additionalProperties": false,
 | |
|   "properties": {
 | |
|     "$schema": {
 | |
|       "type": "string"
 | |
|     },
 | |
|     "name": {
 | |
|       "type": "string"
 | |
|     },
 | |
|     "available": {
 | |
|       "type": "boolean"
 | |
|     },
 | |
|     "exposable": {
 | |
|       "type": "boolean"
 | |
|     },
 | |
|     "no_gui": {
 | |
|       "type": "boolean"
 | |
|     },
 | |
|     "port": {
 | |
|       "type": "integer",
 | |
|       "minimum": 0,
 | |
|       "maximum": 65535
 | |
|     },
 | |
|     "https": {
 | |
|       "type": "boolean"
 | |
|     },
 | |
|     "uid": {
 | |
|       "type": "integer"
 | |
|     },
 | |
|     "gid": {
 | |
|       "type": "integer"
 | |
|     },
 | |
|     "requirements": {
 | |
|       "type": "object",
 | |
|       "properties": {
 | |
|         "ports": {
 | |
|           "type": "array",
 | |
|           "items": [
 | |
|             {
 | |
|               "type": "integer"
 | |
|             }
 | |
|           ]
 | |
|         }
 | |
|       }
 | |
|     },
 | |
|     "supported_architectures": {
 | |
|       "type": "array",
 | |
|       "items": [
 | |
|         {
 | |
|           "type": "string"
 | |
|         }
 | |
|       ]
 | |
|     },
 | |
|     "id": {
 | |
|       "type": "string",
 | |
|       "pattern": "^[a-z0-9-_]+$"
 | |
|     },
 | |
|     "tipi_version": {
 | |
|       "type": "integer"
 | |
|     },
 | |
|     "version": {
 | |
|       "type": "string"
 | |
|     },
 | |
|     "categories": {
 | |
|       "type": "array",
 | |
|       "items": [
 | |
|         {
 | |
|           "type": "string"
 | |
|         },
 | |
|         {
 | |
|           "type": "string"
 | |
|         }
 | |
|       ]
 | |
|     },
 | |
|     "description": {
 | |
|       "type": "string"
 | |
|     },
 | |
|     "short_desc": {
 | |
|       "type": "string"
 | |
|     },
 | |
|     "author": {
 | |
|       "type": "string"
 | |
|     },
 | |
|     "source": {
 | |
|       "type": "string",
 | |
|       "format": "uri"
 | |
|     },
 | |
|     "website": {
 | |
|       "type": "string",
 | |
|       "format": "uri"
 | |
|     },
 | |
|     "url_suffix": {
 | |
|       "type": "string",
 | |
|       "pattern": "^/[a-z0-9-_]+$"
 | |
|     },
 | |
|     "form_fields": {
 | |
|       "type": "array",
 | |
|       "items": [
 | |
|         {
 | |
|           "type": "object",
 | |
|           "properties": {
 | |
|             "type": {
 | |
|               "type": "string"
 | |
|             },
 | |
|             "label": {
 | |
|               "type": "string"
 | |
|             },
 | |
|             "max": {
 | |
|               "type": "integer"
 | |
|             },
 | |
|             "min": {
 | |
|               "type": "integer"
 | |
|             },
 | |
|             "required": {
 | |
|               "type": "boolean"
 | |
|             },
 | |
|             "env_variable": {
 | |
|               "type": "string"
 | |
|             }
 | |
|           },
 | |
|           "required": ["type", "label", "env_variable"]
 | |
|         }
 | |
|       ]
 | |
|     }
 | |
|   },
 | |
|   "required": [
 | |
|     "name",
 | |
|     "available",
 | |
|     "port",
 | |
|     "id",
 | |
|     "tipi_version",
 | |
|     "version",
 | |
|     "categories",
 | |
|     "description",
 | |
|     "short_desc",
 | |
|     "author",
 | |
|     "source",
 | |
|     "form_fields"
 | |
|   ]
 | |
| }
 | 
