Chore: Upgrade Jenkins-job-builder to 6.3.0
[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         "Unmaintained",
47         "Archived",
48         "Null",
49         "Integration",
50       ]
51   project_lead: &user_object
52     type: "object"
53     properties:
54       name:
55         type: "string"
56       email:
57         required: false
58         format: "email"
59       id:
60         type: "string"
61       company:
62         type: "string"
63       timezone:
64         required: false
65         pattern: '([A-Z][a-z]*\s*)+\/([A-Za-z_-])+'
66     additionalProperties: false
67   primary_contact: *user_object
68   issue_tracking:
69     type: "object"
70     properties:
71       type:
72         type: "string"
73       url:
74         type: "string"
75         format: "uri"
76       key:
77         type: "string"
78       required: ["type", "url"]
79   committers:
80     type: "array"
81     items: *user_object