Skip to content

Commit 2630362

Browse files
authored
feat(nack): add missing NACK CRD's (#710)
1 parent 4066ef9 commit 2630362

File tree

2 files changed

+441
-0
lines changed

2 files changed

+441
-0
lines changed
Lines changed: 275 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,275 @@
1+
{
2+
"properties": {
3+
"spec": {
4+
"properties": {
5+
"account": {
6+
"description": "Name of the account to which the Stream belongs.",
7+
"pattern": "^[^.*>]*$",
8+
"type": "string"
9+
},
10+
"bucket": {
11+
"description": "A unique name for the KV Store.",
12+
"type": "string"
13+
},
14+
"compression": {
15+
"description": "KV Store compression.",
16+
"type": "boolean"
17+
},
18+
"creds": {
19+
"default": "",
20+
"description": "NATS user credentials for connecting to servers. Please make sure your controller has mounted the creds on its path.",
21+
"type": "string"
22+
},
23+
"description": {
24+
"description": "The description of the KV Store.",
25+
"type": "string"
26+
},
27+
"history": {
28+
"description": "The number of historical values to keep per key.",
29+
"type": "integer"
30+
},
31+
"jsDomain": {
32+
"description": "The JetStream domain to use for the KV store.",
33+
"type": "string"
34+
},
35+
"maxBytes": {
36+
"description": "The maximum size of the KV Store in bytes.",
37+
"type": "integer"
38+
},
39+
"maxValueSize": {
40+
"description": "The maximum size of a value in bytes.",
41+
"type": "integer"
42+
},
43+
"mirror": {
44+
"description": "A KV Store mirror.",
45+
"properties": {
46+
"externalApiPrefix": {
47+
"type": "string"
48+
},
49+
"externalDeliverPrefix": {
50+
"type": "string"
51+
},
52+
"filterSubject": {
53+
"type": "string"
54+
},
55+
"name": {
56+
"type": "string"
57+
},
58+
"optStartSeq": {
59+
"type": "integer"
60+
},
61+
"optStartTime": {
62+
"description": "Time format must be RFC3339.",
63+
"type": "string"
64+
},
65+
"subjectTransforms": {
66+
"description": "List of subject transforms for this mirror.",
67+
"items": {
68+
"description": "A subject transform pair.",
69+
"properties": {
70+
"dest": {
71+
"description": "Destination subject.",
72+
"type": "string"
73+
},
74+
"source": {
75+
"description": "Source subject.",
76+
"type": "string"
77+
}
78+
},
79+
"type": "object",
80+
"additionalProperties": false
81+
},
82+
"type": "array"
83+
}
84+
},
85+
"type": "object",
86+
"additionalProperties": false
87+
},
88+
"nkey": {
89+
"default": "",
90+
"description": "NATS user NKey for connecting to servers.",
91+
"type": "string"
92+
},
93+
"placement": {
94+
"description": "The KV Store placement via tags or cluster name.",
95+
"properties": {
96+
"cluster": {
97+
"type": "string"
98+
},
99+
"tags": {
100+
"items": {
101+
"type": "string"
102+
},
103+
"type": "array"
104+
}
105+
},
106+
"type": "object",
107+
"additionalProperties": false
108+
},
109+
"preventDelete": {
110+
"default": false,
111+
"description": "When true, the managed KV Store will not be deleted when the resource is deleted.",
112+
"type": "boolean"
113+
},
114+
"preventUpdate": {
115+
"default": false,
116+
"description": "When true, the managed KV Store will not be updated when the resource is updated.",
117+
"type": "boolean"
118+
},
119+
"replicas": {
120+
"default": 1,
121+
"description": "The number of replicas to keep for the KV Store in clustered JetStream.",
122+
"maximum": 5,
123+
"minimum": 1,
124+
"type": "integer"
125+
},
126+
"republish": {
127+
"description": "Republish configuration for the KV Store.",
128+
"properties": {
129+
"destination": {
130+
"description": "Messages will be additionally published to this subject after Bucket.",
131+
"type": "string"
132+
},
133+
"source": {
134+
"description": "Messages will be published from this subject to the destination subject.",
135+
"type": "string"
136+
}
137+
},
138+
"type": "object",
139+
"additionalProperties": false
140+
},
141+
"servers": {
142+
"default": [],
143+
"description": "A list of servers for creating the KV Store.",
144+
"items": {
145+
"type": "string"
146+
},
147+
"type": "array"
148+
},
149+
"sources": {
150+
"description": "A KV Store's sources.",
151+
"items": {
152+
"properties": {
153+
"externalApiPrefix": {
154+
"type": "string"
155+
},
156+
"externalDeliverPrefix": {
157+
"type": "string"
158+
},
159+
"filterSubject": {
160+
"type": "string"
161+
},
162+
"name": {
163+
"type": "string"
164+
},
165+
"optStartSeq": {
166+
"type": "integer"
167+
},
168+
"optStartTime": {
169+
"description": "Time format must be RFC3339.",
170+
"type": "string"
171+
},
172+
"subjectTransforms": {
173+
"description": "List of subject transforms for this mirror.",
174+
"items": {
175+
"description": "A subject transform pair.",
176+
"properties": {
177+
"dest": {
178+
"description": "Destination subject.",
179+
"type": "string"
180+
},
181+
"source": {
182+
"description": "Source subject.",
183+
"type": "string"
184+
}
185+
},
186+
"type": "object",
187+
"additionalProperties": false
188+
},
189+
"type": "array"
190+
}
191+
},
192+
"type": "object",
193+
"additionalProperties": false
194+
},
195+
"type": "array"
196+
},
197+
"storage": {
198+
"description": "The storage backend to use for the KV Store.",
199+
"enum": [
200+
"file",
201+
"memory"
202+
],
203+
"type": "string"
204+
},
205+
"tls": {
206+
"description": "A client's TLS certs and keys.",
207+
"properties": {
208+
"clientCert": {
209+
"description": "A client's cert filepath. Should be mounted.",
210+
"type": "string"
211+
},
212+
"clientKey": {
213+
"description": "A client's key filepath. Should be mounted.",
214+
"type": "string"
215+
},
216+
"rootCas": {
217+
"description": "A list of filepaths to CAs. Should be mounted.",
218+
"items": {
219+
"type": "string"
220+
},
221+
"type": "array"
222+
}
223+
},
224+
"type": "object",
225+
"additionalProperties": false
226+
},
227+
"tlsFirst": {
228+
"default": false,
229+
"description": "When true, the KV Store will initiate TLS before server INFO.",
230+
"type": "boolean"
231+
},
232+
"ttl": {
233+
"description": "The time expiry for keys.",
234+
"type": "string"
235+
}
236+
},
237+
"type": "object",
238+
"additionalProperties": false
239+
},
240+
"status": {
241+
"properties": {
242+
"conditions": {
243+
"items": {
244+
"properties": {
245+
"lastTransitionTime": {
246+
"type": "string"
247+
},
248+
"message": {
249+
"type": "string"
250+
},
251+
"reason": {
252+
"type": "string"
253+
},
254+
"status": {
255+
"type": "string"
256+
},
257+
"type": {
258+
"type": "string"
259+
}
260+
},
261+
"type": "object",
262+
"additionalProperties": false
263+
},
264+
"type": "array"
265+
},
266+
"observedGeneration": {
267+
"type": "integer"
268+
}
269+
},
270+
"type": "object",
271+
"additionalProperties": false
272+
}
273+
},
274+
"type": "object"
275+
}

0 commit comments

Comments
 (0)