{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "required": ["users", "releases", "companies", "repos"], "properties": { "users": { "type": "array", "items": { "type": "object", "properties": { "launchpad_id": { "type": "string", "pattern": "[a-z\\d-]+" }, "gerrit_id": { "type": "string" }, "user_name": { "type": "string" }, "emails": { "type": "array", "items": { "type": "string", "pattern": "[a-z\\d_\\.-]+@([a-z\\d_\\.-]+\\.)+[a-z]+" }, "minItems": 1 }, "companies": { "type": "array", "items": { "type": "object", "properties": { "company_name": { "type": "string" }, "end_date": { "type": ["string", "null"], "pattern": "20\\d{2}-\\w{3}-[0-3]\\d" } }, "additionalProperties": false } } }, "required": ["launchpad_id", "user_name", "emails"], "additionalProperties": false } }, "releases": { "type": "array", "items": { "type": "object", "properties": { "release_name": { "type": "string" }, "end_date": { "type": "string", "pattern": "20\\d{2}-\\w{3}-[0-3]\\d" } }, "required": ["release_name", "end_date"], "additionalProperties": false } }, "repos": { "type": "array", "items": { "type": "object", "properties": { "uri": { "type": "string" }, "project_type": { "type": "string" }, "project_group": { "type": "string" }, "organization": { "type": "string" }, "module": { "type": "string" }, "releases": { "type": "array", "items": { "type": "object", "properties": { "branch": { "type": "string" }, "tag_from": { "type": "string" }, "tag_to": { "type": "string" }, "release_name": { "type": "string" } }, "required": ["tag_from", "tag_to", "release_name"] } } }, "required": ["uri", "project_type", "module", "organization"], "additionalProperties": false } }, "companies": { "type": "array", "items": { "type": "object", "properties": { "company_name": { "type": "string" }, "domains": { "type": "array", "items": { "type": "string", "pattern": "[a-z\\d\\.]*" } } }, "required": ["company_name", "domains"], "additionalProperties": false } }, "project_sources": { "type": "array", "items": { "type": "object", "properties": { "organization": { "type": "string" }, "project_type": { "type": "string" }, "project_group": { "type": ["string", "null"] }, "exclude": { "type": "array", "items": { "type": "string" } } }, "required": ["organization", "project_type"], "additionalProperties": false } }, "module_groups": { "type": "array", "items": { "type": "object", "properties": { "module_group_name": { "type": "string" }, "modules": { "type": ["array"], "items": { "type": "string" } } }, "required": ["module_group_name", "modules"], "additionalProperties": false } }, "mail_lists": { "type": "array", "items": { "type": "string" } } } }