-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathconfig_schema.json
198 lines (196 loc) · 8.61 KB
/
config_schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
{
"title": "Schema for scribejs configuration files",
"description": "Configuration for scribejs. See https://github.com/w3c/scribejs/blob/master/README.md for details.",
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://github.com/w3c/scribejs/blob/master/schemas/config_schema.js",
"$defs" : {
"base.schema" : {
"type": "object",
"properties": {
"date": {
"title": "Date in ISO Format",
"description": "Note that the format with date works with the AJV processor, but it is not a mandatory schema item",
"type": "string",
"format": "date"
},
"group": {
"title": "Group name, ie, IRC channel without the starting # or & character",
"description": "Per RFC1459, a channel name cannot use space or comma",
"type": "string",
"pattern": "^[^#& ,][^ ,]+$"
},
"input": {
"title": "IRC log; a file name or a URL",
"type": "string"
},
"output": {
"title": "Output file name",
"type": "string"
},
"nicknames": {
"title": "Nickname log; a JSON file name or a URL",
"type": "string"
},
"final": {
"title": "Whether he minutes are final, i.e., they won't be labeled as 'DRAFT'",
"type": "boolean"
},
"auto": {
"title": "Whether the draft label is to be generated automatically into the minutes via a separate script.",
"type": "boolean"
},
"torepo": {
"title": "Whether the output should be stored in a github repository",
"type": "boolean"
},
"pandoc": {
"title": "Whether the output is meant to be converted further by pandoc",
"type": "boolean"
},
"jekyll": {
"title": "Whether the output should be adapted to a Github+Jekyll combination",
"description": "If the value is 'md' or 'kd', a jekyll header is added. If it is 'md', the format is markdown, if it is 'kd', the format is kramdown",
"type": "string",
"enum": ["none", "md", "kd"]
},
"schema": {
"title": "Whether the output should include schema.org metadata",
"description": "If true, the front matter of the generated minutes includes (either in the front matter of Jekyll or as a markdown comment) the schema.org metadata in JSON-LD. Default is true",
"type": "boolean"
},
"irc_format": {
"title": "Whether the input is of the log format of a particular IRC client",
"description": "'undefined' means the RRSAgent output @W3C. 'Textual' is the only client implemented so far.",
"type": "string",
"enum": ["textual", "undefined"]
},
"ghrepo": {
"title": "Github repo name.",
"type": "string"
},
"ghpath": {
"title": "Github path for the upload of the minutes.",
"type": "string"
},
"ghbranch": {
"title": "Branch of the repository where the minutes should be stored. If not set, default is used.",
"type": "string"
},
"acrepo": {
"title": "Github repo name for action issues.",
"type": "string"
},
"issuerepo": {
"title": "(Default) github repo for the issues that are discussed on the call",
"type": "string"
},
"acurlpattern": {
"title": "URL pattern used to refer the minutes.",
"type": "string"
},
"ghname": {
"title": "Github login name",
"type": "string"
},
"ghemail": {
"title": "User's email",
"$comment": "Note that the format with email works with the AJV processor, but it is not a mandatory schema item",
"type": "string",
"format": "email"
},
"ghtoken": {
"title": "User's OAUTH personal access token.",
"description": "This value should NOT appear in any public configuration file!",
"type": "string"
},
"smtp_server": {
"title": "SMTP server name.",
"type": "string"
},
"smtp_port": {
"title": "SMTP server port number.",
"type": "number"
},
"smtp_secure": {
"title": "SMTP server security.",
"description": "Whether TLS is used or not",
"type": "boolean"
},
"smtp_user": {
"title": "SMTP login user name.",
"type": "string"
},
"smtp_pwd": {
"title": "SMTP server user password.",
"description": "This value should NOT appear in any public configuration file! ",
"type": "string"
},
"smtp_from": {
"title": "Email address for the 'from' part of the email.",
"$comment": "Note that the format with email works with the AJV processor, but it is not a mandatory schema item",
"type": "string"
},
"group_mail" : {
"title" : "mailing list address to send notifications to",
"$comment": "Note that the format with email works with the AJV processor, but it is not a mandatory schema item",
"type": "string",
"format": "email"
},
"mail_subject": {
"title" : "reference text to the WG, to appear in the mail header",
"$comment": "Note that the format with email works with the AJV processor, but it is not a mandatory schema item",
"type": "string"
},
"handle_issues" : {
"title" : "Whether the issue annotation feature should be used",
"type": "boolean"
},
"handle_actions" : {
"title" : "Whether the action handling feature should be used",
"type": "boolean"
},
"current" : {
"title" : "Location of the minute processing file, to be updated at post-processing time",
"type" : "string"
},
"minutes" : {
"title" : "Location of the minute source file, relative to the enclosing directory or repository",
"type" : "string"
},
"owner" : {
"title": "Owner organization for the github repo where actions should be raised",
"type": "string"
},
"repo" : {
"title": "Github repo where actions should be raised",
"type": "string"
},
"dir" : {
"title": "Location of the local clone of the main github repository",
"type" : "string"
}
},
"additionalProperties": true
}
},
"allOf" : [
{
"$ref" : "#/$defs/base.schema"
},
{
"properties" : {
"local" : {
"$ref" : "#/$defs/base.schema"
},
"extra_calls" : {
"type" : "object",
"patternProperties" : {
"^[^#& ,][^ ,]+$" : {
"$ref" : "#/$defs/base.schema"
}
}
}
}
}
]
}