-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathschema.yaml
147 lines (147 loc) · 5.08 KB
/
schema.yaml
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
$id: https://sit.fyi/sit-inbox/config.schema.json
$schema: http://json-schema.org/draft-07/schema#
description: sit-inbox config file
properties:
inbox:
description: A dictionary of named inboxes
patternProperties:
'[a-zA-Z0-9\-_]+':
description: Inbox
allOf:
- properties:
default_target:
description: By default, received updates will be routed to this target
type: string
type:
description: Inbox type
enum:
- email
type: string
cron:
description: Crontab time entry for periodic retrievals
type: string
default: "* * * * *"
required:
- type
type: object
- if:
properties:
type:
const: email
then:
allOf:
- properties:
maildrop:
type: string
description: Maildrop filter rules (https://www.courier-mta.org/maildrop/maildropfilter.html), will be followed by unconditional piping to `email-ingress`. The rules can be used to filter out emails that shouldn't be ingressed.
retriever:
description: Type of the retriever
enum:
- MailboxRetriever
- SimplePOP3Retriever
- BrokenUIDLPOP3Retriever
- SimpleIMAPRetriever
- SimplePOP3SSLRetriever
- BrokenUIDLPOP3SSLRetriever
- SimpleIMAPSSLRetriever
- MultidropPOP3Retriever
- MultidropPOP3SSLRetriever
- MultidropSDPSRetriever
- MultidropIMAPRetriever
- MultidropIMAPSSLRetriever
type: string
autostart:
description: Indicates if the inbox retriever should be started upon sit-inbox startup
type: "boolean"
default: true
type: object
- else:
allOf:
- properties:
port:
description: Server port
exclusiveMinimum: 0
type: integer
server:
description: Server hostname
type: string
username:
description: User name
type: string
required:
- server
- username
type: object
- oneOf:
- properties:
password:
description: User's password
type: string
required:
- password
type: object
- properties:
password_command:
description: A command with arguments to obtain user's password
items:
type: string
type: array
required:
- password_command
type: object
if:
properties:
retriever:
const: MailboxRetriever
then:
properties:
path:
description: Path to the Maildir
type: string
required:
- path
type: object
type: object
target:
description: A dictionary of named targets
patternProperties:
'[a-zA-Z0-9\-_]+':
allOf:
- properties:
source:
description: Master target source (location)
type: string
type:
description: Target type
enum:
- git
type: string
paths:
description: Paths to SIT repositories (wildcards allowed)
default: .sit
type: string
required:
- type
- source
type: object
- if:
properties:
type:
const: git
then:
type: object
properties:
git_username:
type: string
description: git user.name configurations setting
git_email:
type: string
description: git user.email configuration setting
email_response:
type: boolean
description: sit-inbox will reply to the patch if enabled and smtp is configured
email_from:
type: string
description: email address sit-inbox will e-mail from
type: object
type: object