Files
deb-python-dcos/cli/dcoscli/data/marathon-schema.json
José Armando García Sancio 686826b020 dcos-635 refactor package for subcommand
Refactor the packaging so that subcommands can depend on the common
functionality without getting the executable artifacts.
2015-03-20 16:51:30 -07:00

216 lines
4.6 KiB
JSON

{
"$schema": "http://json-schema.org/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^/?(([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])\\.)*([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])$"
},
"cmd": {
"type": "string"
},
"args": {
"type": "array",
"items": {
"type": "string"
}
},
"user": {
"type": "string"
},
"env": {
"type": "object",
"patternProperties": {
".*": { "type": "string" }
}
},
"instances": {
"type": "integer",
"minimum": 0
},
"cpus": {
"type": "number",
"minimum": 0
},
"mem": {
"type": "number",
"minimum": 0
},
"disk": {
"type": "number",
"minimum": 0
},
"executor": {
"type": "string"
},
"constraints": {
},
"uris": {
"type": "array",
"items": {
"type": "string"
}
},
"storeUrls": {
"type": "array",
"items": {
"type": "string"
}
},
"ports": {
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 65535
}
},
"requirePorts": {
"type": "boolean"
},
"backoffSeconds": {
"type": "integer",
"minimum": 0
},
"backoffFactor": {
"type": "number",
"minimum": 1.0
},
"container": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"docker": {
"type": "object",
"properties": {
"image": {
"type": "string"
},
"network": {
"type": "string"
},
"portMappings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"containerPort": {
"type": "integer",
"minimum": 0,
"maximum": 65535
},
"hostPort": {
"type": "integer",
"minimum": 0,
"maximum": 65535
},
"servicePort": {
"type": "integer",
"minimum": 0,
"maximum": 65535
},
"protocol": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false,
"required": [
"image"
]
},
"volumes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"containerPath": {
"type": "string"
},
"hostPath": {
"type": "string"
},
"mode": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
},
"healthChecks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"protocol": {
"type": "string"
},
"command": {
"type": "string"
},
"path": {
"type": "string"
},
"portIndex": {
"type": "integer",
"minimum": 0
},
"gracePeriodSeconds": {
"type": "integer",
"minimum": 0
},
"intervalSeconds": {
"type": "integer",
"minimum": 0
},
"timeoutSeconds": {
"type": "integer",
"minimum": 0
},
"maxConsecutiveFailures": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": false
}
},
"dependencies": {
"type": "array",
"items": {
"type": "string",
"pattern": "^/?(([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])\\.)*([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])$"
}
},
"upgradeStrategy": {
"type": "object",
"properties": {
"minimumHealthCapacity": {
"type": "number",
"minimum": 0.0,
"maximum": 1.0
}
},
"additionalProperties": false
},
"labels": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"additionalProperties": false,
"required": [
"id"
]
}