Revert "Minor cleanup of openstack-protect script"
[releng/global-jjb.git] / schema / info-schema.yaml
1 # SPDX-License-Identifier: EPL-1.0
2 ##############################################################################
3 # Copyright (c) 2018 The Linux Foundation and others.
4 #
5 # All rights reserved. This program and the accompanying materials
6 # are made available under the terms of the Eclipse Public License v1.0
7 # which accompanies this distribution, and is available at
8 # http://www.eclipse.org/legal/epl-v10.html
9 ##############################################################################
10 ---
11 $schema: "http://json-schema.org/schema#"
12 $id: "https://github.com/lfit/releng-global-jjb/blob/master/schema/info-schema.yaml"
13
14 required:
15   - "project"
16   - "project_creation_date"
17   - "project_category"
18   - "lifecycle_state"
19   - "project_lead"
20   - "primary_contact"
21   - "issue_tracking"
22   - "mailing_list"
23   - "realtime_discussion"
24   - "repositories"
25   - "committers"
26   - "tsc"
27
28 properties:
29   project:
30     type: "string"
31   version:
32     type: "string"
33   project_creation_date:
34     type: "string"
35   project_category:
36     type: "string"
37   lifecycle_state:
38     type: "string"
39     enum:
40       [
41         "Incubation",
42         "Proposal",
43         "Mature",
44         "Core",
45         "Top Level",
46         "Archived",
47         "Null",
48         "Integration",
49       ]
50   project_lead: &user_object
51     type: "object"
52     properties:
53       name:
54         type: "string"
55       email:
56         required: false
57         format: "email"
58       id:
59         type: "string"
60       company:
61         type: "string"
62       timezone:
63         required: false
64         pattern: '([A-Z][a-z]*\s*)+\/([A-Za-z_-])+'
65     additionalProperties: false
66   primary_contact: *user_object
67   issue_tracking:
68     type: "object"
69     properties:
70       type:
71         type: "string"
72       url:
73         type: "string"
74         format: "uri"
75       key:
76         type: "string"
77       required: ["type", "url"]
78   committers:
79     type: "array"
80     items: *user_object